Further wxRTC doc updates
[wxWidgets.git] / docs / latex / wx / richtextctrl.tex
1 \section{\class{wxRichTextCtrl}}\label{wxrichtextctrl}
2
3 wxRichTextCtrl provides a generic, ground-up implementation of a text control
4 capable of showing multiple styles and images.
5
6 wxRichTextCtrl sends notification events: see \helpref{wxRichTextEvent}{wxrichtextevent}.
7 It also sends the standard wxTextCtrl events wxEVT\_COMMAND\_TEXT\_ENTER and wxEVT\_COMMAND\_TEXT\_UPDATED,
8 and wxTextUrlEvent when URL content is clicked.
9
10 For more information, see the \helpref{wxRichTextCtrl overview}{wxrichtextctrloverview}.
11
12 \wxheading{Derived from}
13
14 wxTextCtrlBase
15
16 \wxheading{Include files}
17
18 <wx/richtext/richtextctrl.h>
19
20 \wxheading{Data structures}
21
22 \latexignore{\rtfignore{\wxheading{Members}}}
23
24 \membersection{wxRichTextCtrl::wxRichTextCtrl}\label{wxrichtextctrlwxrichtextctrl}
25
26 \func{}{wxRichTextCtrl}{\void}
27
28 \func{}{wxRichTextCtrl}{\param{wxWindow* }{parent}, \param{wxWindowID }{id = wxID\_ANY}, \param{const wxString\& }{value = wxEmptyString},
29 \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize}, \param{long }{style = wxRE\_MULTILINE},
30 \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = wxTextCtrlNameStr}}
31
32 Constructors.
33
34 \membersection{wxRichTextCtrl::\destruct{wxRichTextCtrl}}\label{wxrichtextctrldtor}
35
36 \func{}{\destruct{wxRichTextCtrl}}{\void}
37
38 Destructor.
39
40 \membersection{wxRichTextCtrl::AddImage}\label{wxrichtextctrladdimage}
41
42 \func{wxRichTextRange}{AddImage}{\param{const wxImage\& }{image}}
43
44 Adds an image to the control's buffer.
45
46 \membersection{wxRichTextCtrl::AddParagraph}\label{wxrichtextctrladdparagraph}
47
48 \func{wxRichTextRange}{AddParagraph}{\param{const wxString\& }{text}}
49
50 Adds a new paragraph of text to the end of the buffer.
51
52 \membersection{wxRichTextCtrl::AppendText}\label{wxrichtextctrlappendtext}
53
54 \func{void}{AppendText}{\param{const wxString\& }{text}}
55
56 Sets the insertion point to the end of the buffer and writes the text.
57
58 \membersection{wxRichTextCtrl::ApplyAlignmentToSelection}\label{wxrichtextctrlapplyalignmenttoselection}
59
60 \func{bool}{ApplyAlignmentToSelection}{\param{wxTextAttrAlignment }{alignment}}
61
62 Applies the given alignment to the selection (undoable).
63
64 For alignment values, see \helpref{wxTextAttrEx}{wxtextattrex}.
65
66 \membersection{wxRichTextCtrl::ApplyBoldToSelection}\label{wxrichtextctrlapplyboldtoselection}
67
68 \func{bool}{ApplyBoldToSelection}{\void}
69
70 Apples bold to the selection (undoable).
71
72 \membersection{wxRichTextCtrl::ApplyItalicToSelection}\label{wxrichtextctrlapplyitalictoselection}
73
74 \func{bool}{ApplyItalicToSelection}{\void}
75
76 Applies italic to the selection (undoable).
77
78 \membersection{wxRichTextCtrl::ApplyStyle}\label{wxrichtextctrlapplystyle}
79
80 \func{bool}{ApplyStyle}{\param{wxRichTextStyleDefinition*}{ def}}
81
82 Applies the given style to the selection.
83
84 \membersection{wxRichTextCtrl::ApplyStyleSheet}\label{wxrichtextctrlapplystylesheet}
85
86 \func{bool}{ApplyStyleSheet}{\param{wxRichTextStyleSheet*}{ sheet $=$ NULL}}
87
88 Applies the style sheet to the buffer, matching paragraph styles in the sheet against named styles
89 in the buffer. This might be useful if the styles have changed. If {\it sheet} is NULL, the
90 sheet set with SetStyleSheet is used.
91
92 Currently this applies paragraph styles only.
93
94 \membersection{wxRichTextCtrl::ApplyUnderlineToSelection}\label{wxrichtextctrlapplyunderlinetoselection}
95
96 \func{bool}{ApplyUnderlineToSelection}{\void}
97
98 Applies underline to the selection (undoable).
99
100 \membersection{wxRichTextCtrl::BatchingUndo}\label{wxrichtextctrlbatchingundo}
101
102 \constfunc{bool}{BatchingUndo}{\void}
103
104 Returns \true if undo commands are being batched.
105
106 \membersection{wxRichTextCtrl::BeginAlignment}\label{wxrichtextctrlbeginalignment}
107
108 \func{bool}{BeginAlignment}{\param{wxTextAttrAlignment }{alignment}}
109
110 Begins using alignment
111
112 For alignment values, see \helpref{wxTextAttrEx}{wxtextattrex}.
113
114 \membersection{wxRichTextCtrl::BeginBatchUndo}\label{wxrichtextctrlbeginbatchundo}
115
116 \func{bool}{BeginBatchUndo}{\param{const wxString\& }{cmdName}}
117
118 Starts batching undo history for commands.
119
120 \membersection{wxRichTextCtrl::BeginBold}\label{wxrichtextctrlbeginbold}
121
122 \func{bool}{BeginBold}{\void}
123
124 Begins using bold.
125
126 \membersection{wxRichTextCtrl::BeginCharacterStyle}\label{wxrichtextctrlbegincharacterstyle}
127
128 \func{bool}{BeginCharacterStyle}{\param{const wxString\& }{characterStyle}}
129
130 Begins using the named character style.
131
132 \membersection{wxRichTextCtrl::BeginFont}\label{wxrichtextctrlbeginfont}
133
134 \func{bool}{BeginFont}{\param{const wxFont\& }{font}}
135
136 Begins using this font.
137
138 \membersection{wxRichTextCtrl::BeginFontSize}\label{wxrichtextctrlbeginfontsize}
139
140 \func{bool}{BeginFontSize}{\param{int }{pointSize}}
141
142 Begins using the given point size.
143
144 \membersection{wxRichTextCtrl::BeginItalic}\label{wxrichtextctrlbeginitalic}
145
146 \func{bool}{BeginItalic}{\void}
147
148 Begins using italic.
149
150 \membersection{wxRichTextCtrl::BeginLeftIndent}\label{wxrichtextctrlbeginleftindent}
151
152 \func{bool}{BeginLeftIndent}{\param{int }{leftIndent}, \param{int }{leftSubIndent = 0}}
153
154 Begins applying a left indent and subindent in tenths of a millimetre.
155
156 The sub-indent is an offset from the left of the paragraph, and is used for all but the
157 first line in a paragraph. A positive value will cause the first line to appear to the left
158 of the subsequent lines, and a negative value will cause the first line to be indented
159 relative to the subsequent lines.
160
161 wxRichTextBuffer uses indentation to render a bulleted item. The left indent is the distance between
162 the margin and the bullet. The content of the paragraph, including the first line, starts
163 at leftMargin + leftSubIndent. So the distance between the left edge of the bullet and the
164 left of the actual paragraph is leftSubIndent.
165
166 \membersection{wxRichTextCtrl::BeginLineSpacing}\label{wxrichtextctrlbeginlinespacing}
167
168 \func{bool}{BeginLineSpacing}{\param{int }{lineSpacing}}
169
170 Begins appling line spacing. {\it spacing} is a multiple, where 10 means single-spacing,
171 15 means 1.5 spacing, and 20 means double spacing. The following constants are
172 defined for convenience:
173
174 {\small
175 \begin{verbatim}
176 #define wxTEXT_ATTR_LINE_SPACING_NORMAL 10
177 #define wxTEXT_ATTR_LINE_SPACING_HALF 15
178 #define wxTEXT_ATTR_LINE_SPACING_TWICE 20
179 \end{verbatim}
180 }
181
182 \membersection{wxRichTextCtrl::BeginListStyle}\label{wxrichtextctrlbeginliststyle}
183
184 \func{bool}{BeginListStyle}{\param{const wxString\&}{ listStyle}, \param{int}{ level=1}, \param{int}{ number=1}}
185
186 Begins using a specified list style. Optionally, you can also pass a level and a number.
187
188 \membersection{wxRichTextCtrl::BeginNumberedBullet}\label{wxrichtextctrlbeginnumberedbullet}
189
190 \func{bool}{BeginNumberedBullet}{\param{int }{bulletNumber}, \param{int }{leftIndent}, \param{int }{leftSubIndent}, \param{int }{bulletStyle = wxTEXT\_ATTR\_BULLET\_STYLE\_ARABIC|wxTEXT\_ATTR\_BULLET\_STYLE\_PERIOD}}
191
192 Begins a numbered bullet. This call will be needed for each item in the list, and the
193 application should take care of incrementing the numbering.
194
195 {\it bulletNumber} is a number, usually starting with 1.
196
197 {\it leftIndent} and {\it leftSubIndent} are values in tenths of a millimetre.
198
199 {\it bulletStyle} is a bitlist of the following values:
200
201 {\small
202 \begin{verbatim}
203 #define wxTEXT_ATTR_BULLET_STYLE_NONE 0x00000000
204 #define wxTEXT_ATTR_BULLET_STYLE_ARABIC 0x00000001
205 #define wxTEXT_ATTR_BULLET_STYLE_LETTERS_UPPER 0x00000002
206 #define wxTEXT_ATTR_BULLET_STYLE_LETTERS_LOWER 0x00000004
207 #define wxTEXT_ATTR_BULLET_STYLE_ROMAN_UPPER 0x00000008
208 #define wxTEXT_ATTR_BULLET_STYLE_ROMAN_LOWER 0x00000010
209 #define wxTEXT_ATTR_BULLET_STYLE_SYMBOL 0x00000020
210 #define wxTEXT_ATTR_BULLET_STYLE_BITMAP 0x00000040
211 #define wxTEXT_ATTR_BULLET_STYLE_PARENTHESES 0x00000080
212 #define wxTEXT_ATTR_BULLET_STYLE_PERIOD 0x00000100
213 #define wxTEXT_ATTR_BULLET_STYLE_STANDARD 0x00000200
214 #define wxTEXT_ATTR_BULLET_STYLE_RIGHT_PARENTHESIS 0x00000400
215 #define wxTEXT_ATTR_BULLET_STYLE_OUTLINE 0x00000800
216 #define wxTEXT_ATTR_BULLET_STYLE_ALIGN_LEFT 0x00000000
217 #define wxTEXT_ATTR_BULLET_STYLE_ALIGN_RIGHT 0x00001000
218 #define wxTEXT_ATTR_BULLET_STYLE_ALIGN_CENTRE 0x00002000
219 \end{verbatim}
220 }
221
222 wxRichTextBuffer uses indentation to render a bulleted item. The left indent is the distance between
223 the margin and the bullet. The content of the paragraph, including the first line, starts
224 at leftMargin + leftSubIndent. So the distance between the left edge of the bullet and the
225 left of the actual paragraph is leftSubIndent.
226
227 \membersection{wxRichTextCtrl::BeginParagraphSpacing}\label{wxrichtextctrlbeginparagraphspacing}
228
229 \func{bool}{BeginParagraphSpacing}{\param{int }{before}, \param{int }{after}}
230
231 Begins paragraph spacing; pass the before-paragraph and after-paragraph spacing in tenths of
232 a millimetre.
233
234 \membersection{wxRichTextCtrl::BeginParagraphStyle}\label{wxrichtextctrlbeginparagraphstyle}
235
236 \func{bool}{BeginParagraphStyle}{\param{const wxString\& }{paragraphStyle}}
237
238 Begins applying the named paragraph style.
239
240 \membersection{wxRichTextCtrl::BeginRightIndent}\label{wxrichtextctrlbeginrightindent}
241
242 \func{bool}{BeginRightIndent}{\param{int }{rightIndent}}
243
244 Begins a right indent, specified in tenths of a millimetre.
245
246 \membersection{wxRichTextCtrl::BeginStyle}\label{wxrichtextctrlbeginstyle}
247
248 \func{bool}{BeginStyle}{\param{const wxTextAttrEx\& }{style}}
249
250 Begins applying a style.
251
252 \membersection{wxRichTextCtrl::BeginSuppressUndo}\label{wxrichtextctrlbeginsuppressundo}
253
254 \func{bool}{BeginSuppressUndo}{\void}
255
256 Starts suppressing undo history for commands.
257
258 \membersection{wxRichTextCtrl::BeginSymbolBullet}\label{wxrichtextctrlbeginsymbolbullet}
259
260 \func{bool}{BeginSymbolBullet}{\param{wxChar }{symbol}, \param{int }{leftIndent}, \param{int }{leftSubIndent}, \param{int }{bulletStyle = wxTEXT\_ATTR\_BULLET\_STYLE\_SYMBOL}}
261
262 Begins applying a symbol bullet, using a character from the current font. See \helpref{BeginNumberedBullet}{wxrichtextctrlbeginnumberedbullet} for
263 an explanation of how indentation is used to render the bulleted paragraph.
264
265 \membersection{wxRichTextCtrl::BeginTextColour}\label{wxrichtextctrlbegintextcolour}
266
267 \func{bool}{BeginTextColour}{\param{const wxColour\& }{colour}}
268
269 Begins using this colour.
270
271 \membersection{wxRichTextCtrl::BeginUnderline}\label{wxrichtextctrlbeginunderline}
272
273 \func{bool}{BeginUnderline}{\void}
274
275 Begins using underlining.
276
277 \membersection{wxRichTextCtrl::BeginURL}\label{wxrichtextctrlbeginurl}
278
279 \func{bool}{BeginURL}{\param{const wxString\&}{ url}, \param{const wxString\&}{ characterStyle = wxEmptyString}}
280
281 Begins applying wxTEXT\_ATTR\_URL to the content. Pass a URL and optionally, a character style to apply,
282 since it is common to mark a URL with a familiar style such as blue text with underlining.
283
284 \membersection{wxRichTextCtrl::CanCopy}\label{wxrichtextctrlcancopy}
285
286 \constfunc{bool}{CanCopy}{\void}
287
288 Returns \true if selected content can be copied to the clipboard.
289
290 \membersection{wxRichTextCtrl::CanCut}\label{wxrichtextctrlcancut}
291
292 \constfunc{bool}{CanCut}{\void}
293
294 Returns \true if selected content can be copied to the clipboard and deleted.
295
296 \membersection{wxRichTextCtrl::CanDeleteSelection}\label{wxrichtextctrlcandeleteselection}
297
298 \constfunc{bool}{CanDeleteSelection}{\void}
299
300 Returns \true if selected content can be deleted.
301
302 \membersection{wxRichTextCtrl::CanPaste}\label{wxrichtextctrlcanpaste}
303
304 \constfunc{bool}{CanPaste}{\void}
305
306 Returns \true if the clipboard content can be pasted to the buffer.
307
308 \membersection{wxRichTextCtrl::CanRedo}\label{wxrichtextctrlcanredo}
309
310 \constfunc{bool}{CanRedo}{\void}
311
312 Returns \true if there is a command in the command history that can be redone.
313
314 \membersection{wxRichTextCtrl::CanUndo}\label{wxrichtextctrlcanundo}
315
316 \constfunc{bool}{CanUndo}{\void}
317
318 Returns \true if there is a command in the command history that can be undone.
319
320 \membersection{wxRichTextCtrl::Clear}\label{wxrichtextctrlclear}
321
322 \func{void}{Clear}{\void}
323
324 Clears the buffer content, leaving a single empty paragraph. Cannot be undone.
325
326 \membersection{wxRichTextCtrl::ClearListStyle}\label{wxrichtextctrlclearliststyle}
327
328 \func{bool}{ClearListStyle}{\param{const wxRichTextRange\& }{range}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}}
329
330 \func{bool}{ClearListStyle}{\param{const wxRichTextRange\& }{range}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}}
331
332 Clears the list style from the given range, clearing list-related attributes and applying any named paragraph style associated with each paragraph.
333
334 {\it flags} is a bit list of the following:
335
336 \begin{itemize}\itemsep=0pt
337 \item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
338 \end{itemize}
339
340 See also \helpref{wxRichTextCtrl::SetListStyle}{wxrichtextctrlsetliststyle}, \helpref{wxRichTextCtrl::PromoteList}{wxrichtextctrlpromotelist}, \helpref{wxRichTextCtrl::NumberList}{wxrichtextctrlnumberlist}.
341
342 \membersection{wxRichTextCtrl::Command}\label{wxrichtextctrlcommand}
343
344 \func{void}{Command}{\param{wxCommandEvent\& }{event}}
345
346 Sends the event to the control.
347
348 \membersection{wxRichTextCtrl::Copy}\label{wxrichtextctrlcopy}
349
350 \func{void}{Copy}{\void}
351
352 Copies the selected content (if any) to the clipboard.
353
354 \membersection{wxRichTextCtrl::Create}\label{wxrichtextctrlcreate}
355
356 \func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID }{id = wxID\_ANY}, \param{const wxString\& }{value = wxEmptyString},
357 \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize}, \param{long }{style = wxRE\_MULTILINE},
358 \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = wxTextCtrlNameStr}}
359
360 Creates the underlying window.
361
362 \membersection{wxRichTextCtrl::Cut}\label{wxrichtextctrlcut}
363
364 \func{void}{Cut}{\void}
365
366 Copies the selected content (if any) to the clipboard and deletes the selection.
367 This is undoable.
368
369 \membersection{wxRichTextCtrl::Delete}\label{wxrichtextctrldelete}
370
371 \func{bool}{Delete}{\param{const wxRichTextRange\&}{ range}}
372
373 Deletes the content within the given range.
374
375 \membersection{wxRichTextCtrl::DeleteSelectedContent}\label{wxrichtextctrldeleteselectedcontent}
376
377 \func{bool}{DeleteSelectedContent}{\param{long* }{newPos = NULL}}
378
379 Deletes content if there is a selection, e.g. when pressing a key.
380 Returns the new caret position in {\it newPos}, or leaves it if there
381 was no action. This is undoable.
382
383 \membersection{wxRichTextCtrl::DeleteSelection}\label{wxrichtextctrldeleteselection}
384
385 \func{void}{DeleteSelection}{\void}
386
387 Deletes the content in the selection, if any. This is undoable.
388
389 \membersection{wxRichTextCtrl::DiscardEdits}\label{wxrichtextctrldiscardedits}
390
391 \func{void}{DiscardEdits}{\void}
392
393 Sets the buffer's modified status to \false, and clears the buffer's command history.
394
395 \membersection{wxRichTextCtrl::DoGetBestSize}\label{wxrichtextctrldogetbestsize}
396
397 \constfunc{wxSize}{DoGetBestSize}{\void}
398
399 Currently this simply returns {\tt wxSize(10, 10)}.
400
401 \membersection{wxRichTextCtrl::EndAlignment}\label{wxrichtextctrlendalignment}
402
403 \func{bool}{EndAlignment}{\void}
404
405 Ends alignment.
406
407 \membersection{wxRichTextCtrl::EndAllStyles}\label{wxrichtextctrlendallstyles}
408
409 \func{bool}{EndAllStyles}{\void}
410
411 Ends application of all styles in the current style stack.
412
413 \membersection{wxRichTextCtrl::EndBatchUndo}\label{wxrichtextctrlendbatchundo}
414
415 \func{bool}{EndBatchUndo}{\void}
416
417 Ends batching undo command history.
418
419 \membersection{wxRichTextCtrl::EndBold}\label{wxrichtextctrlendbold}
420
421 \func{bool}{EndBold}{\void}
422
423 Ends using bold.
424
425 \membersection{wxRichTextCtrl::EndCharacterStyle}\label{wxrichtextctrlendcharacterstyle}
426
427 \func{bool}{EndCharacterStyle}{\void}
428
429 Ends application of a named character style.
430
431 \membersection{wxRichTextCtrl::EndFont}\label{wxrichtextctrlendfont}
432
433 \func{bool}{EndFont}{\void}
434
435 Ends using a font.
436
437 \membersection{wxRichTextCtrl::EndFontSize}\label{wxrichtextctrlendfontsize}
438
439 \func{bool}{EndFontSize}{\void}
440
441 Ends using a point size.
442
443 \membersection{wxRichTextCtrl::EndItalic}\label{wxrichtextctrlenditalic}
444
445 \func{bool}{EndItalic}{\void}
446
447 Ends using italic.
448
449 \membersection{wxRichTextCtrl::EndLeftIndent}\label{wxrichtextctrlendleftindent}
450
451 \func{bool}{EndLeftIndent}{\void}
452
453 Ends left indent.
454
455 \membersection{wxRichTextCtrl::EndLineSpacing}\label{wxrichtextctrlendlinespacing}
456
457 \func{bool}{EndLineSpacing}{\void}
458
459 Ends line spacing.
460
461 \membersection{wxRichTextCtrl::EndListStyle}\label{wxrichtextctrlendliststyle}
462
463 \func{bool}{EndListStyle}{\void}
464
465 Ends using a specified list style.
466
467 \membersection{wxRichTextCtrl::EndNumberedBullet}\label{wxrichtextctrlendnumberedbullet}
468
469 \func{bool}{EndNumberedBullet}{\void}
470
471 Ends application of a numbered bullet.
472
473 \membersection{wxRichTextCtrl::EndParagraphSpacing}\label{wxrichtextctrlendparagraphspacing}
474
475 \func{bool}{EndParagraphSpacing}{\void}
476
477 Ends paragraph spacing.
478
479 \membersection{wxRichTextCtrl::EndParagraphStyle}\label{wxrichtextctrlendparagraphstyle}
480
481 \func{bool}{EndParagraphStyle}{\void}
482
483 Ends application of a named character style.
484
485 \membersection{wxRichTextCtrl::EndRightIndent}\label{wxrichtextctrlendrightindent}
486
487 \func{bool}{EndRightIndent}{\void}
488
489 Ends right indent.
490
491 \membersection{wxRichTextCtrl::EndStyle}\label{wxrichtextctrlendstyle}
492
493 \func{bool}{EndStyle}{\void}
494
495 Ends the current style.
496
497 \membersection{wxRichTextCtrl::EndSuppressUndo}\label{wxrichtextctrlendsuppressundo}
498
499 \func{bool}{EndSuppressUndo}{\void}
500
501 Ends suppressing undo command history.
502
503 \membersection{wxRichTextCtrl::EndSymbolBullet}\label{wxrichtextctrlendsymbolbullet}
504
505 \func{bool}{EndSymbolBullet}{\void}
506
507 Ends applying a symbol bullet.
508
509 \membersection{wxRichTextCtrl::EndTextColour}\label{wxrichtextctrlendtextcolour}
510
511 \func{bool}{EndTextColour}{\void}
512
513 Ends applying a text colour.
514
515 \membersection{wxRichTextCtrl::EndUnderline}\label{wxrichtextctrlendunderline}
516
517 \func{bool}{EndUnderline}{\void}
518
519 End applying underlining.
520
521 \membersection{wxRichTextCtrl::EndURL}\label{wxrichtextctrlendurl}
522
523 \func{bool}{EndURL}{\void}
524
525 Ends applying a URL.
526
527 \membersection{wxRichTextCtrl::ExtendSelection}\label{wxrichtextctrlextendselection}
528
529 \func{bool}{ExtendSelection}{\param{long }{oldPosition}, \param{long }{newPosition}, \param{int }{flags}}
530
531 Helper function for extending the selection, returning \true if the selection was
532 changed. Selections are in caret positions.
533
534 \membersection{wxRichTextCtrl::FindNextWordPosition}\label{wxrichtextctrlfindnextwordposition}
535
536 \constfunc{long}{FindNextWordPosition}{\param{int }{direction = 1}}
537
538 Helper function for finding the caret position for the next word. Direction
539 is 1 (forward) or -1 (backwards).
540
541 \membersection{wxRichTextCtrl::Freeze}\label{wxrichtextctrlfreeze}
542
543 \func{void}{Freeze}{\void}
544
545 Call this function to prevent refresh and allow fast updates, and then \helpref{Thaw}{wxrichtextctrlthaw} to
546 refresh the control.
547
548 \membersection{wxRichTextCtrl::GetBasicStyle}\label{wxrichtextctrlgetbasicstyle}
549
550 \constfunc{const wxTextAttrEx\&}{GetBasicStyle}{\void}
551
552 Gets the basic (overall) style. This is the style of the whole
553 buffer before further styles are applied, unlike the default style, which
554 only affects the style currently being applied (for example, setting the default
555 style to bold will cause subsequently inserted text to be bold).
556
557 \membersection{wxRichTextCtrl::GetBuffer}\label{wxrichtextctrlgetbuffer}
558
559 \constfunc{const wxRichTextBuffer\&}{GetBuffer}{\void}
560
561 \func{wxRichTextBuffer\&}{GetBuffer}{\void}
562
563 Returns the buffer associated with the control.
564
565 \membersection{wxRichTextCtrl::GetCaretPosition}\label{wxrichtextctrlgetcaretposition}
566
567 \constfunc{long}{GetCaretPosition}{\void}
568
569 Returns the current caret position.
570
571 \membersection{wxRichTextCtrl::GetCaretPositionForIndex}\label{wxrichtextctrlgetcaretpositionforindex}
572
573 \func{bool}{GetCaretPositionForIndex}{\param{long }{position}, \param{wxRect\& }{rect}}
574
575 Returns the caret height and position for the given character position
576
577 \membersection{wxRichTextCtrl::GetCommandProcessor}\label{wxrichtextctrlgetcommandprocessor}
578
579 \constfunc{wxCommandProcessor*}{GetCommandProcessor}{\void}
580
581 Gets the command processor associated with the control's buffer.
582
583 \membersection{wxRichTextCtrl::GetDefaultStyleEx}\label{wxrichtextctrlgetdefaultstyleex}
584
585 \constfunc{const wxTextAttrEx\&}{GetDefaultStyleEx}{\void}
586
587 Returns the current default style, which can be used to change how subsequently inserted
588 text is displayed. When wxTextAttrEx is merged with wxTextAttr, this function
589 will become GetDefaultStyle.
590
591 \membersection{wxRichTextCtrl::GetDelayedLayoutThreshold}\label{wxrichtextctrlgetdelayedlayoutthreshold}
592
593 \constfunc{long}{GetDelayedLayoutThreshold}{\void}
594
595 Gets the size of the buffer beyond which layout is delayed during resizing.
596 This optimizes sizing for large buffers. The default is 20000.
597
598 \membersection{wxRichTextCtrl::GetFilename}\label{wxrichtextctrlgetfilename}
599
600 \constfunc{wxString}{GetFilename}{\void}
601
602 Gets the current filename associated with the control.
603
604 \membersection{wxRichTextCtrl::GetFirstVisiblePosition}\label{wxrichtextctrlgetfirstvisibleposition}
605
606 \constfunc{long}{GetFirstVisiblePosition}{\void}
607
608 Returns the first visible position in the current view.
609
610 \membersection{wxRichTextCtrl::GetHandlerFlags}\label{wxrichtextfilehandlergethandlerflags}
611
612 \constfunc{int}{GetHandlerFlags}{\void}
613
614 Returns flags that change the behaviour of loading or saving. See the documentation for each
615 handler class to see what flags are relevant for each handler.
616
617 \membersection{wxRichTextCtrl::GetInsertionPoint}\label{wxrichtextctrlgetinsertionpoint}
618
619 \constfunc{long}{GetInsertionPoint}{\void}
620
621 Returns the current insertion point.
622
623 \membersection{wxRichTextCtrl::GetLastPosition}\label{wxrichtextctrlgetlastposition}
624
625 \constfunc{wxTextPos}{GetLastPosition}{\void}
626
627 Returns the last position in the buffer.
628
629 \membersection{wxRichTextCtrl::GetLineLength}\label{wxrichtextctrlgetlinelength}
630
631 \constfunc{int}{GetLineLength}{\param{long }{lineNo}}
632
633 Returns the length of the specified line in characters.
634
635 \membersection{wxRichTextCtrl::GetLineText}\label{wxrichtextctrlgetlinetext}
636
637 \constfunc{wxString}{GetLineText}{\param{long }{lineNo}}
638
639 Returns the text for the given line.
640
641 \membersection{wxRichTextCtrl::GetLogicalPoint}\label{wxrichtextctrlgetlogicalpoint}
642
643 \constfunc{wxPoint}{GetLogicalPoint}{\param{const wxPoint\& }{ptPhysical}}
644
645 Transforms physical window position to logical (unscrolled) position.
646
647 \membersection{wxRichTextCtrl::GetNumberOfLines}\label{wxrichtextctrlgetnumberoflines}
648
649 \constfunc{int}{GetNumberOfLines}{\void}
650
651 Returns the number of lines in the buffer.
652
653 \membersection{wxRichTextCtrl::GetPhysicalPoint}\label{wxrichtextctrlgetphysicalpoint}
654
655 \constfunc{wxPoint}{GetPhysicalPoint}{\param{const wxPoint\& }{ptLogical}}
656
657 Transforms logical (unscrolled) position to physical window position.
658
659 \membersection{wxRichTextCtrl::GetRange}\label{wxrichtextctrlgetrange}
660
661 \constfunc{wxString}{GetRange}{\param{long }{from}, \param{long }{to}}
662
663 Gets the text for the given range.
664
665 The end point of range is specified as the last character position of the span of text, plus one.
666
667 \membersection{wxRichTextCtrl::GetSelection}\label{wxrichtextctrlgetselection}
668
669 \constfunc{void}{GetSelection}{\param{long* }{from}, \param{long* }{to}}
670
671 Returns the range of the current selection.
672
673 The end point of range is specified as the last character position of the span of text, plus one.
674
675 If the return values {\it from} and {\it to} are the same, there is no selection.
676
677 \membersection{wxRichTextCtrl::GetSelectionRange}\label{wxrichtextctrlgetselectionrange}
678
679 \constfunc{const wxRichTextRange\&}{GetSelectionRange}{\void}
680
681 Returns the selection range in character positions. -1, -1 means no selection.
682
683 \membersection{wxRichTextCtrl::GetStringSelection}\label{wxrichtextctrlgetstringselection}
684
685 \constfunc{wxString}{GetStringSelection}{\void}
686
687 Returns the text within the current selection range, if any.
688
689 \membersection{wxRichTextCtrl::GetStyle}\label{wxrichtextctrlgetstyle}
690
691 \func{bool}{GetStyle}{\param{long }{position}, \param{wxRichTextAttr\& }{style}}
692
693 \func{bool}{GetStyle}{\param{long }{position}, \param{wxTextAttrEx\& }{style}}
694
695 \func{bool}{GetStyle}{\param{long }{position}, \param{wxTextAttr\& }{style}}
696
697 Gets the attributes at the given position. The wxRichTextAttr version is generally more efficient
698 because it does not use wxFont objects.
699
700 This function gets the combined style - that is, the style you see on the screen as a result
701 of combining base style, paragraph style and character style attributes. To get the character
702 or paragraph style alone, use \helpref{GetUncombinedStyle}{wxrichtextctrlgetuncombinedstyle}.
703
704 \membersection{wxRichTextCtrl::GetStyleForRange}\label{wxrichtextctrlgetstyleforrange}
705
706 \func{bool}{GetStyleForRange}{\param{const wxRichTextRange\& }{range}, \param{wxRichTextAttr\& }{style}}
707
708 \func{bool}{GetStyleForRange}{\param{const wxRichTextRange\& }{range}, \param{wxTextAttrEx\& }{style}}
709
710 Gets the attributes common to the specified range. Attributes that differ in value within the range will
711 not be included in {\it style}'s flags.
712
713 \membersection{wxRichTextCtrl::GetStyleSheet}\label{wxrichtextctrlgetstylesheet}
714
715 \constfunc{wxRichTextStyleSheet*}{GetStyleSheet}{\void}
716
717 Returns the style sheet associated with the control, if any. A style sheet allows named
718 character and paragraph styles to be applied.
719
720 \membersection{wxRichTextCtrl::GetUncombinedStyle}\label{wxrichtextctrlgetuncombinedstyle}
721
722 \func{bool}{GetUncombinedStyle}{\param{long }{position}, \param{wxRichTextAttr\& }{style}}
723
724 \func{bool}{GetUncombinedStyle}{\param{long }{position}, \param{wxTextAttrEx\& }{style}}
725
726 \func{bool}{GetUncombinedStyle}{\param{long }{position}, \param{wxTextAttr\& }{style}}
727
728 Gets the attributes at the given position. The wxRichTextAttr version is generally more efficient
729 because it does not use wxFont objects.
730
731 This function gets the {\it uncombined style} - that is, the attributes associated with the
732 paragraph or character content, and not necessarily the combined attributes you see on the
733 screen. To get the combined attributes, use \helpref{GetStyle}{wxrichtextctrlgetstyle}.
734
735 If you specify (any) paragraph attribute in {\it style}'s flags, this function will fetch
736 the paragraph attributes. Otherwise, it will return the character attributes.
737
738 \membersection{wxRichTextCtrl::GetValue}\label{wxrichtextctrlgetvalue}
739
740 \constfunc{wxString}{GetValue}{\void}
741
742 Returns the content of the entire control as a string.
743
744 \membersection{wxRichTextCtrl::GetVisibleLineForCaretPosition}\label{wxrichtextctrlgetvisiblelineforcaretposition}
745
746 \constfunc{wxRichTextLine*}{GetVisibleLineForCaretPosition}{\param{long }{caretPosition}}
747
748 Internal helper function returning the line for the visible caret position. If the caret is
749 shown at the very end of the line, it means the next character is actually
750 on the following line. So this function gets the line we're expecting to find
751 if this is the case.
752
753 \membersection{wxRichTextCtrl::HasCharacterAttributes}\label{wxrichtextctrlhascharacterattributes}
754
755 \constfunc{bool}{HasCharacterAttributes}{\param{const wxRichTextRange\& }{range}, \param{const wxTextAttrEx\& }{style}}
756
757 \constfunc{bool}{HasCharacterAttributes}{\param{const wxRichTextRange\& }{range}, \param{const wxRichTextAttr\& }{style}}
758
759 Test if this whole range has character attributes of the specified kind. If any
760 of the attributes are different within the range, the test fails. You
761 can use this to implement, for example, bold button updating. {\it style} must have
762 flags indicating which attributes are of interest.
763
764 \membersection{wxRichTextCtrl::HasParagraphAttributes}\label{wxrichtextctrlhasparagraphattributes}
765
766 \constfunc{bool}{HasParagraphAttributes}{\param{const wxRichTextRange\& }{range}, \param{const wxTextAttrEx\& }{style}}
767
768 \constfunc{bool}{HasParagraphAttributes}{\param{const wxRichTextRange\& }{range}, \param{const wxRichTextAttr\& }{style}}
769
770 Test if this whole range has paragraph attributes of the specified kind. If any
771 of the attributes are different within the range, the test fails. You
772 can use this to implement, for example, centering button updating. {\it style} must have
773 flags indicating which attributes are of interest.
774
775 \membersection{wxRichTextCtrl::HasSelection}\label{wxrichtextctrlhasselection}
776
777 \constfunc{bool}{HasSelection}{\void}
778
779 Returns \true if there is a selection.
780
781 \membersection{wxRichTextCtrl::HitTest}\label{wxrichtextctrlhittest}
782
783 \constfunc{wxTextCtrlHitTestResult}{HitTest}{\param{const wxPoint\& }{pt}, \param{long* }{pos}}
784
785 \constfunc{wxTextCtrlHitTestResult}{HitTest}{\param{const wxPoint\& }{pt}, \param{wxTextCoord* }{col}, \param{wxTextCoord* }{row}}
786
787 Finds the character at the given position in pixels.
788
789 {\it pt} is in device coords (not adjusted for the client area origin nor for scrolling).
790
791 \membersection{wxRichTextCtrl::Init}\label{wxrichtextctrlinit}
792
793 \func{void}{Init}{\void}
794
795 Initialises the members of the control.
796
797 \membersection{wxRichTextCtrl::InitCommandEvent}\label{wxrichtextctrlinitcommandevent}
798
799 \constfunc{void}{InitCommandEvent}{\param{wxCommandEvent\& }{event}}
800
801 Initialises the command event.
802
803 \membersection{wxRichTextCtrl::IsDefaultStyleShowing}\label{wxrichtextctrlisdefaultstyleshowing}
804
805 \constfunc{bool}{IsDefaultStyleShowing}{\void}
806
807 Returns \true if the user has recently set the default style without moving the caret,
808 and therefore the UI needs to reflect the default style and not the style at the caret.
809
810 Below is an example of code that uses this function to determine whether the UI
811 should show that the current style is bold.
812
813 \begin{verbatim}
814 /// Is all of the selection bold?
815 bool wxRichTextCtrl::IsSelectionBold()
816 {
817 if (HasSelection())
818 {
819 wxRichTextAttr attr;
820 wxRichTextRange range = GetInternalSelectionRange();
821 attr.SetFlags(wxTEXT_ATTR_FONT_WEIGHT);
822 attr.SetFontWeight(wxBOLD);
823
824 return HasCharacterAttributes(range, attr);
825 }
826 else
827 {
828 // If no selection, then we need to combine current style with default style
829 // to see what the effect would be if we started typing.
830 wxRichTextAttr attr;
831 attr.SetFlags(wxTEXT_ATTR_FONT_WEIGHT);
832
833 long pos = GetAdjustedCaretPosition(GetCaretPosition());
834 if (GetStyle(pos, attr))
835 {
836 if (IsDefaultStyleShowing())
837 wxRichTextApplyStyle(attr, GetDefaultStyleEx());
838 return attr.GetFontWeight() == wxBOLD;
839 }
840 }
841 return false;
842 }
843 \end{verbatim}
844
845 See also \helpref{SetAndShowDefaultStyle}{wxrichtextctrlsetandshowdefaultstyle}.
846
847 \membersection{wxRichTextCtrl::IsEditable}\label{wxrichtextctrliseditable}
848
849 \constfunc{bool}{IsEditable}{\void}
850
851 Returns \true if the control is editable.
852
853 \membersection{wxRichTextCtrl::IsFrozen}\label{wxrichtextctrlisfrozen}
854
855 \constfunc{bool}{IsFrozen}{\void}
856
857 Returns \true if Freeze has been called without a Thaw.
858
859 \membersection{wxRichTextCtrl::IsModified}\label{wxrichtextctrlismodified}
860
861 \constfunc{bool}{IsModified}{\void}
862
863 Returns \true if the buffer has been modified.
864
865 \membersection{wxRichTextCtrl::IsMultiLine}\label{wxrichtextctrlismultiline}
866
867 \constfunc{bool}{IsMultiLine}{\void}
868
869 Returns \true if the control is multiline.
870
871 \membersection{wxRichTextCtrl::IsPositionVisible}\label{wxrichtextctrlispositionvisible}
872
873 \constfunc{bool}{IsPositionVisible}{\param{long }{pos}}
874
875 Returns \true if the given position is visible on the screen.
876
877 \membersection{wxRichTextCtrl::IsSelectionAligned}\label{wxrichtextctrlisselectionaligned}
878
879 \constfunc{bool}{IsSelectionAligned}{\param{wxTextAttrAlignment }{alignment}}
880
881 Returns \true if all of the selection is aligned according to the specified flag.
882
883 \membersection{wxRichTextCtrl::IsSelectionBold}\label{wxrichtextctrlisselectionbold}
884
885 \constfunc{bool}{IsSelectionBold}{\void}
886
887 Returns \true if all of the selection is bold.
888
889 \membersection{wxRichTextCtrl::IsSelectionItalics}\label{wxrichtextctrlisselectionitalics}
890
891 \constfunc{bool}{IsSelectionItalics}{\void}
892
893 Returns \true if all of the selection is italic.
894
895 \membersection{wxRichTextCtrl::IsSelectionUnderlined}\label{wxrichtextctrlisselectionunderlined}
896
897 \constfunc{bool}{IsSelectionUnderlined}{\void}
898
899 Returns \true if all of the selection is underlined.
900
901 \membersection{wxRichTextCtrl::IsSingleLine}\label{wxrichtextctrlissingleline}
902
903 \constfunc{bool}{IsSingleLine}{\void}
904
905 Returns \true if the control is single-line. Currently wxRichTextCtrl does not
906 support single-line editing.
907
908 \membersection{wxRichTextCtrl::KeyboardNavigate}\label{wxrichtextctrlkeyboardnavigate}
909
910 \func{bool}{KeyboardNavigate}{\param{int }{keyCode}, \param{int }{flags}}
911
912 Helper function implementing keyboard navigation.
913
914 \membersection{wxRichTextCtrl::LayoutContent}\label{wxrichtextctrllayoutcontent}
915
916 \func{bool}{LayoutContent}{\param{bool }{onlyVisibleRect = false}}
917
918 Lays out the buffer, which must be done before certain operations, such as
919 setting the caret position. This function should not normally be required by the
920 application.
921
922 \membersection{wxRichTextCtrl::LineBreak}\label{wxrichtextctrllinebreak}
923
924 \func{bool}{LineBreak}{\void}
925
926 Inserts a line break at the current insertion point. A line break forces wrapping within a paragraph, and
927 can be introduced by using this function, by appending the wxChar value {\bf wxRichTextLineBreakChar} to text content,
928 or by typing Shift-Return.
929
930 \membersection{wxRichTextCtrl::LoadFile}\label{wxrichtextctrlloadfile}
931
932 \func{bool}{LoadFile}{\param{const wxString\& }{file}, \param{int }{type = wxRICHTEXT\_TYPE\_ANY}}
933
934 Loads content into the control's buffer using the given type. If the specified type
935 is wxRICHTEXT\_TYPE\_ANY, the type is deduced from the filename extension.
936
937 This function looks for a suitable \helpref{wxRichTextFileHandler}{wxrichtextfilehandler} object.
938
939 \membersection{wxRichTextCtrl::MarkDirty}\label{wxrichtextctrlmarkdirty}
940
941 \func{void}{MarkDirty}{\void}
942
943 Marks the buffer as modified.
944
945 \membersection{wxRichTextCtrl::MoveCaret}\label{wxrichtextctrlmovecaret}
946
947 \func{bool}{MoveCaret}{\param{long }{pos}, \param{bool }{showAtLineStart = false}}
948
949 Move the caret to the given character position.
950
951 \membersection{wxRichTextCtrl::MoveCaretBack}\label{wxrichtextctrlmovecaretback}
952
953 \func{void}{MoveCaretBack}{\param{long }{oldPosition}}
954
955 Move the caret one visual step forward: this may mean setting a flag
956 and keeping the same position if we're going from the end of one line
957 to the start of the next, which may be the exact same caret position.
958
959 \membersection{wxRichTextCtrl::MoveCaretForward}\label{wxrichtextctrlmovecaretforward}
960
961 \func{void}{MoveCaretForward}{\param{long }{oldPosition}}
962
963 Move the caret one visual step forward: this may mean setting a flag
964 and keeping the same position if we're going from the end of one line
965 to the start of the next, which may be the exact same caret position.
966
967 \membersection{wxRichTextCtrl::MoveDown}\label{wxrichtextctrlmovedown}
968
969 \func{bool}{MoveDown}{\param{int }{noLines = 1}, \param{int }{flags = 0}}
970
971 Moves the caret down.
972
973 \membersection{wxRichTextCtrl::MoveEnd}\label{wxrichtextctrlmoveend}
974
975 \func{bool}{MoveEnd}{\param{int }{flags = 0}}
976
977 Moves to the end of the buffer.
978
979 \membersection{wxRichTextCtrl::MoveHome}\label{wxrichtextctrlmovehome}
980
981 \func{bool}{MoveHome}{\param{int }{flags = 0}}
982
983 Moves to the start of the buffer.
984
985 \membersection{wxRichTextCtrl::MoveLeft}\label{wxrichtextctrlmoveleft}
986
987 \func{bool}{MoveLeft}{\param{int }{noPositions = 1}, \param{int }{flags = 0}}
988
989 Moves left.
990
991 \membersection{wxRichTextCtrl::MoveRight}\label{wxrichtextctrlmoveright}
992
993 \func{bool}{MoveRight}{\param{int }{noPositions = 1}, \param{int }{flags = 0}}
994
995 Moves right.
996
997 \membersection{wxRichTextCtrl::MoveToLineEnd}\label{wxrichtextctrlmovetolineend}
998
999 \func{bool}{MoveToLineEnd}{\param{int }{flags = 0}}
1000
1001 Moves to the end of the line.
1002
1003 \membersection{wxRichTextCtrl::MoveToLineStart}\label{wxrichtextctrlmovetolinestart}
1004
1005 \func{bool}{MoveToLineStart}{\param{int }{flags = 0}}
1006
1007 Moves to the start of the line.
1008
1009 \membersection{wxRichTextCtrl::MoveToParagraphEnd}\label{wxrichtextctrlmovetoparagraphend}
1010
1011 \func{bool}{MoveToParagraphEnd}{\param{int }{flags = 0}}
1012
1013 Moves to the end of the paragraph.
1014
1015 \membersection{wxRichTextCtrl::MoveToParagraphStart}\label{wxrichtextctrlmovetoparagraphstart}
1016
1017 \func{bool}{MoveToParagraphStart}{\param{int }{flags = 0}}
1018
1019 Moves to the start of the paragraph.
1020
1021 \membersection{wxRichTextCtrl::MoveUp}\label{wxrichtextctrlmoveup}
1022
1023 \func{bool}{MoveUp}{\param{int }{noLines = 1}, \param{int }{flags = 0}}
1024
1025 Moves up.
1026
1027 \membersection{wxRichTextCtrl::Newline}\label{wxrichtextctrlnewline}
1028
1029 \func{bool}{Newline}{\void}
1030
1031 Inserts a new paragraph at the current insertion point. See also \helpref{wxRichTextCtrl::LineBreak}{wxrichtextctrllinebreak}.
1032
1033 \membersection{wxRichTextCtrl::NumberList}\label{wxrichtextctrlnumberlist}
1034
1035 \func{bool}{NumberList}{\param{const wxRichTextRange\& }{range}, \param{const wxRichTextListStyleDefinition* }{style}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}, \param{int}{ startFrom = -1}, \param{int}{ listLevel = -1}}
1036
1037 \func{bool}{Number}{\param{const wxRichTextRange\& }{range}, \param{const wxString\& }{styleName}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}, \param{int}{ startFrom = -1}, \param{int}{ listLevel = -1}}
1038
1039 Numbers the paragraphs in the given range. Pass flags to determine how the attributes are set.
1040 Either the style definition or the name of the style definition (in the current sheet) can be passed.
1041
1042 {\it flags} is a bit list of the following:
1043
1044 \begin{itemize}\itemsep=0pt
1045 \item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
1046 \item wxRICHTEXT\_SETSTYLE\_RENUMBER: specifies that numbering should start from {\it startFrom}, otherwise existing attributes are used.
1047 \item wxRICHTEXT\_SETSTYLE\_SPECIFY\_LEVEL: specifies that {\it listLevel} should be used as the level for all paragraphs, otherwise the current indentation will be used.
1048 \end{itemize}
1049
1050 See also \helpref{wxRichTextCtrl::SetListStyle}{wxrichtextctrlsetliststyle}, \helpref{wxRichTextCtrl::PromoteList}{wxrichtextctrlpromotelist}, \helpref{wxRichTextCtrl::ClearListStyle}{wxrichtextctrlclearliststyle}.
1051
1052 \membersection{wxRichTextCtrl::OnClear}\label{wxrichtextctrlonclear}
1053
1054 \func{void}{OnClear}{\param{wxCommandEvent\& }{event}}
1055
1056 Standard handler for the wxID\_CLEAR command.
1057
1058 \membersection{wxRichTextCtrl::OnContextMenu}\label{wxrichtextctrloncontextmenu}
1059
1060 \func{void}{OnContextMenu}{\param{wxContextMenuEvent\& }{event}}
1061
1062 Shows a standard context menu with undo, redo, cut, copy, paste, clear, and select all commands.
1063
1064 \membersection{wxRichTextCtrl::OnCopy}\label{wxrichtextctrloncopy}
1065
1066 \func{void}{OnCopy}{\param{wxCommandEvent\& }{event}}
1067
1068 Standard handler for the wxID\_COPY command.
1069
1070 \membersection{wxRichTextCtrl::OnCut}\label{wxrichtextctrloncut}
1071
1072 \func{void}{OnCut}{\param{wxCommandEvent\& }{event}}
1073
1074 Standard handler for the wxID\_CUT command.
1075
1076 \membersection{wxRichTextCtrl::OnDropFiles}\label{wxrichtextctrlondropfiles}
1077
1078 \func{void}{OnDropFiles}{\param{wxDropFilesEvent\& }{event}}
1079
1080 Loads the first dropped file.
1081
1082 \membersection{wxRichTextCtrl::OnPaste}\label{wxrichtextctrlonpaste}
1083
1084 \func{void}{OnPaste}{\param{wxCommandEvent\& }{event}}
1085
1086 Standard handler for the wxID\_PASTE command.
1087
1088 \membersection{wxRichTextCtrl::OnRedo}\label{wxrichtextctrlonredo}
1089
1090 \func{void}{OnRedo}{\param{wxCommandEvent\& }{event}}
1091
1092 Standard handler for the wxID\_REDO command.
1093
1094 \membersection{wxRichTextCtrl::OnSelectAll}\label{wxrichtextctrlonselectall}
1095
1096 \func{void}{OnSelectAll}{\param{wxCommandEvent\& }{event}}
1097
1098 Standard handler for the wxID\_SELECTALL command.
1099
1100 \membersection{wxRichTextCtrl::OnUndo}\label{wxrichtextctrlonundo}
1101
1102 \func{void}{OnUndo}{\param{wxCommandEvent\& }{event}}
1103
1104 Standard handler for the wxID\_PASTE command.
1105
1106 \membersection{wxRichTextCtrl::OnUpdateClear}\label{wxrichtextctrlonupdateclear}
1107
1108 \func{void}{OnUpdateClear}{\param{wxUpdateUIEvent\& }{event}}
1109
1110 Standard update handler for the wxID\_CLEAR command.
1111
1112 \membersection{wxRichTextCtrl::OnUpdateCopy}\label{wxrichtextctrlonupdatecopy}
1113
1114 \func{void}{OnUpdateCopy}{\param{wxUpdateUIEvent\& }{event}}
1115
1116 Standard update handler for the wxID\_COPY command.
1117
1118 \membersection{wxRichTextCtrl::OnUpdateCut}\label{wxrichtextctrlonupdatecut}
1119
1120 \func{void}{OnUpdateCut}{\param{wxUpdateUIEvent\& }{event}}
1121
1122 Standard update handler for the wxID\_CUT command.
1123
1124 \membersection{wxRichTextCtrl::OnUpdatePaste}\label{wxrichtextctrlonupdatepaste}
1125
1126 \func{void}{OnUpdatePaste}{\param{wxUpdateUIEvent\& }{event}}
1127
1128 Standard update handler for the wxID\_PASTE command.
1129
1130 \membersection{wxRichTextCtrl::OnUpdateRedo}\label{wxrichtextctrlonupdateredo}
1131
1132 \func{void}{OnUpdateRedo}{\param{wxUpdateUIEvent\& }{event}}
1133
1134 Standard update handler for the wxID\_REDO command.
1135
1136 \membersection{wxRichTextCtrl::OnUpdateSelectAll}\label{wxrichtextctrlonupdateselectall}
1137
1138 \func{void}{OnUpdateSelectAll}{\param{wxUpdateUIEvent\& }{event}}
1139
1140 Standard update handler for the wxID\_SELECTALL command.
1141
1142 \membersection{wxRichTextCtrl::OnUpdateUndo}\label{wxrichtextctrlonupdateundo}
1143
1144 \func{void}{OnUpdateUndo}{\param{wxUpdateUIEvent\& }{event}}
1145
1146 Standard update handler for the wxID\_UNDO command.
1147
1148 \membersection{wxRichTextCtrl::PageDown}\label{wxrichtextctrlpagedown}
1149
1150 \func{bool}{PageDown}{\param{int }{noPages = 1}, \param{int }{flags = 0}}
1151
1152 Moves one or more pages down.
1153
1154 \membersection{wxRichTextCtrl::PageUp}\label{wxrichtextctrlpageup}
1155
1156 \func{bool}{PageUp}{\param{int }{noPages = 1}, \param{int }{flags = 0}}
1157
1158 Moves one or more pages up.
1159
1160 \membersection{wxRichTextCtrl::PaintBackground}\label{wxrichtextctrlpaintbackground}
1161
1162 \func{void}{PaintBackground}{\param{wxDC\& }{dc}}
1163
1164 Paints the background.
1165
1166 \membersection{wxRichTextCtrl::Paste}\label{wxrichtextctrlpaste}
1167
1168 \func{void}{Paste}{\void}
1169
1170 Pastes content from the clipboard to the buffer.
1171
1172 \membersection{wxRichTextCtrl::PositionCaret}\label{wxrichtextctrlpositioncaret}
1173
1174 \func{void}{PositionCaret}{\void}
1175
1176 Internal function to position the visible caret according to the current caret position.
1177
1178 \membersection{wxRichTextCtrl::PositionToXY}\label{wxrichtextctrlpositiontoxy}
1179
1180 \constfunc{bool}{PositionToXY}{\param{long }{pos}, \param{long* }{x}, \param{long* }{y}}
1181
1182 Converts a text position to zero-based column and line numbers.
1183
1184 \membersection{wxRichTextCtrl::PromoteList}\label{wxrichtextctrlpromotelist}
1185
1186 \func{bool}{PromoteList}{\param{int}{ promoteBy}, \param{const wxRichTextRange\& }{range}, \param{const wxRichTextListStyleDefinition* }{style}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}, \param{int}{ listLevel = -1}}
1187
1188 \func{bool}{PromoteList}{\param{int}{ promoteBy}, \param{const wxRichTextRange\& }{range}, \param{const wxString\& }{styleName}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}, \param{int}{ listLevel = -1}}
1189
1190 Promotes or demotes the paragraphs in the given range. A positive {\it promoteBy} produces a smaller indent, and a negative number
1191 produces a larger indent. Pass flags to determine how the attributes are set.
1192 Either the style definition or the name of the style definition (in the current sheet) can be passed.
1193
1194 {\it flags} is a bit list of the following:
1195
1196 \begin{itemize}\itemsep=0pt
1197 \item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
1198 \item wxRICHTEXT\_SETSTYLE\_RENUMBER: specifies that numbering should start from {\it startFrom}, otherwise existing attributes are used.
1199 \item wxRICHTEXT\_SETSTYLE\_SPECIFY\_LEVEL: specifies that {\it listLevel} should be used as the level for all paragraphs, otherwise the current indentation will be used.
1200 \end{itemize}
1201
1202 See also \helpref{wxRichTextCtrl::SetListStyle}{wxrichtextctrlsetliststyle}, See also \helpref{wxRichTextCtrl::SetListStyle}{wxrichtextctrlnumberlist}, \helpref{wxRichTextCtrl::ClearListStyle}{wxrichtextctrlclearliststyle}.
1203
1204 \membersection{wxRichTextCtrl::Redo}\label{wxrichtextctrlredo}
1205
1206 \func{void}{Redo}{\void}
1207
1208 Redoes the current command.
1209
1210 \membersection{wxRichTextCtrl::Remove}\label{wxrichtextctrlremove}
1211
1212 \func{void}{Remove}{\param{long }{from}, \param{long }{to}}
1213
1214 Removes the content in the specified range.
1215
1216 \membersection{wxRichTextCtrl::Replace}\label{wxrichtextctrlreplace}
1217
1218 \func{void}{Replace}{\param{long }{from}, \param{long }{to}, \param{const wxString\& }{value}}
1219
1220 Replaces the content in the specified range with the string specified by {\it value}.
1221
1222 \membersection{wxRichTextCtrl::SaveFile}\label{wxrichtextctrlsavefile}
1223
1224 \func{bool}{SaveFile}{\param{const wxString\& }{file = wxEmptyString}, \param{int }{type = wxRICHTEXT\_TYPE\_ANY}}
1225
1226 Saves the buffer content using the given type. If the specified type
1227 is wxRICHTEXT\_TYPE\_ANY, the type is deduced from the filename extension.
1228
1229 This function looks for a suitable \helpref{wxRichTextFileHandler}{wxrichtextfilehandler} object.
1230
1231 \membersection{wxRichTextCtrl::ScrollIntoView}\label{wxrichtextctrlscrollintoview}
1232
1233 \func{bool}{ScrollIntoView}{\param{long }{position}, \param{int }{keyCode}}
1234
1235 Scrolls {\it position} into view. This function takes a caret position.
1236
1237 \membersection{wxRichTextCtrl::SelectAll}\label{wxrichtextctrlselectall}
1238
1239 \func{void}{SelectAll}{\void}
1240
1241 Selects all the text in the buffer.
1242
1243 \membersection{wxRichTextCtrl::SelectNone}\label{wxrichtextctrlselectnone}
1244
1245 \func{void}{SelectNone}{\void}
1246
1247 Cancels any selection.
1248
1249 \membersection{wxRichTextCtrl::SetAndShowDefaultStyle}\label{wxrichtextctrlsetandshowdefaultstyle}
1250
1251 \func{void}{SetAndShowDefaultStyle}{\param{const wxRichTextAttr\& }{attr}}
1252
1253 Sets {\it attr} as the default style and tells the control that the UI should reflect
1254 this attribute until the user moves the caret.
1255
1256 See also \helpref{IsDefaultStyleShowing}{wxrichtextctrlisdefaultstyleshowing}.
1257
1258 \membersection{wxRichTextCtrl::SetBasicStyle}\label{wxrichtextctrlsetbasicstyle}
1259
1260 \func{void}{SetBasicStyle}{\param{const wxRichTextAttr\& }{style}}
1261
1262 \func{void}{SetBasicStyle}{\param{const wxTextAttrEx\& }{style}}
1263
1264 Sets the basic (overall) style. This is the style of the whole
1265 buffer before further styles are applied, unlike the default style, which
1266 only affects the style currently being applied (for example, setting the default
1267 style to bold will cause subsequently inserted text to be bold).
1268
1269 \membersection{wxRichTextCtrl::SetCaretPosition}\label{wxrichtextctrlsetcaretposition}
1270
1271 \func{void}{SetCaretPosition}{\param{long }{position}, \param{bool }{showAtLineStart = false}}
1272
1273 The caret position is the character position just before the caret.
1274 A value of -1 means the caret is at the start of the buffer.
1275
1276 \membersection{wxRichTextCtrl::SetDefaultStyle}\label{wxrichtextctrlsetdefaultstyle}
1277
1278 \func{bool}{SetDefaultStyle}{\param{const wxTextAttrEx\& }{style}}
1279
1280 Sets the current default style, which can be used to change how subsequently inserted
1281 text is displayed.
1282
1283 \membersection{wxRichTextCtrl::SetDefaultStyleToCursorStyle}\label{wxrichtextctrlsetdefaultstyletocursorstyle}
1284
1285 \func{bool}{SetDefaultStyleToCursorStyle}{\void}
1286
1287 Sets the default style to the style under the cursor.
1288
1289 \membersection{wxRichTextCtrl::SetDelayedLayoutThreshold}\label{wxrichtextctrlsetdelayedlayoutthreshold}
1290
1291 \func{void}{SetDelayedLayoutThreshold}{\param{long }{threshold}}
1292
1293 Sets the size of the buffer beyond which layout is delayed during resizing.
1294 This optimizes sizing for large buffers. The default is 20000.
1295
1296 \membersection{wxRichTextCtrl::SetEditable}\label{wxrichtextctrlseteditable}
1297
1298 \func{void}{SetEditable}{\param{bool }{editable}}
1299
1300 Makes the control editable, or not.
1301
1302 \membersection{wxRichTextCtrl::SetFilename}\label{wxrichtextctrlsetfilename}
1303
1304 \func{void}{SetFilename}{\param{const wxString\& }{filename}}
1305
1306 Sets the current filename.
1307
1308 \membersection{wxRichTextCtrl::SetFont}\label{wxrichtextctrlsetfont}
1309
1310 \func{bool}{SetFont}{\param{const wxFont\& }{font}}
1311
1312 Sets the font, and also the basic and default attributes (see \helpref{SetDefaultStyle}{wxrichtextctrlsetdefaultstyle}).
1313
1314 \membersection{wxRichTextCtrl::SetHandlerFlags}\label{wxrichtextctrlsethandlerflags}
1315
1316 \func{void}{SetHandlerFlags}{\param{int }{flags}}
1317
1318 Sets flags that change the behaviour of loading or saving. See the documentation for each
1319 handler class to see what flags are relevant for each handler.
1320
1321 \membersection{wxRichTextCtrl::SetInsertionPoint}\label{wxrichtextctrlsetinsertionpoint}
1322
1323 \func{void}{SetInsertionPoint}{\param{long }{pos}}
1324
1325 Sets the insertion point.
1326
1327 \membersection{wxRichTextCtrl::SetInsertionPointEnd}\label{wxrichtextctrlsetinsertionpointend}
1328
1329 \func{void}{SetInsertionPointEnd}{\void}
1330
1331 Sets the insertion point to the end of the text control.
1332
1333 \membersection{wxRichTextCtrl::SetListStyle}\label{wxrichtextctrlsetliststyle}
1334
1335 \func{bool}{SetListStyle}{\param{const wxRichTextRange\& }{range}, \param{const wxRichTextListStyleDefinition* }{style}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}, \param{int}{ startFrom = -1}, \param{int}{ listLevel = -1}}
1336
1337 \func{bool}{SetListStyle}{\param{const wxRichTextRange\& }{range}, \param{const wxString\& }{styleName}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}, \param{int}{ startFrom = -1}, \param{int}{ listLevel = -1}}
1338
1339 Sets the list attributes for the given range, passing flags to determine how the attributes are set.
1340 Either the style definition or the name of the style definition (in the current sheet) can be passed.
1341
1342 {\it flags} is a bit list of the following:
1343
1344 \begin{itemize}\itemsep=0pt
1345 \item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
1346 \item wxRICHTEXT\_SETSTYLE\_RENUMBER: specifies that numbering should start from {\it startFrom}, otherwise existing attributes are used.
1347 \item wxRICHTEXT\_SETSTYLE\_SPECIFY\_LEVEL: specifies that {\it listLevel} should be used as the level for all paragraphs, otherwise the current indentation will be used.
1348 \end{itemize}
1349
1350 See also \helpref{wxRichTextCtrl::NumberList}{wxrichtextctrlnumberlist}, \helpref{wxRichTextCtrl::PromoteList}{wxrichtextctrlpromotelist}, \helpref{wxRichTextCtrl::ClearListStyle}{wxrichtextctrlclearliststyle}.
1351
1352 \membersection{wxRichTextCtrl::SetSelection}\label{wxrichtextctrlsetselection}
1353
1354 \func{void}{SetSelection}{\param{long }{from}, \param{long }{to}}
1355
1356 Sets the selection to the given range.
1357
1358 The end point of range is specified as the last character position of the span of text, plus one.
1359 So, for example, to set the style for a character at position 5, use the range (5,6).
1360
1361 \membersection{wxRichTextCtrl::SetSelectionRange}\label{wxrichtextctrlsetselectionrange}
1362
1363 \func{void}{SetSelectionRange}{\param{const wxRichTextRange\& }{range}}
1364
1365 Sets the selection to the given range.
1366
1367 The end point of range is specified as the last character position of the span of text, plus one.
1368 So, for example, to set the style for a character at position 5, use the range (5,6).
1369
1370 \membersection{wxRichTextCtrl::SetStyle}\label{wxrichtextctrlsetstyle}
1371
1372 \func{bool}{SetStyle}{\param{const wxRichTextRange\& }{range}, \param{const wxRichTextAttr\& }{style}}
1373
1374 \func{bool}{SetStyle}{\param{long }{start}, \param{long }{end}, \param{const wxTextAttrEx\& }{style}}
1375
1376 \func{bool}{SetStyle}{\param{long }{start}, \param{long }{end}, \param{const wxTextAttr\& }{style}}
1377
1378 Sets the attributes for the given range. The wxRichTextAttr version is more efficient
1379 because it does not use wxFont objects.
1380
1381 The end point of range is specified as the last character position of the span of text, plus one.
1382 So, for example, to set the style for a character at position 5, use the range (5,6).
1383
1384 \membersection{wxRichTextCtrl::SetStyleEx}\label{wxrichtextctrlsetstyleex}
1385
1386 \func{bool}{SetStyleEx}{\param{const wxRichTextRange\& }{range}, \param{const wxRichTextAttr\& }{style}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}}
1387
1388 \func{bool}{SetStyleEx}{\param{const wxRichTextRange\& }{range}, \param{const wxTextAttrEx\& }{style}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}}
1389
1390 \func{bool}{SetStyleEx}{\param{long }{start}, \param{long }{end}, \param{const wxTextAttrEx\& }{style}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}}
1391
1392 Sets the attributes for the given range, passing flags to determine how the attributes are set. The wxRichTextAttr version is more efficient
1393 because it does not use wxFont objects.
1394
1395 The end point of range is specified as the last character position of the span of text, plus one.
1396 So, for example, to set the style for a character at position 5, use the range (5,6).
1397
1398 {\it flags} may contain a bit list of the following values:
1399
1400 \begin{itemize}\itemsep=0pt
1401 \item wxRICHTEXT\_SETSTYLE\_NONE: no style flag.
1402 \item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this operation should be undoable.
1403 \item wxRICHTEXT\_SETSTYLE\_OPTIMIZE: specifies that the style should not be applied if the
1404 combined style at this point is already the style in question.
1405 \item wxRICHTEXT\_SETSTYLE\_PARAGRAPHS\_ONLY: specifies that the style should only be applied to paragraphs,
1406 and not the content. This allows content styling to be preserved independently from that of e.g. a named paragraph style.
1407 \item wxRICHTEXT\_SETSTYLE\_CHARACTERS\_ONLY: specifies that the style should only be applied to characters,
1408 and not the paragraph. This allows content styling to be preserved independently from that of e.g. a named paragraph style.
1409 \item wxRICHTEXT\_SETSTYLE\_RESET: resets (clears) the existing style before applying the new style.
1410 \end{itemize}
1411
1412 \membersection{wxRichTextCtrl::SetStyleSheet}\label{wxrichtextctrlsetstylesheet}
1413
1414 \func{void}{SetStyleSheet}{\param{wxRichTextStyleSheet* }{styleSheet}}
1415
1416 Sets the style sheet associated with the control. A style sheet allows named
1417 character and paragraph styles to be applied.
1418
1419 \membersection{wxRichTextCtrl::SetValue}\label{wxrichtextctrlsetvalue}
1420
1421 \func{void}{SetValue}{\param{const wxString\& }{value}}
1422
1423 Replaces existing content with the given text.
1424
1425 \membersection{wxRichTextCtrl::SetupScrollbars}\label{wxrichtextctrlsetupscrollbars}
1426
1427 \func{void}{SetupScrollbars}{\param{bool }{atTop = false}}
1428
1429 A helper function setting up scrollbars, for example after a resize.
1430
1431 \membersection{wxRichTextCtrl::ShowPosition}\label{wxrichtextctrlshowposition}
1432
1433 \func{void}{ShowPosition}{\param{long }{pos}}
1434
1435 Scrolls the buffer so that the given position is in view.
1436
1437 \membersection{wxRichTextCtrl::SuppressingUndo}\label{wxrichtextctrlsuppressingundo}
1438
1439 \constfunc{bool}{SuppressingUndo}{\void}
1440
1441 Returns \true if undo history suppression is on.
1442
1443 \membersection{wxRichTextCtrl::Thaw}\label{wxrichtextctrlthaw}
1444
1445 \func{void}{Thaw}{\void}
1446
1447 Call this function to end a Freeze and refresh the display.
1448
1449 \membersection{wxRichTextCtrl::Undo}\label{wxrichtextctrlundo}
1450
1451 \func{void}{Undo}{\void}
1452
1453 Undoes the command at the top of the command history, if there is one.
1454
1455 \membersection{wxRichTextCtrl::WordLeft}\label{wxrichtextctrlwordleft}
1456
1457 \func{bool}{WordLeft}{\param{int }{noWords = 1}, \param{int }{flags = 0}}
1458
1459 Moves a number of words to the left.
1460
1461 \membersection{wxRichTextCtrl::WordRight}\label{wxrichtextctrlwordright}
1462
1463 \func{bool}{WordRight}{\param{int }{noWords = 1}, \param{int }{flags = 0}}
1464
1465 Move a nuber of words to the right.
1466
1467 \membersection{wxRichTextCtrl::WriteImage}\label{wxrichtextctrlwriteimage}
1468
1469 \func{bool}{WriteImage}{\param{const wxString\& }{filename}, \param{int }{bitmapType}}
1470
1471 Loads an image from a file and writes it at the current insertion point.
1472
1473 \func{bool}{WriteImage}{\param{const wxRichTextImageBlock\& }{imageBlock}}
1474
1475 Writes an image block at the current insertion point.
1476
1477 \func{bool}{WriteImage}{\param{const wxBitmap\& }{bitmap}, \param{int }{bitmapType = wxBITMAP\_TYPE\_PNG}}
1478
1479 \func{bool}{WriteImage}{\param{const wxImage\& }{image}, \param{int }{bitmapType = wxBITMAP\_TYPE\_PNG}}
1480
1481 Write a bitmap or image at the current insertion point. Supply an optional type to use
1482 for internal and file storage of the raw data.
1483
1484 \membersection{wxRichTextCtrl::WriteText}\label{wxrichtextctrlwritetext}
1485
1486 \func{void}{WriteText}{\param{const wxString\& }{text}}
1487
1488 Writes text at the current position.
1489
1490 \membersection{wxRichTextCtrl::XYToPosition}\label{wxrichtextctrlxytoposition}
1491
1492 \constfunc{long}{XYToPosition}{\param{long }{x}, \param{long }{y}}
1493
1494 Translates from column and line number to position.
1495