]> git.saurik.com Git - wxWidgets.git/blame_incremental - docs/latex/wx/textattrex.tex
setting clipping correctly
[wxWidgets.git] / docs / latex / wx / textattrex.tex
... / ...
CommitLineData
1\section{\class{wxTextAttrEx}}\label{wxtextattrex}
2
3wxTextAttrEx is an extended version of wxTextAttr with more paragraph attributes.
4Currently it is only used with \helpref{wxRichTextCtrl}{wxrichtextctrl}.
5
6It is intended that eventually, the members of wxTextAttrEx will
7be folded into wxTextAttr, and wxTextAttr will be the official
8cross-platform API for text controls that support attributes.
9However, for now, wxTextAttrEx is provided as a means of enabling
10extra functionality in wxRichTextCtrl, while retaining some compatibility
11with the wxTextAttr API.
12
13The most efficient method of accessing wxRichTextCtrl functionality
14is a third attribute class, \helpref{wxRichTextAttr}{wxrichtextattr}, which
15optimizes its storage to allow it to be used for implementing objects
16in a buffer, as well as access to that buffer.
17
18This section only documents the additional members; see \helpref{wxTextAttr}{wxtextattr} for
19the remaining functions.
20
21\wxheading{Derived from}
22
23\helpref{wxTextAttr}{wxtextattr}
24
25\wxheading{Include files}
26
27<wx/richtext/richtextbuffer.h>
28
29\wxheading{Constants}
30
31The following values can be passed to SetAlignment to determine
32paragraph alignment.
33
34{\small
35\begin{verbatim}
36enum wxTextAttrAlignment
37{
38 wxTEXT_ALIGNMENT_DEFAULT,
39 wxTEXT_ALIGNMENT_LEFT,
40 wxTEXT_ALIGNMENT_CENTRE,
41 wxTEXT_ALIGNMENT_CENTER = wxTEXT_ALIGNMENT_CENTRE,
42 wxTEXT_ALIGNMENT_RIGHT,
43 wxTEXT_ALIGNMENT_JUSTIFIED
44};
45\end{verbatim}
46}
47
48These values are passed in a bitlist to SetFlags to determine
49what attributes will be considered when setting the attributes
50for a text control.
51
52{\small
53\begin{verbatim}
54// Standard wxTextAttr constants
55
56#define wxTEXT_ATTR_TEXT_COLOUR 0x0001
57#define wxTEXT_ATTR_BACKGROUND_COLOUR 0x0002
58#define wxTEXT_ATTR_FONT_FACE 0x0004
59#define wxTEXT_ATTR_FONT_SIZE 0x0008
60#define wxTEXT_ATTR_FONT_WEIGHT 0x0010
61#define wxTEXT_ATTR_FONT_ITALIC 0x0020
62#define wxTEXT_ATTR_FONT_UNDERLINE 0x0040
63#define wxTEXT_ATTR_FONT \
64 wxTEXT_ATTR_FONT_FACE | wxTEXT_ATTR_FONT_SIZE | wxTEXT_ATTR_FONT_WEIGHT \
65| wxTEXT_ATTR_FONT_ITALIC | wxTEXT_ATTR_FONT_UNDERLINE
66#define wxTEXT_ATTR_ALIGNMENT 0x0080
67#define wxTEXT_ATTR_LEFT_INDENT 0x0100
68#define wxTEXT_ATTR_RIGHT_INDENT 0x0200
69#define wxTEXT_ATTR_TABS 0x0400
70
71// Extra formatting flags not in wxTextAttr
72
73#define wxTEXT_ATTR_PARA_SPACING_AFTER 0x00000800
74#define wxTEXT_ATTR_PARA_SPACING_BEFORE 0x00001000
75#define wxTEXT_ATTR_LINE_SPACING 0x00002000
76#define wxTEXT_ATTR_CHARACTER_STYLE_NAME 0x00004000
77#define wxTEXT_ATTR_PARAGRAPH_STYLE_NAME 0x00008000
78#define wxTEXT_ATTR_BULLET_STYLE 0x00010000
79#define wxTEXT_ATTR_BULLET_NUMBER 0x00020000
80#define wxTEXT_ATTR_BULLET_SYMBOL 0x00040000
81\end{verbatim}
82}
83
84The following styles can be passed to wxRichTextAttr::SetBulletStyle:
85
86{\small
87\begin{verbatim}
88#define wxTEXT_ATTR_BULLET_STYLE_NONE 0x0000
89#define wxTEXT_ATTR_BULLET_STYLE_ARABIC 0x0001
90#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_UPPER 0x0002
91#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_LOWER 0x0004
92#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_UPPER 0x0008
93#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_LOWER 0x0010
94#define wxTEXT_ATTR_BULLET_STYLE_SYMBOL 0x0020
95#define wxTEXT_ATTR_BULLET_STYLE_BITMAP 0x0040
96#define wxTEXT_ATTR_BULLET_STYLE_PARENTHESES 0x0080
97#define wxTEXT_ATTR_BULLET_STYLE_PERIOD 0x0100
98\end{verbatim}
99}
100
101The following constants can be passed to wxRichTextAttr::SetLineSpacing:
102
103{\small
104\begin{verbatim}
105#define wxTEXT_ATTR_LINE_SPACING_NORMAL 10
106#define wxTEXT_ATTR_LINE_SPACING_HALF 15
107#define wxTEXT_ATTR_LINE_SPACING_TWICE 20
108\end{verbatim}
109}
110
111\wxheading{See also}
112
113\helpref{wxTextAttr}{wxtextattr}, \helpref{wxRichTextAttr}{wxrichtextattr}, \helpref{wxRichTextCtrl}{wxrichtextctrl}
114
115\latexignore{\rtfignore{\wxheading{Members}}}
116
117
118\membersection{wxTextAttrEx::wxTextAttrEx}\label{wxtextattrexwxtextattrex}
119
120\func{}{wxTextAttrEx}{\void}
121
122
123\func{}{wxTextAttrEx}{\param{const wxTextAttrEx\& }{attr}}
124
125Constructors.
126
127\membersection{wxTextAttrEx::GetBulletNumber}\label{wxtextattrexgetbulletnumber}
128
129\constfunc{int}{GetBulletNumber}{\void}
130
131Returns the bullet number.
132
133\membersection{wxTextAttrEx::GetBulletStyle}\label{wxtextattrexgetbulletstyle}
134
135\constfunc{int}{GetBulletStyle}{\void}
136
137Returns the bullet style.
138See \helpref{wxTextAttrEx::SetBulletStyle}{wxtextattrexsetbulletstyle} for a list of available styles.
139
140\membersection{wxTextAttrEx::GetBulletSymbol}\label{wxtextattrexgetbulletsymbol}
141
142\constfunc{wxChar}{GetBulletSymbol}{\void}
143
144Returns the bullet symbol, a character.
145
146\membersection{wxTextAttrEx::GetCharacterStyleName}\label{wxtextattrexgetcharacterstylename}
147
148\constfunc{const wxString\&}{GetCharacterStyleName}{\void}
149
150Returns the name of the character style.
151
152\membersection{wxTextAttrEx::GetLineSpacing}\label{wxtextattrexgetlinespacing}
153
154\constfunc{int}{GetLineSpacing}{\void}
155
156Returns the line spacing value, one of wxTEXT\_ATTR\_LINE\_SPACING\_NORMAL,
157wxTEXT\_ATTR\_LINE\_SPACING\_HALF, and wxTEXT\_ATTR\_LINE\_SPACING\_TWICE.
158
159\membersection{wxTextAttrEx::GetParagraphSpacingAfter}\label{wxtextattrexgetparagraphspacingafter}
160
161\constfunc{int}{GetParagraphSpacingAfter}{\void}
162
163Returns the space in tenths of a millimeter after the paragraph.
164
165\membersection{wxTextAttrEx::GetParagraphSpacingBefore}\label{wxtextattrexgetparagraphspacingbefore}
166
167\constfunc{int}{GetParagraphSpacingBefore}{\void}
168
169Returns the space in tenths of a millimeter before the paragraph.
170
171\membersection{wxTextAttrEx::GetParagraphStyleName}\label{wxtextattrexgetparagraphstylename}
172
173\constfunc{const wxString\&}{GetParagraphStyleName}{\void}
174
175Returns the name of the paragraph style.
176
177\membersection{wxTextAttrEx::HasBulletNumber}\label{wxtextattrexhasbulletnumber}
178
179\constfunc{bool}{HasBulletNumber}{\void}
180
181Returns \true if the attribute object specifies a bullet number.
182
183\membersection{wxTextAttrEx::HasBulletStyle}\label{wxtextattrexhasbulletstyle}
184
185\constfunc{bool}{HasBulletStyle}{\void}
186
187Returns \true if the attribute object specifies a bullet style.
188
189\membersection{wxTextAttrEx::HasBulletSymbol}\label{wxtextattrexhasbulletsymbol}
190
191\constfunc{bool}{HasBulletSymbol}{\void}
192
193Returns \true if the attribute object specifies a bullet symbol.
194
195\membersection{wxTextAttrEx::HasCharacterStyleName}\label{wxtextattrexhascharacterstylename}
196
197\constfunc{bool}{HasCharacterStyleName}{\void}
198
199Returns \true if the attribute object specifies a character style name.
200
201\membersection{wxTextAttrEx::HasLineSpacing}\label{wxtextattrexhaslinespacing}
202
203\constfunc{bool}{HasLineSpacing}{\void}
204
205Returns \true if the attribute object specifies line spacing.
206
207\membersection{wxTextAttrEx::HasParagraphSpacingAfter}\label{wxtextattrexhasparagraphspacingafter}
208
209\constfunc{bool}{HasParagraphSpacingAfter}{\void}
210
211Returns \true if the attribute object specifies spacing after a paragraph.
212
213\membersection{wxTextAttrEx::HasParagraphSpacingBefore}\label{wxtextattrexhasparagraphspacingbefore}
214
215\constfunc{bool}{HasParagraphSpacingBefore}{\void}
216
217Returns \true if the attribute object specifies spacing before a paragraph.
218
219\membersection{wxTextAttrEx::HasParagraphStyleName}\label{wxtextattrexhasparagraphstylename}
220
221\constfunc{bool}{HasParagraphStyleName}{\void}
222
223Returns \true if the attribute object specifies a paragraph style name.
224
225\membersection{wxTextAttrEx::Init}\label{wxtextattrexinit}
226
227\func{void}{Init}{\void}
228
229Initialises this object.
230
231\membersection{wxTextAttrEx::IsCharacterStyle}\label{wxtextattrexischaracterstyle}
232
233\constfunc{bool}{IsCharacterStyle}{\void}
234
235Returns \true if the object represents a character style, that is,
236the flags specify a font or a text background or foreground colour.
237
238\membersection{wxTextAttrEx::IsDefault}\label{wxtextattrexisdefault}
239
240\constfunc{bool}{IsDefault}{\void}
241
242Returns \false if we have any attributes set, \true otherwise.
243
244\membersection{wxTextAttrEx::IsParagraphStyle}\label{wxtextattrexisparagraphstyle}
245
246\constfunc{bool}{IsParagraphStyle}{\void}
247
248Returns \true if the object represents a paragraph style, that is,
249the flags specify alignment, indentation, tabs, paragraph spacing, or
250bullet style.
251
252\membersection{wxTextAttrEx::SetBulletNumber}\label{wxtextattrexsetbulletnumber}
253
254\func{void}{SetBulletNumber}{\param{int }{n}}
255
256Sets the bullet number.
257
258\membersection{wxTextAttrEx::SetBulletStyle}\label{wxtextattrexsetbulletstyle}
259
260\func{void}{SetBulletStyle}{\param{int }{style}}
261
262Sets the bullet style. The following styles can be passed:
263
264{\small
265\begin{verbatim}
266#define wxTEXT_ATTR_BULLET_STYLE_NONE 0x0000
267#define wxTEXT_ATTR_BULLET_STYLE_ARABIC 0x0001
268#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_UPPER 0x0002
269#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_LOWER 0x0004
270#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_UPPER 0x0008
271#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_LOWER 0x0010
272#define wxTEXT_ATTR_BULLET_STYLE_SYMBOL 0x0020
273#define wxTEXT_ATTR_BULLET_STYLE_BITMAP 0x0040
274#define wxTEXT_ATTR_BULLET_STYLE_PARENTHESES 0x0080
275#define wxTEXT_ATTR_BULLET_STYLE_PERIOD 0x0100
276\end{verbatim}
277}
278
279\membersection{wxTextAttrEx::SetBulletSymbol}\label{wxtextattrexsetbulletsymbol}
280
281\func{void}{SetBulletSymbol}{\param{wxChar }{symbol}}
282
283Sets the paragraph symbol.
284
285\membersection{wxTextAttrEx::SetCharacterStyleName}\label{wxtextattrexsetcharacterstylename}
286
287\func{void}{SetCharacterStyleName}{\param{const wxString\& }{name}}
288
289Sets the character style name.
290
291\membersection{wxTextAttrEx::SetLineSpacing}\label{wxtextattrexsetlinespacing}
292
293\func{void}{SetLineSpacing}{\param{int }{spacing}}
294
295Sets the line spacing. {\it spacing} is a multiple, where 10 means single-spacing,
29615 means 1.5 spacing, and 20 means double spacing. The following constants are
297defined for convenience:
298
299{\small
300\begin{verbatim}
301#define wxTEXT_ATTR_LINE_SPACING_NORMAL 10
302#define wxTEXT_ATTR_LINE_SPACING_HALF 15
303#define wxTEXT_ATTR_LINE_SPACING_TWICE 20
304\end{verbatim}
305}
306
307\membersection{wxTextAttrEx::SetParagraphSpacingAfter}\label{wxtextattrexsetparagraphspacingafter}
308
309\func{void}{SetParagraphSpacingAfter}{\param{int }{spacing}}
310
311Sets the spacing after a paragraph, in tenths of a millimetre.
312
313\membersection{wxTextAttrEx::SetParagraphSpacingBefore}\label{wxtextattrexsetparagraphspacingbefore}
314
315\func{void}{SetParagraphSpacingBefore}{\param{int }{spacing}}
316
317Sets the spacing before a paragraph, in tenths of a millimetre.
318
319\membersection{wxTextAttrEx::SetParagraphStyleName}\label{wxtextattrexsetparagraphstylename}
320
321\func{void}{SetParagraphStyleName}{\param{const wxString\& }{name}}
322
323Sets the name of the paragraph style.
324
325\membersection{wxTextAttrEx::operator=}\label{wxtextattrexoperatorassign}
326
327\func{void operator}{operator=}{\param{const wxTextAttr\& }{attr}}
328
329Assignment from a wxTextAttr object.
330
331\func{void operator}{operator=}{\param{const wxTextAttrEx\& }{attr}}
332
333Assignment from a wxTextAttrEx object.