]> git.saurik.com Git - wxWidgets.git/blame - include/wx/richtext/richtextindentspage.h
Fix wxPropertyGrid::GetPropertyRect when the last item is collapsed.
[wxWidgets.git] / include / wx / richtext / richtextindentspage.h
CommitLineData
97ff49b3 1/////////////////////////////////////////////////////////////////////////////
b68603d5 2// Name: wx/richtext/richtextindentspage.h
97ff49b3
JS
3// Purpose:
4// Author: Julian Smart
5// Modified by:
6// Created: 10/3/2006 2:28:21 PM
97ff49b3 7// Copyright: (c) Julian Smart
b68603d5 8// Licence: wxWindows licence
97ff49b3
JS
9/////////////////////////////////////////////////////////////////////////////
10
11#ifndef _RICHTEXTINDENTSPAGE_H_
12#define _RICHTEXTINDENTSPAGE_H_
13
14/*!
15 * Includes
16 */
17
603f702b
JS
18#include "wx/richtext/richtextdialogpage.h"
19
97ff49b3
JS
20////@begin includes
21#include "wx/statline.h"
22////@end includes
23
24/*!
25 * Forward declarations
26 */
27
28////@begin forward declarations
29class wxRichTextCtrl;
30////@end forward declarations
31
32/*!
33 * Control identifiers
34 */
35
36////@begin control identifiers
37#define SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_STYLE wxRESIZE_BORDER|wxTAB_TRAVERSAL
02aa812c 38#define SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_TITLE wxEmptyString
97ff49b3
JS
39#define SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_IDNAME ID_RICHTEXTINDENTSSPACINGPAGE
40#define SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_SIZE wxSize(400, 300)
41#define SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_POSITION wxDefaultPosition
42////@end control identifiers
43
97ff49b3
JS
44/*!
45 * wxRichTextIndentsSpacingPage class declaration
46 */
47
603f702b 48class WXDLLIMPEXP_RICHTEXT wxRichTextIndentsSpacingPage: public wxRichTextDialogPage
97ff49b3
JS
49{
50 DECLARE_DYNAMIC_CLASS( wxRichTextIndentsSpacingPage )
51 DECLARE_EVENT_TABLE()
603f702b 52 DECLARE_HELP_PROVISION()
97ff49b3
JS
53
54public:
55 /// Constructors
56 wxRichTextIndentsSpacingPage( );
8871035d 57 wxRichTextIndentsSpacingPage( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_POSITION, const wxSize& size = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_SIZE, long style = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_STYLE );
97ff49b3
JS
58
59 /// Creation
8871035d 60 bool Create( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_POSITION, const wxSize& size = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_SIZE, long style = SYMBOL_WXRICHTEXTINDENTSSPACINGPAGE_STYLE );
97ff49b3
JS
61
62 /// Initialise members
63 void Init();
64
65 /// Creates the controls and sizers
66 void CreateControls();
67
68 /// Transfer data from/to window
69 virtual bool TransferDataFromWindow();
70 virtual bool TransferDataToWindow();
71
72 /// Updates the paragraph preview
73 void UpdatePreview();
74
75 /// Gets the attributes associated with the main formatting dialog
24777478 76 wxRichTextAttr* GetAttributes();
97ff49b3
JS
77
78////@begin wxRichTextIndentsSpacingPage event handler declarations
79
d4d83a46 80 /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_LEFT
97ff49b3
JS
81 void OnAlignmentLeftSelected( wxCommandEvent& event );
82
d4d83a46 83 /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_RIGHT
97ff49b3
JS
84 void OnAlignmentRightSelected( wxCommandEvent& event );
85
d4d83a46 86 /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_JUSTIFIED
97ff49b3
JS
87 void OnAlignmentJustifiedSelected( wxCommandEvent& event );
88
d4d83a46 89 /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_CENTRED
97ff49b3
JS
90 void OnAlignmentCentredSelected( wxCommandEvent& event );
91
d4d83a46 92 /// wxEVT_COMMAND_RADIOBUTTON_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_INDETERMINATE
97ff49b3
JS
93 void OnAlignmentIndeterminateSelected( wxCommandEvent& event );
94
d4d83a46 95 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_LEFT
97ff49b3
JS
96 void OnIndentLeftUpdated( wxCommandEvent& event );
97
d4d83a46 98 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_LEFT_FIRST
97ff49b3
JS
99 void OnIndentLeftFirstUpdated( wxCommandEvent& event );
100
d4d83a46 101 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_RIGHT
97ff49b3
JS
102 void OnIndentRightUpdated( wxCommandEvent& event );
103
d4d83a46 104 /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_OUTLINELEVEL
4d6d8bf4
JS
105 void OnRichtextOutlinelevelSelected( wxCommandEvent& event );
106
d4d83a46 107 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_BEFORE
97ff49b3
JS
108 void OnSpacingBeforeUpdated( wxCommandEvent& event );
109
d4d83a46 110 /// wxEVT_COMMAND_TEXT_UPDATED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_AFTER
97ff49b3
JS
111 void OnSpacingAfterUpdated( wxCommandEvent& event );
112
d4d83a46 113 /// wxEVT_COMMAND_COMBOBOX_SELECTED event handler for ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_LINE
97ff49b3
JS
114 void OnSpacingLineSelected( wxCommandEvent& event );
115
116////@end wxRichTextIndentsSpacingPage event handler declarations
117
118////@begin wxRichTextIndentsSpacingPage member function declarations
119
120 /// Retrieves bitmap resources
121 wxBitmap GetBitmapResource( const wxString& name );
122
123 /// Retrieves icon resources
124 wxIcon GetIconResource( const wxString& name );
125////@end wxRichTextIndentsSpacingPage member function declarations
126
127 /// Should we show tooltips?
128 static bool ShowToolTips();
129
130////@begin wxRichTextIndentsSpacingPage member variables
131 wxRadioButton* m_alignmentLeft;
132 wxRadioButton* m_alignmentRight;
133 wxRadioButton* m_alignmentJustified;
134 wxRadioButton* m_alignmentCentred;
135 wxRadioButton* m_alignmentIndeterminate;
136 wxTextCtrl* m_indentLeft;
137 wxTextCtrl* m_indentLeftFirst;
138 wxTextCtrl* m_indentRight;
4d6d8bf4 139 wxComboBox* m_outlineLevelCtrl;
97ff49b3
JS
140 wxTextCtrl* m_spacingBefore;
141 wxTextCtrl* m_spacingAfter;
142 wxComboBox* m_spacingLine;
4c7d9d88 143 wxCheckBox* m_pageBreakCtrl;
97ff49b3
JS
144 wxRichTextCtrl* m_previewCtrl;
145 /// Control identifiers
146 enum {
147 ID_RICHTEXTINDENTSSPACINGPAGE = 10100,
148 ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_LEFT = 10102,
149 ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_RIGHT = 10110,
150 ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_JUSTIFIED = 10111,
151 ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_CENTRED = 10112,
152 ID_RICHTEXTINDENTSSPACINGPAGE_ALIGNMENT_INDETERMINATE = 10101,
153 ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_LEFT = 10103,
154 ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_LEFT_FIRST = 10104,
155 ID_RICHTEXTINDENTSSPACINGPAGE_INDENT_RIGHT = 10113,
4d6d8bf4 156 ID_RICHTEXTINDENTSSPACINGPAGE_OUTLINELEVEL = 10105,
97ff49b3
JS
157 ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_BEFORE = 10114,
158 ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_AFTER = 10116,
159 ID_RICHTEXTINDENTSSPACINGPAGE_SPACING_LINE = 10115,
4c7d9d88 160 ID_RICHTEXTINDENTSSPACINGPAGE_PAGEBREAK = 10106,
97ff49b3
JS
161 ID_RICHTEXTINDENTSSPACINGPAGE_PREVIEW_CTRL = 10109
162 };
163////@end wxRichTextIndentsSpacingPage member variables
164
165 bool m_dontUpdate;
166};
167
168#endif
169 // _RICHTEXTINDENTSPAGE_H_