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