]> git.saurik.com Git - wxWidgets.git/blame - include/wx/richtext/richtextfontpage.h
Store property name and value in wxPropertyGridEvent, keep track of live event instan...
[wxWidgets.git] / include / wx / richtext / richtextfontpage.h
CommitLineData
97ff49b3 1/////////////////////////////////////////////////////////////////////////////
b68603d5 2// Name: wx/richtext/richeditfontpage.h
97ff49b3
JS
3// Purpose: Font page for wxRichTextFormattingDialog
4// Author: Julian Smart
5// Modified by:
6// Created: 2006-10-02
7// RCS-ID: $Id$
8// Copyright: (c) Julian Smart
9// Licence: wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef _RICHTEXTFONTPAGE_H_
13#define _RICHTEXTFONTPAGE_H_
14
15/*!
16 * Includes
17 */
18
19////@begin includes
20////@end includes
21
22/*!
23 * Forward declarations
24 */
25
26////@begin forward declarations
27class wxRichTextFontListBox;
28class wxRichTextColourSwatchCtrl;
29class wxRichTextFontPreviewCtrl;
30////@end forward declarations
31
32/*!
33 * Control identifiers
34 */
35
36////@begin control identifiers
2fce6547 37#define SYMBOL_WXRICHTEXTFONTPAGE_STYLE wxTAB_TRAVERSAL
9a83f860 38#define SYMBOL_WXRICHTEXTFONTPAGE_TITLE wxT("")
97ff49b3 39#define SYMBOL_WXRICHTEXTFONTPAGE_IDNAME ID_RICHTEXTFONTPAGE
2fce6547 40#define SYMBOL_WXRICHTEXTFONTPAGE_SIZE wxSize(200, 100)
97ff49b3
JS
41#define SYMBOL_WXRICHTEXTFONTPAGE_POSITION wxDefaultPosition
42////@end control identifiers
43
44/*!
45 * wxRichTextFontPage class declaration
46 */
47
48class WXDLLIMPEXP_RICHTEXT wxRichTextFontPage: public wxPanel
49{
50 DECLARE_DYNAMIC_CLASS( wxRichTextFontPage )
51 DECLARE_EVENT_TABLE()
52
53public:
54 /// Constructors
55 wxRichTextFontPage( );
8871035d 56 wxRichTextFontPage( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = SYMBOL_WXRICHTEXTFONTPAGE_POSITION, const wxSize& size = SYMBOL_WXRICHTEXTFONTPAGE_SIZE, long style = SYMBOL_WXRICHTEXTFONTPAGE_STYLE );
97ff49b3
JS
57
58 /// Initialise members
59 void Init();
60
61 /// Creation
8871035d 62 bool Create( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = SYMBOL_WXRICHTEXTFONTPAGE_POSITION, const wxSize& size = SYMBOL_WXRICHTEXTFONTPAGE_SIZE, long style = SYMBOL_WXRICHTEXTFONTPAGE_STYLE );
97ff49b3
JS
63
64 /// Creates the controls and sizers
65 void CreateControls();
66
67 /// Transfer data from/to window
68 virtual bool TransferDataFromWindow();
69 virtual bool TransferDataToWindow();
70
71 /// Updates the font preview
72 void UpdatePreview();
73
74 void OnFaceListBoxSelected( wxCommandEvent& event );
75 void OnColourClicked( wxCommandEvent& event );
76
77 /// Gets the attributes associated with the main formatting dialog
44cc96a8 78 wxTextAttr* GetAttributes();
97ff49b3
JS
79
80////@begin wxRichTextFontPage event handler declarations
81
82 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTFONTPAGE_FACETEXTCTRL
83 void OnFaceTextCtrlUpdated( wxCommandEvent& event );
84
85 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTFONTPAGE_SIZETEXTCTRL
86 void OnSizeTextCtrlUpdated( wxCommandEvent& event );
87
88 /// wxEVT_COMMAND_LISTBOX_SELECTED event handler for ID_RICHTEXTFONTPAGE_SIZELISTBOX
89 void OnSizeListBoxSelected( wxCommandEvent& event );
90
91 /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTFONTPAGE_STYLECTRL
92 void OnStyleCtrlSelected( wxCommandEvent& event );
93
94 /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTFONTPAGE_WEIGHTCTRL
95 void OnWeightCtrlSelected( wxCommandEvent& event );
96
97 /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTFONTPAGE_UNDERLINING_CTRL
98 void OnUnderliningCtrlSelected( wxCommandEvent& event );
99
42688aea
JS
100 /// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_RICHTEXTFONTPAGE_STRIKETHROUGHCTRL
101 void OnStrikethroughctrlClick( wxCommandEvent& event );
102
103 /// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_RICHTEXTFONTPAGE_CAPSCTRL
104 void OnCapsctrlClick( wxCommandEvent& event );
105
30bf7630
JS
106 /// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_RICHTEXTFONTPAGE_SUPERSCRIPT
107 void OnRichtextfontpageSuperscriptClick( wxCommandEvent& event );
108
109 /// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_RICHTEXTFONTPAGE_SUBSCRIPT
110 void OnRichtextfontpageSubscriptClick( wxCommandEvent& event );
111
97ff49b3
JS
112////@end wxRichTextFontPage event handler declarations
113
114////@begin wxRichTextFontPage member function declarations
115
116 /// Retrieves bitmap resources
117 wxBitmap GetBitmapResource( const wxString& name );
118
119 /// Retrieves icon resources
120 wxIcon GetIconResource( const wxString& name );
121////@end wxRichTextFontPage member function declarations
122
123 /// Should we show tooltips?
124 static bool ShowToolTips();
125
126////@begin wxRichTextFontPage member variables
127 wxTextCtrl* m_faceTextCtrl;
128 wxRichTextFontListBox* m_faceListBox;
129 wxTextCtrl* m_sizeTextCtrl;
130 wxListBox* m_sizeListBox;
131 wxComboBox* m_styleCtrl;
132 wxComboBox* m_weightCtrl;
133 wxComboBox* m_underliningCtrl;
134 wxRichTextColourSwatchCtrl* m_colourCtrl;
50283a51 135 wxRichTextColourSwatchCtrl* m_bgColourCtrl;
42688aea
JS
136 wxCheckBox* m_strikethroughCtrl;
137 wxCheckBox* m_capitalsCtrl;
30bf7630
JS
138 wxCheckBox* m_superscriptCtrl;
139 wxCheckBox* m_subscriptCtrl;
97ff49b3
JS
140 wxRichTextFontPreviewCtrl* m_previewCtrl;
141 /// Control identifiers
142 enum {
143 ID_RICHTEXTFONTPAGE = 10000,
144 ID_RICHTEXTFONTPAGE_FACETEXTCTRL = 10001,
145 ID_RICHTEXTFONTPAGE_FACELISTBOX = 10002,
146 ID_RICHTEXTFONTPAGE_SIZETEXTCTRL = 10005,
147 ID_RICHTEXTFONTPAGE_SIZELISTBOX = 10006,
148 ID_RICHTEXTFONTPAGE_STYLECTRL = 10007,
149 ID_RICHTEXTFONTPAGE_WEIGHTCTRL = 10004,
150 ID_RICHTEXTFONTPAGE_UNDERLINING_CTRL = 10008,
151 ID_RICHTEXTFONTPAGE_COLOURCTRL = 10009,
50283a51 152 ID_RICHTEXTFONTPAGE_BGCOLOURCTRL = 10014,
42688aea
JS
153 ID_RICHTEXTFONTPAGE_STRIKETHROUGHCTRL = 10010,
154 ID_RICHTEXTFONTPAGE_CAPSCTRL = 10011,
30bf7630
JS
155 ID_RICHTEXTFONTPAGE_SUPERSCRIPT = 10012,
156 ID_RICHTEXTFONTPAGE_SUBSCRIPT = 10013,
97ff49b3
JS
157 ID_RICHTEXTFONTPAGE_PREVIEWCTRL = 10003
158 };
159////@end wxRichTextFontPage member variables
160
161 bool m_dontUpdate;
162 bool m_colourPresent;
50283a51 163 bool m_bgColourPresent;
97ff49b3
JS
164};
165
166#endif
167 // _RICHTEXTFONTPAGE_H_