]> git.saurik.com Git - wxWidgets.git/blob - include/wx/generic/fontdlgg.h
9a2a38dfcfc4c5758eef4e973ae0a98bd94e52df
[wxWidgets.git] / include / wx / generic / fontdlgg.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/generic/fontdlgg.h
3 // Purpose: wxGenericFontDialog
4 // Author: Julian Smart
5 // Modified by:
6 // Created: 01/02/97
7 // RCS-ID: $Id$
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_GENERIC_FONTDLGG_H
13 #define _WX_GENERIC_FONTDLGG_H
14
15 #include "wx/defs.h"
16 #include "wx/gdicmn.h"
17 #include "wx/font.h"
18 #include "wx/dialog.h"
19 #include "wx/cmndata.h"
20
21 #ifdef __WXWINCE__
22 #define USE_SPINCTRL_FOR_POINT_SIZE 1
23 class WXDLLEXPORT wxSpinEvent;
24 #else
25 #define USE_SPINCTRL_FOR_POINT_SIZE 0
26 #endif
27
28 /*
29 * FONT DIALOG
30 */
31
32 class WXDLLEXPORT wxChoice;
33 class WXDLLEXPORT wxText;
34 class WXDLLEXPORT wxCheckBox;
35 class WXDLLEXPORT wxFontPreviewer;
36
37 enum
38 {
39 wxID_FONT_UNDERLINE = 3000,
40 wxID_FONT_STYLE,
41 wxID_FONT_WEIGHT,
42 wxID_FONT_FAMILY,
43 wxID_FONT_COLOUR,
44 wxID_FONT_SIZE
45 };
46
47 class WXDLLEXPORT wxGenericFontDialog : public wxFontDialogBase
48 {
49 public:
50 wxGenericFontDialog() { Init(); }
51 wxGenericFontDialog(wxWindow *parent, const wxFontData& data)
52 : wxFontDialogBase(parent, data) { Init(); }
53 virtual ~wxGenericFontDialog();
54
55 virtual int ShowModal();
56
57 // deprecated, for backwards compatibility only
58 wxGenericFontDialog(wxWindow *parent, const wxFontData *data)
59 : wxFontDialogBase(parent, data) { Init(); }
60
61 // Internal functions
62 void OnCloseWindow(wxCloseEvent& event);
63
64 virtual void CreateWidgets();
65 virtual void InitializeFont();
66
67 void OnChangeFont(wxCommandEvent& event);
68
69 #if USE_SPINCTRL_FOR_POINT_SIZE
70 void OnChangeSize(wxSpinEvent& event);
71 #endif
72
73 protected:
74 // common part of all ctors
75 void Init();
76
77 virtual bool DoCreate(wxWindow *parent);
78
79 wxFont dialogFont;
80
81 wxChoice *familyChoice;
82 wxChoice *styleChoice;
83 wxChoice *weightChoice;
84 wxChoice *colourChoice;
85 wxCheckBox *underLineCheckBox;
86
87 #if !USE_SPINCTRL_FOR_POINT_SIZE
88 wxChoice *pointSizeChoice;
89 #endif
90
91 wxFontPreviewer *m_previewer;
92 bool m_useEvents;
93
94 // static bool fontDialogCancelled;
95 DECLARE_EVENT_TABLE()
96 DECLARE_DYNAMIC_CLASS(wxGenericFontDialog)
97 };
98
99 WXDLLEXPORT const wxChar *wxFontFamilyIntToString(int family);
100 WXDLLEXPORT const wxChar *wxFontWeightIntToString(int weight);
101 WXDLLEXPORT const wxChar *wxFontStyleIntToString(int style);
102 WXDLLEXPORT int wxFontFamilyStringToInt(wxChar *family);
103 WXDLLEXPORT int wxFontWeightStringToInt(wxChar *weight);
104 WXDLLEXPORT int wxFontStyleStringToInt(wxChar *style);
105
106 #endif // _WX_GENERIC_FONTDLGG_H