made wxGenericFontDialog derive from wxFontDialogBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: fontdlgg.h
|
||||
// Name: wx/generic/fontdlgg.h
|
||||
// Purpose: wxGenericFontDialog
|
||||
// Author: Julian Smart
|
||||
// Modified by:
|
||||
@@ -9,8 +9,8 @@
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef __FONTDLGH_G__
|
||||
#define __FONTDLGH_G__
|
||||
#ifndef _WX_GENERIC_FONTDLGG_H
|
||||
#define _WX_GENERIC_FONTDLGG_H
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma interface "fontdlgg.h"
|
||||
@@ -31,52 +31,59 @@ class WXDLLEXPORT wxText;
|
||||
class WXDLLEXPORT wxCheckBox;
|
||||
class WXDLLEXPORT wxFontPreviewer;
|
||||
|
||||
#define wxID_FONT_UNDERLINE 3000
|
||||
#define wxID_FONT_STYLE 3001
|
||||
#define wxID_FONT_WEIGHT 3002
|
||||
#define wxID_FONT_FAMILY 3003
|
||||
#define wxID_FONT_COLOUR 3004
|
||||
#define wxID_FONT_SIZE 3005
|
||||
|
||||
class WXDLLEXPORT wxGenericFontDialog: public wxDialog
|
||||
enum
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxGenericFontDialog)
|
||||
protected:
|
||||
wxFontData fontData;
|
||||
wxFont dialogFont;
|
||||
wxWindow *dialogParent;
|
||||
wxID_FONT_UNDERLINE = 3000,
|
||||
wxID_FONT_STYLE,
|
||||
wxID_FONT_WEIGHT,
|
||||
wxID_FONT_FAMILY,
|
||||
wxID_FONT_COLOUR,
|
||||
wxID_FONT_SIZE
|
||||
};
|
||||
|
||||
wxChoice *familyChoice;
|
||||
wxChoice *styleChoice;
|
||||
wxChoice *weightChoice;
|
||||
wxChoice *colourChoice;
|
||||
wxCheckBox *underLineCheckBox;
|
||||
wxChoice *pointSizeChoice;
|
||||
wxFontPreviewer *m_previewer;
|
||||
bool m_useEvents;
|
||||
class WXDLLEXPORT wxGenericFontDialog : public wxFontDialogBase
|
||||
{
|
||||
public:
|
||||
wxGenericFontDialog() { Init(); }
|
||||
wxGenericFontDialog(wxWindow *parent, const wxFontData& data)
|
||||
: wxFontDialogBase(parent, data) { Init(); }
|
||||
virtual ~wxGenericFontDialog();
|
||||
|
||||
// static bool fontDialogCancelled;
|
||||
public:
|
||||
|
||||
wxGenericFontDialog(void);
|
||||
wxGenericFontDialog(wxWindow *parent, const wxFontData& data);
|
||||
~wxGenericFontDialog(void);
|
||||
virtual int ShowModal();
|
||||
|
||||
bool Create(wxWindow *parent, const wxFontData& data);
|
||||
// deprecated, for backwards compatibility only
|
||||
wxGenericFontDialog(wxWindow *parent, const wxFontData *data)
|
||||
: wxFontDialogBase(parent, data) { Init(); }
|
||||
|
||||
int ShowModal(void);
|
||||
// Internal functions
|
||||
void OnCloseWindow(wxCloseEvent& event);
|
||||
|
||||
inline wxFontData& GetFontData(void) { return fontData; }
|
||||
virtual void CreateWidgets();
|
||||
virtual void InitializeFont();
|
||||
|
||||
// Internal functions
|
||||
void OnCloseWindow(wxCloseEvent& event);
|
||||
void OnChangeFont(wxCommandEvent& event);
|
||||
|
||||
virtual void CreateWidgets(void);
|
||||
virtual void InitializeFont(void);
|
||||
|
||||
void OnChangeFont(wxCommandEvent& event);
|
||||
protected:
|
||||
// common part of all ctors
|
||||
void Init();
|
||||
|
||||
DECLARE_EVENT_TABLE()
|
||||
virtual bool DoCreate(wxWindow *parent);
|
||||
|
||||
wxFont dialogFont;
|
||||
|
||||
wxChoice *familyChoice;
|
||||
wxChoice *styleChoice;
|
||||
wxChoice *weightChoice;
|
||||
wxChoice *colourChoice;
|
||||
wxCheckBox *underLineCheckBox;
|
||||
wxChoice *pointSizeChoice;
|
||||
|
||||
wxFontPreviewer *m_previewer;
|
||||
bool m_useEvents;
|
||||
|
||||
// static bool fontDialogCancelled;
|
||||
DECLARE_EVENT_TABLE()
|
||||
DECLARE_DYNAMIC_CLASS(wxGenericFontDialog)
|
||||
};
|
||||
|
||||
WXDLLEXPORT const wxChar *wxFontFamilyIntToString(int family);
|
||||
@@ -86,4 +93,5 @@ WXDLLEXPORT int wxFontFamilyStringToInt(wxChar *family);
|
||||
WXDLLEXPORT int wxFontWeightStringToInt(wxChar *weight);
|
||||
WXDLLEXPORT int wxFontStyleStringToInt(wxChar *style);
|
||||
|
||||
#endif
|
||||
#endif // _WX_GENERIC_FONTDLGG_H
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: fontdlgg.cpp
|
||||
// Name: src/generic/fontdlgg.cpp
|
||||
// Purpose: Generic font dialog
|
||||
// Author: Julian Smart
|
||||
// Modified by:
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
#include "wx/cmndata.h"
|
||||
#include "wx/sizer.h"
|
||||
#include "wx/generic/fontdlgg.h"
|
||||
#include "wx/fontdlg.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// helper class - wxFontPreviewer
|
||||
@@ -163,23 +163,13 @@ static wxString wxColourDialogNames[NUM_COLS]={wxT("ORANGE"),
|
||||
* Generic wxFontDialog
|
||||
*/
|
||||
|
||||
wxGenericFontDialog::wxGenericFontDialog(void)
|
||||
void wxGenericFontDialog::Init()
|
||||
{
|
||||
m_useEvents = FALSE;
|
||||
m_previewer = NULL;
|
||||
dialogParent = NULL;
|
||||
}
|
||||
|
||||
wxGenericFontDialog::wxGenericFontDialog(wxWindow *parent, const wxFontData& data):
|
||||
wxDialog(parent, -1, _("Font"), wxDefaultPosition, wxDefaultSize,
|
||||
wxDEFAULT_DIALOG_STYLE|wxDIALOG_MODAL|wxRESIZE_BORDER)
|
||||
{
|
||||
m_useEvents = FALSE;
|
||||
m_previewer = NULL;
|
||||
Create(parent, data);
|
||||
}
|
||||
|
||||
wxGenericFontDialog::~wxGenericFontDialog(void)
|
||||
wxGenericFontDialog::~wxGenericFontDialog()
|
||||
{
|
||||
}
|
||||
|
||||
@@ -188,31 +178,27 @@ void wxGenericFontDialog::OnCloseWindow(wxCloseEvent& WXUNUSED(event))
|
||||
EndModal(wxID_CANCEL);
|
||||
}
|
||||
|
||||
bool wxGenericFontDialog::Create(wxWindow *parent, const wxFontData& data)
|
||||
bool wxGenericFontDialog::DoCreate(wxWindow *parent)
|
||||
{
|
||||
dialogParent = parent;
|
||||
|
||||
fontData = data;
|
||||
|
||||
InitializeFont();
|
||||
CreateWidgets();
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
int wxGenericFontDialog::ShowModal(void)
|
||||
int wxGenericFontDialog::ShowModal()
|
||||
{
|
||||
int ret = wxDialog::ShowModal();
|
||||
|
||||
if (ret != wxID_CANCEL)
|
||||
{
|
||||
fontData.chosenFont = dialogFont;
|
||||
m_fontData.chosenFont = dialogFont;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
void wxGenericFontDialog::CreateWidgets(void)
|
||||
void wxGenericFontDialog::CreateWidgets()
|
||||
{
|
||||
wxBusyCursor bcur;
|
||||
|
||||
@@ -259,7 +245,7 @@ void wxGenericFontDialog::CreateWidgets(void)
|
||||
familyChoice->SetStringSelection( wxFontFamilyIntToString(dialogFont.GetFamily()) );
|
||||
styleChoice->SetStringSelection(wxFontStyleIntToString(dialogFont.GetStyle()));
|
||||
weightChoice->SetStringSelection(wxFontWeightIntToString(dialogFont.GetWeight()));
|
||||
wxString name(wxTheColourDatabase->FindName(fontData.fontColour));
|
||||
wxString name(wxTheColourDatabase->FindName(m_fontData.fontColour));
|
||||
colourChoice->SetStringSelection(name);
|
||||
|
||||
underLineCheckBox->SetValue(dialogFont.GetUnderlined());
|
||||
@@ -304,7 +290,7 @@ void wxGenericFontDialog::CreateWidgets(void)
|
||||
m_useEvents = TRUE;
|
||||
}
|
||||
|
||||
void wxGenericFontDialog::InitializeFont(void)
|
||||
void wxGenericFontDialog::InitializeFont()
|
||||
{
|
||||
int fontFamily = wxSWISS;
|
||||
int fontWeight = wxNORMAL;
|
||||
@@ -312,13 +298,13 @@ void wxGenericFontDialog::InitializeFont(void)
|
||||
int fontSize = 12;
|
||||
int fontUnderline = FALSE;
|
||||
|
||||
if (fontData.initialFont.Ok())
|
||||
if (m_fontData.initialFont.Ok())
|
||||
{
|
||||
fontFamily = fontData.initialFont.GetFamily();
|
||||
fontWeight = fontData.initialFont.GetWeight();
|
||||
fontStyle = fontData.initialFont.GetStyle();
|
||||
fontSize = fontData.initialFont.GetPointSize();
|
||||
fontUnderline = fontData.initialFont.GetUnderlined();
|
||||
fontFamily = m_fontData.initialFont.GetFamily();
|
||||
fontWeight = m_fontData.initialFont.GetWeight();
|
||||
fontStyle = m_fontData.initialFont.GetStyle();
|
||||
fontSize = m_fontData.initialFont.GetPointSize();
|
||||
fontUnderline = m_fontData.initialFont.GetUnderlined();
|
||||
}
|
||||
|
||||
dialogFont = wxFont(fontSize, fontFamily, fontStyle, fontWeight, (fontUnderline != 0));
|
||||
@@ -348,7 +334,7 @@ void wxGenericFontDialog::OnChangeFont(wxCommandEvent& WXUNUSED(event))
|
||||
col = wxTheColourDatabase->FindColour(colourChoice->GetStringSelection());
|
||||
if (col)
|
||||
{
|
||||
fontData.fontColour = *col;
|
||||
m_fontData.fontColour = *col;
|
||||
m_previewer->SetForegroundColour(*col);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user