1 ///////////////////////////////////////////////////////////////////////////// 2 // Name: wx/richtext/richtextliststylepage.h 3 // Purpose: 4 // Author: Julian Smart 5 // Modified by: 6 // Created: 10/18/2006 11:36:37 AM 7 // RCS-ID: $Id: richtextliststylepage.h 42678 2006-10-29 22:01:06Z JS $ 8 // Copyright: (c) Julian Smart 9 // Licence: wxWindows licence 10 ///////////////////////////////////////////////////////////////////////////// 11 12 #ifndef _RICHTEXTLISTSTYLEPAGE_H_ 13 #define _RICHTEXTLISTSTYLEPAGE_H_ 14 15 /*! 16 * Includes 17 */ 18 19 ////@begin includes 20 #include "wx/spinctrl.h" 21 #include "wx/notebook.h" 22 #include "wx/statline.h" 23 ////@end includes 24 25 /*! 26 * Control identifiers 27 */ 28 29 ////@begin control identifiers 30 #define SYMBOL_WXRICHTEXTLISTSTYLEPAGE_STYLE wxRESIZE_BORDER|wxTAB_TRAVERSAL 31 #define SYMBOL_WXRICHTEXTLISTSTYLEPAGE_TITLE _("wxRichTextListStylePage") 32 #define SYMBOL_WXRICHTEXTLISTSTYLEPAGE_IDNAME ID_RICHTEXTLISTSTYLEPAGE 33 #define SYMBOL_WXRICHTEXTLISTSTYLEPAGE_SIZE wxSize(400, 300) 34 #define SYMBOL_WXRICHTEXTLISTSTYLEPAGE_POSITION wxDefaultPosition 35 ////@end control identifiers 36 37 /*! 38 * wxRichTextListStylePage class declaration 39 */ 40 41 class WXDLLIMPEXP_RICHTEXT wxRichTextListStylePage: public wxPanel 42 { 43 DECLARE_DYNAMIC_CLASS( wxRichTextListStylePage ) 44 DECLARE_EVENT_TABLE() 45 46 public: 47 /// Constructors 48 wxRichTextListStylePage( ); 49 wxRichTextListStylePage( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = SYMBOL_WXRICHTEXTLISTSTYLEPAGE_POSITION, const wxSize& size = SYMBOL_WXRICHTEXTLISTSTYLEPAGE_SIZE, long style = SYMBOL_WXRICHTEXTLISTSTYLEPAGE_STYLE ); 50 51 /// Creation 52 bool Create( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = SYMBOL_WXRICHTEXTLISTSTYLEPAGE_POSITION, const wxSize& size = SYMBOL_WXRICHTEXTLISTSTYLEPAGE_SIZE, long style = SYMBOL_WXRICHTEXTLISTSTYLEPAGE_STYLE ); 53 54 /// Initialises member variables 55 void Init(); 56 57 /// Creates the controls and sizers 58 void CreateControls(); 59 60 /// Updates the bullets preview 61 void UpdatePreview(); 62 63 /// Transfer data from/to window 64 virtual bool TransferDataFromWindow(); 65 virtual bool TransferDataToWindow(); 66 67 /// Get attributes for selected level 68 wxRichTextAttr* GetAttributesForSelection(); 69 70 /// Update for symbol-related controls 71 void OnSymbolUpdate( wxUpdateUIEvent& event ); 72 73 /// Update for number-related controls 74 void OnNumberUpdate( wxUpdateUIEvent& event ); 75 76 /// Update for standard bullet-related controls 77 void OnStandardBulletUpdate( wxUpdateUIEvent& event ); 78 79 /// Just transfer to the window 80 void DoTransferDataToWindow(); 81 82 /// Transfer from the window and preview 83 void TransferAndPreview(); 84 85 ////@begin wxRichTextListStylePage event handler declarations 86 87 /// wxEVT_COMMAND_SPINCTRL_UPDATED event handler for ID_RICHTEXTLISTSTYLEPAGE_LEVEL 88 void OnLevelUpdated( wxSpinEvent& event ); 89 90 /// wxEVT_SCROLL_LINEUP event handler for ID_RICHTEXTLISTSTYLEPAGE_LEVEL 91 void OnLevelUp( wxSpinEvent& event ); 92 93 /// wxEVT_SCROLL_LINEDOWN event handler for ID_RICHTEXTLISTSTYLEPAGE_LEVEL 94 void OnLevelDown( wxSpinEvent& event ); 95 96 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTLISTSTYLEPAGE_LEVEL 97 void OnLevelTextUpdated( wxCommandEvent& event ); 98 99 /// wxEVT_UPDATE_UI event handler for ID_RICHTEXTLISTSTYLEPAGE_LEVEL 100 void OnLevelUIUpdate( wxUpdateUIEvent& event ); 101 102 /// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_RICHTEXTLISTSTYLEPAGE_CHOOSE_FONT 103 void OnChooseFontClick( wxCommandEvent& event ); 104 105 /// wxEVT_COMMAND_LISTBOX_SELECTED event handler for ID_RICHTEXTLISTSTYLEPAGE_STYLELISTBOX 106 void OnStylelistboxSelected( wxCommandEvent& event ); 107 108 /// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_RICHTEXTLISTSTYLEPAGE_PERIODCTRL 109 void OnPeriodctrlClick( wxCommandEvent& event ); 110 111 /// wxEVT_UPDATE_UI event handler for ID_RICHTEXTLISTSTYLEPAGE_PERIODCTRL 112 void OnPeriodctrlUpdate( wxUpdateUIEvent& event ); 113 114 /// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_RICHTEXTLISTSTYLEPAGE_PARENTHESESCTRL 115 void OnParenthesesctrlClick( wxCommandEvent& event ); 116 117 /// wxEVT_UPDATE_UI event handler for ID_RICHTEXTLISTSTYLEPAGE_PARENTHESESCTRL 118 void OnParenthesesctrlUpdate( wxUpdateUIEvent& event ); 119 120 /// wxEVT_COMMAND_CHECKBOX_CLICKED event handler for ID_RICHTEXTLISTSTYLEPAGE_RIGHTPARENTHESISCTRL 121 void OnRightParenthesisCtrlClick( wxCommandEvent& event ); 122 123 /// wxEVT_UPDATE_UI event handler for ID_RICHTEXTLISTSTYLEPAGE_RIGHTPARENTHESISCTRL 124 void OnRightParenthesisCtrlUpdate( wxUpdateUIEvent& event ); 125 126 /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTLISTSTYLEPAGE_BULLETALIGNMENTCTRL 127 void OnBulletAlignmentCtrlSelected( wxCommandEvent& event ); 128 129 /// wxEVT_UPDATE_UI event handler for ID_RICHTEXTLISTSTYLEPAGE_SYMBOLSTATIC 130 void OnSymbolstaticUpdate( wxUpdateUIEvent& event ); 131 132 /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTLISTSTYLEPAGE_SYMBOLCTRL 133 void OnSymbolctrlSelected( wxCommandEvent& event ); 134 135 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTLISTSTYLEPAGE_SYMBOLCTRL 136 void OnSymbolctrlUpdated( wxCommandEvent& event ); 137 138 /// wxEVT_UPDATE_UI event handler for ID_RICHTEXTLISTSTYLEPAGE_SYMBOLCTRL 139 void OnSymbolctrlUIUpdate( wxUpdateUIEvent& event ); 140 141 /// wxEVT_COMMAND_BUTTON_CLICKED event handler for ID_RICHTEXTLISTSTYLEPAGE_CHOOSE_SYMBOL 142 void OnChooseSymbolClick( wxCommandEvent& event ); 143 144 /// wxEVT_UPDATE_UI event handler for ID_RICHTEXTLISTSTYLEPAGE_CHOOSE_SYMBOL 145 void OnChooseSymbolUpdate( wxUpdateUIEvent& event ); 146 147 /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTLISTSTYLEPAGE_SYMBOLFONTCTRL 148 void OnSymbolfontctrlSelected( wxCommandEvent& event ); 149 150 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTLISTSTYLEPAGE_SYMBOLFONTCTRL 151 void OnSymbolfontctrlUpdated( wxCommandEvent& event ); 152 153 /// wxEVT_UPDATE_UI event handler for ID_RICHTEXTLISTSTYLEPAGE_SYMBOLFONTCTRL 154 void OnSymbolfontctrlUIUpdate( wxUpdateUIEvent& event ); 155 156 /// wxEVT_UPDATE_UI event handler for ID_RICHTEXTLISTSTYLEPAGE_NAMESTATIC 157 void OnNamestaticUpdate( wxUpdateUIEvent& event ); 158 159 /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTLISTSTYLEPAGE_NAMECTRL 160 void OnNamectrlSelected( wxCommandEvent& event ); 161 162 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTLISTSTYLEPAGE_NAMECTRL 163 void OnNamectrlUpdated( wxCommandEvent& event ); 164 165 /// wxEVT_UPDATE_UI event handler for ID_RICHTEXTLISTSTYLEPAGE_NAMECTRL 166 void OnNamectrlUIUpdate( wxUpdateUIEvent& event ); 167 168 /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTLISTSTYLEPAGE_ALIGNLEFT 169 void OnRichtextliststylepageAlignleftSelected( wxCommandEvent& event ); 170 171 /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTLISTSTYLEPAGE_ALIGNRIGHT 172 void OnRichtextliststylepageAlignrightSelected( wxCommandEvent& event ); 173 174 /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTLISTSTYLEPAGE_JUSTIFIED 175 void OnRichtextliststylepageJustifiedSelected( wxCommandEvent& event ); 176 177 /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTLISTSTYLEPAGE_CENTERED 178 void OnRichtextliststylepageCenteredSelected( wxCommandEvent& event ); 179 180 /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTLISTSTYLEPAGE_ALIGNINDETERMINATE 181 void OnRichtextliststylepageAlignindeterminateSelected( wxCommandEvent& event ); 182 183 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTLISTSTYLEPAGE_INDENTLEFT 184 void OnIndentLeftUpdated( wxCommandEvent& event ); 185 186 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTLISTSTYLEPAGE_INDENTFIRSTLINE 187 void OnIndentFirstLineUpdated( wxCommandEvent& event ); 188 189 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTLISTSTYLEPAGE_INDENTRIGHT 190 void OnIndentRightUpdated( wxCommandEvent& event ); 191 192 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTLISTSTYLEPAGE_SPACINGBEFORE 193 void OnSpacingBeforeUpdated( wxCommandEvent& event ); 194 195 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTLISTSTYLEPAGE_SPACINGAFTER 196 void OnSpacingAfterUpdated( wxCommandEvent& event ); 197 198 /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTLISTSTYLEPAGE_LINESPACING 199 void OnLineSpacingSelected( wxCommandEvent& event ); 200 201 ////@end wxRichTextListStylePage event handler declarations 202 203 ////@begin wxRichTextListStylePage member function declarations 204 205 /// Retrieves bitmap resources 206 wxBitmap GetBitmapResource( const wxString& name ); 207 208 /// Retrieves icon resources 209 wxIcon GetIconResource( const wxString& name ); 210 ////@end wxRichTextListStylePage member function declarations 211 212 /// Should we show tooltips? 213 static bool ShowToolTips(); 214 215 ////@begin wxRichTextListStylePage member variables 216 wxSpinCtrl* m_levelCtrl; 217 wxListBox* m_styleListBox; 218 wxCheckBox* m_periodCtrl; 219 wxCheckBox* m_parenthesesCtrl; 220 wxCheckBox* m_rightParenthesisCtrl; 221 wxComboBox* m_bulletAlignmentCtrl; 222 wxComboBox* m_symbolCtrl; 223 wxComboBox* m_symbolFontCtrl; 224 wxComboBox* m_bulletNameCtrl; 225 wxRadioButton* m_alignmentLeft; 226 wxRadioButton* m_alignmentRight; 227 wxRadioButton* m_alignmentJustified; 228 wxRadioButton* m_alignmentCentred; 229 wxRadioButton* m_alignmentIndeterminate; 230 wxTextCtrl* m_indentLeft; 231 wxTextCtrl* m_indentLeftFirst; 232 wxTextCtrl* m_indentRight; 233 wxTextCtrl* m_spacingBefore; 234 wxTextCtrl* m_spacingAfter; 235 wxComboBox* m_spacingLine; 236 wxRichTextCtrl* m_previewCtrl; 237 /// Control identifiers 238 enum { 239 ID_RICHTEXTLISTSTYLEPAGE = 10616, 240 ID_RICHTEXTLISTSTYLEPAGE_LEVEL = 10617, 241 ID_RICHTEXTLISTSTYLEPAGE_CHOOSE_FONT = 10604, 242 ID_RICHTEXTLISTSTYLEPAGE_NOTEBOOK = 10618, 243 ID_RICHTEXTLISTSTYLEPAGE_BULLETS = 10619, 244 ID_RICHTEXTLISTSTYLEPAGE_STYLELISTBOX = 10620, 245 ID_RICHTEXTLISTSTYLEPAGE_PERIODCTRL = 10627, 246 ID_RICHTEXTLISTSTYLEPAGE_PARENTHESESCTRL = 10626, 247 ID_RICHTEXTLISTSTYLEPAGE_RIGHTPARENTHESISCTRL = 10602, 248 ID_RICHTEXTLISTSTYLEPAGE_BULLETALIGNMENTCTRL = 10603, 249 ID_RICHTEXTLISTSTYLEPAGE_SYMBOLSTATIC = 10621, 250 ID_RICHTEXTLISTSTYLEPAGE_SYMBOLCTRL = 10622, 251 ID_RICHTEXTLISTSTYLEPAGE_CHOOSE_SYMBOL = 10623, 252 ID_RICHTEXTLISTSTYLEPAGE_SYMBOLFONTCTRL = 10625, 253 ID_RICHTEXTLISTSTYLEPAGE_NAMESTATIC = 10600, 254 ID_RICHTEXTLISTSTYLEPAGE_NAMECTRL = 10601, 255 ID_RICHTEXTLISTSTYLEPAGE_SPACING = 10628, 256 ID_RICHTEXTLISTSTYLEPAGE_ALIGNLEFT = 10629, 257 ID_RICHTEXTLISTSTYLEPAGE_ALIGNRIGHT = 10630, 258 ID_RICHTEXTLISTSTYLEPAGE_JUSTIFIED = 10631, 259 ID_RICHTEXTLISTSTYLEPAGE_CENTERED = 10632, 260 ID_RICHTEXTLISTSTYLEPAGE_ALIGNINDETERMINATE = 10633, 261 ID_RICHTEXTLISTSTYLEPAGE_INDENTLEFT = 10634, 262 ID_RICHTEXTLISTSTYLEPAGE_INDENTFIRSTLINE = 10635, 263 ID_RICHTEXTLISTSTYLEPAGE_INDENTRIGHT = 10636, 264 ID_RICHTEXTLISTSTYLEPAGE_SPACINGBEFORE = 10637, 265 ID_RICHTEXTLISTSTYLEPAGE_SPACINGAFTER = 10638, 266 ID_RICHTEXTLISTSTYLEPAGE_LINESPACING = 10639, 267 ID_RICHTEXTLISTSTYLEPAGE_RICHTEXTCTRL = 10640 268 }; 269 ////@end wxRichTextListStylePage member variables 270 271 bool m_dontUpdate; 272 int m_currentLevel; 273 }; 274 275 #endif 276 // _RICHTEXTLISTSTYLEPAGE_H_ 277