From 62f4313b72a110a7a1afdbc34f7aaa755f995828 Mon Sep 17 00:00:00 2001
From: Julian Smart <julian@anthemion.co.uk>
Date: Sat, 28 Oct 2006 10:49:30 +0000
Subject: [PATCH] Documented wxRichTextBuffer printing

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
---
 docs/latex/wx/classes.tex                     |   3 +
 docs/latex/wx/richtextbuffer.tex              | 140 ++++++++++----
 docs/latex/wx/richtextctrl.tex                | 130 ++++++++++---
 docs/latex/wx/richtextheaderfooterdata.tex    | 175 ++++++++++++++++++
 docs/latex/wx/richtextliststyledefinition.tex |   2 +-
 docs/latex/wx/richtextoverview.tex            |   3 +
 docs/latex/wx/richtextprinting.tex            | 158 ++++++++++++++++
 docs/latex/wx/richtextprintout.tex            |  84 +++++++++
 8 files changed, 629 insertions(+), 66 deletions(-)
 create mode 100644 docs/latex/wx/richtextheaderfooterdata.tex
 create mode 100644 docs/latex/wx/richtextprinting.tex
 create mode 100644 docs/latex/wx/richtextprintout.tex

diff --git a/docs/latex/wx/classes.tex b/docs/latex/wx/classes.tex
index c72f796621..67d99fc7f0 100644
--- a/docs/latex/wx/classes.tex
+++ b/docs/latex/wx/classes.tex
@@ -309,9 +309,12 @@
 \input richtextevent.tex
 \input richtextfilehandler.tex
 \input richtextformattingdialog.tex
+\input richtextheaderfooterdata.tex
 \input richtexthtmlhandler.tex
 \input richtextliststyledefinition.tex
 \input richtextparagraphstyledefinition.tex
+\input richtextprinting.tex
+\input richtextprintout.tex
 \input richtextrange.tex
 \input richtextstyledefinition.tex
 \input richtextstylelistbox.tex
diff --git a/docs/latex/wx/richtextbuffer.tex b/docs/latex/wx/richtextbuffer.tex
index 0ae9c7581a..b0a57a1313 100644
--- a/docs/latex/wx/richtextbuffer.tex
+++ b/docs/latex/wx/richtextbuffer.tex
@@ -160,16 +160,22 @@ application should take care of incrementing the numbering.
 
 {\small
 \begin{verbatim}
-#define wxTEXT_ATTR_BULLET_STYLE_NONE           0x0000
-#define wxTEXT_ATTR_BULLET_STYLE_ARABIC         0x0001
-#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_UPPER  0x0002
-#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_LOWER  0x0004
-#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_UPPER    0x0008
-#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_LOWER    0x0010
-#define wxTEXT_ATTR_BULLET_STYLE_SYMBOL         0x0020
-#define wxTEXT_ATTR_BULLET_STYLE_BITMAP         0x0040
-#define wxTEXT_ATTR_BULLET_STYLE_PARENTHESES    0x0080
-#define wxTEXT_ATTR_BULLET_STYLE_PERIOD         0x0100
+#define wxTEXT_ATTR_BULLET_STYLE_NONE               0x00000000
+#define wxTEXT_ATTR_BULLET_STYLE_ARABIC             0x00000001
+#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_UPPER      0x00000002
+#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_LOWER      0x00000004
+#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_UPPER        0x00000008
+#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_LOWER        0x00000010
+#define wxTEXT_ATTR_BULLET_STYLE_SYMBOL             0x00000020
+#define wxTEXT_ATTR_BULLET_STYLE_BITMAP             0x00000040
+#define wxTEXT_ATTR_BULLET_STYLE_PARENTHESES        0x00000080
+#define wxTEXT_ATTR_BULLET_STYLE_PERIOD             0x00000100
+#define wxTEXT_ATTR_BULLET_STYLE_STANDARD           0x00000200
+#define wxTEXT_ATTR_BULLET_STYLE_RIGHT_PARENTHESIS  0x00000400
+#define wxTEXT_ATTR_BULLET_STYLE_OUTLINE            0x00000800
+#define wxTEXT_ATTR_BULLET_STYLE_ALIGN_LEFT         0x00000000
+#define wxTEXT_ATTR_BULLET_STYLE_ALIGN_RIGHT        0x00001000
+#define wxTEXT_ATTR_BULLET_STYLE_ALIGN_CENTRE       0x00002000
 \end{verbatim}
 }
 
@@ -261,7 +267,23 @@ Cleans up the file handlers.
 
 \func{void}{Clear}{\void}
 
-Clears the buffer and resets the command processor.
+Clears the buffer.
+
+\membersection{wxRichTextBuffer::ClearListStyle}\label{wxrichtextbufferclearliststyle}
+
+\func{bool}{ClearListStyle}{\param{const wxRichTextRange\& }{range}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}}
+
+\func{bool}{ClearListStyle}{\param{const wxRichTextRange\& }{range}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}}
+
+Clears the list style from the given range, clearing list-related attributes and applying any named paragraph style associated with each paragraph.
+
+{\it flags} is a bit list of the following:
+
+\begin{itemize}\itemsep=0pt
+\item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
+\end{itemize}
+
+See also \helpref{wxRichTextBuffer::SetListStyle}{wxrichtextbuffersetliststyle}, \helpref{wxRichTextBuffer::PromoteList}{wxrichtextbufferpromotelist}, \helpref{wxRichTextBuffer::NumberList}{wxrichtextbuffernumberlist}.
 
 \membersection{wxRichTextBuffer::ClearStyleStack}\label{wxrichtextbufferclearstylestack}
 
@@ -646,12 +668,51 @@ Loads content from a file.
 
 Marks the buffer as modified or unmodified.
 
+\membersection{wxRichTextBuffer::NumberList}\label{wxrichtextbuffernumberlist}
+
+\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}}
+
+\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}}
+
+Numbers the paragraphs in the given range. Pass flags to determine how the attributes are set.
+Either the style definition or the name of the style definition (in the current sheet) can be passed.
+
+{\it flags} is a bit list of the following:
+
+\begin{itemize}\itemsep=0pt
+\item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
+\item wxRICHTEXT\_SETSTYLE\_RENUMBER: specifies that numbering should start from {\it startFrom}, otherwise existing attributes are used.
+\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.
+\end{itemize}
+
+See also \helpref{wxRichTextBuffer::SetListStyle}{wxrichtextbuffersetliststyle}, \helpref{wxRichTextBuffer::PromoteList}{wxrichtextbufferpromotelist}, \helpref{wxRichTextBuffer::ClearListStyle}{wxrichtextbufferclearliststyle}.
+
 \membersection{wxRichTextBuffer::PasteFromClipboard}\label{wxrichtextbufferpastefromclipboard}
 
 \func{bool}{PasteFromClipboard}{\param{long }{position}}
 
 Pastes the clipboard content to the buffer at the given position.
 
+\membersection{wxRichTextBuffer::PromoteList}\label{wxrichtextbufferpromotelist}
+
+\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}}
+
+\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}}
+
+Promotes or demotes the paragraphs in the given range. A positive {\it promoteBy} produces a smaller indent, and a negative number
+produces a larger indent. Pass flags to determine how the attributes are set.
+Either the style definition or the name of the style definition (in the current sheet) can be passed.
+
+{\it flags} is a bit list of the following:
+
+\begin{itemize}\itemsep=0pt
+\item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
+\item wxRICHTEXT\_SETSTYLE\_RENUMBER: specifies that numbering should start from {\it startFrom}, otherwise existing attributes are used.
+\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.
+\end{itemize}
+
+See also \helpref{wxRichTextBuffer::SetListStyle}{wxrichtextbuffersetliststyle}, See also \helpref{wxRichTextBuffer::SetListStyle}{wxrichtextbuffernumberlist}, \helpref{wxRichTextBuffer::ClearListStyle}{wxrichtextbufferclearliststyle}.
+
 \membersection{wxRichTextBuffer::RemoveEventHandler}\label{wxrichtextbufferremoveeventhandler}
 
 \func{bool}{RemoveEventHandler}{\param{wxEvtHandler* }{handler}, \param{bool}{ deleteHandler = false}}
@@ -664,11 +725,11 @@ Removes an event handler from the buffer's list of handlers, deleting the object
 
 Removes a handler.
 
-\membersection{wxRichTextBuffer::Reset}\label{wxrichtextbufferreset}
+\membersection{wxRichTextBuffer::ResetAndClearCommands}\label{wxrichtextbufferresetandclearcommands}
 
-\func{void}{Reset}{\void}
+\func{void}{ResetAndClearCommands}{\void}
 
-The same as \helpref{Clear}{wxrichtextbufferclear}, plus an empty paragraph is added.
+Clears the buffer, adds a new blank paragraph, and clears the command history.
 
 \membersection{wxRichTextBuffer::SaveFile}\label{wxrichtextbuffersavefile}
 
@@ -700,6 +761,25 @@ style to bold will cause subsequently inserted text to be bold).
 
 This is not cumulative - setting the default style will replace the previous default style.
 
+\membersection{wxRichTextBuffer::SetListStyle}\label{wxrichtextbuffersetliststyle}
+
+\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}}
+
+\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}}
+
+Sets the list attributes for the given range, passing flags to determine how the attributes are set.
+Either the style definition or the name of the style definition (in the current sheet) can be passed.
+
+{\it flags} is a bit list of the following:
+
+\begin{itemize}\itemsep=0pt
+\item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
+\item wxRICHTEXT\_SETSTYLE\_RENUMBER: specifies that numbering should start from {\it startFrom}, otherwise existing attributes are used.
+\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.
+\end{itemize}
+
+See also \helpref{wxRichTextBuffer::NumberList}{wxrichtextbuffernumberlist}, \helpref{wxRichTextBuffer::PromoteList}{wxrichtextbufferpromotelist}, \helpref{wxRichTextBuffer::ClearListStyle}{wxrichtextbufferclearliststyle}.
+
 \membersection{wxRichTextBuffer::SetRenderer}\label{wxrichtextbuffersetrenderer}
 
 \func{static void}{SetRenderer}{\param{wxRichTextRenderer* }{renderer}}
@@ -714,7 +794,7 @@ overriding one or more virtual functions, and setting an instance of the class u
 
 \func{bool}{SetStyle}{\param{const wxRichTextRange\& }{range}, \param{const wxTextAttrEx\& }{style}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}}
 
-Sets the attributes for the given range, passing flags to determine how the attributes are set.
+Sets the attributes for the given range. Pass flags to determine how the attributes are set.
 
 The end point of range is specified as the last character position of the span of text.
 So, for example, to set the style for a character at position 5, use the range (5,5).
@@ -722,26 +802,16 @@ This differs from the wxRichTextCtrl API, where you would specify (5,6).
 
 {\it flags} may contain a bit list of the following values:
 
-\begin{verbatim}
-#define wxRICHTEXT_SETSTYLE_NONE            0x00
-
-// Specifies that this operation should be undoable
-#define wxRICHTEXT_SETSTYLE_WITH_UNDO       0x01
-
-// Specifies that the style should not be applied if the
-// combined style at this point is already the style in question.
-#define wxRICHTEXT_SETSTYLE_OPTIMIZE        0x02
-
-// Specifies that the style should only be applied to paragraphs,
-// and not the content. This allows content styling to be
-// preserved independently from that of e.g. a named paragraph style.
-#define wxRICHTEXT_SETSTYLE_PARAGRAPHS_ONLY 0x04
-
-// Specifies that the style should only be applied to characters,
-// and not the paragraph. This allows content styling to be
-// preserved independently from that of e.g. a named paragraph style.
-#define wxRICHTEXT_SETSTYLE_CHARACTERS_ONLY 0x08
-\end{verbatim}
+\begin{itemize}\itemsep=0pt
+\item wxRICHTEXT\_SETSTYLE\_NONE: no style flag.
+\item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this operation should be undoable.
+\item wxRICHTEXT\_SETSTYLE\_OPTIMIZE: specifies that the style should not be applied if the
+combined style at this point is already the style in question.
+\item define wxRICHTEXT\_SETSTYLE\_PARAGRAPHS\_ONLY: specifies that the style should only be applied to paragraphs,
+and not the content. This allows content styling to be preserved independently from that of e.g. a named paragraph style.
+\item wxRICHTEXT\_SETSTYLE\_CHARACTERS\_ONLY: specifies that the style should only be applied to characters,
+and not the paragraph. This allows content styling to be preserved independently from that of e.g. a named paragraph style.
+\end{itemize}
 
 \membersection{wxRichTextBuffer::SetStyleSheet}\label{wxrichtextbuffersetstylesheet}
 
diff --git a/docs/latex/wx/richtextctrl.tex b/docs/latex/wx/richtextctrl.tex
index d11e95794c..b3d4787647 100644
--- a/docs/latex/wx/richtextctrl.tex
+++ b/docs/latex/wx/richtextctrl.tex
@@ -192,16 +192,22 @@ application should take care of incrementing the numbering.
 
 {\small
 \begin{verbatim}
-#define wxTEXT_ATTR_BULLET_STYLE_NONE           0x0000
-#define wxTEXT_ATTR_BULLET_STYLE_ARABIC         0x0001
-#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_UPPER  0x0002
-#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_LOWER  0x0004
-#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_UPPER    0x0008
-#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_LOWER    0x0010
-#define wxTEXT_ATTR_BULLET_STYLE_SYMBOL         0x0020
-#define wxTEXT_ATTR_BULLET_STYLE_BITMAP         0x0040
-#define wxTEXT_ATTR_BULLET_STYLE_PARENTHESES    0x0080
-#define wxTEXT_ATTR_BULLET_STYLE_PERIOD         0x0100
+#define wxTEXT_ATTR_BULLET_STYLE_NONE               0x00000000
+#define wxTEXT_ATTR_BULLET_STYLE_ARABIC             0x00000001
+#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_UPPER      0x00000002
+#define wxTEXT_ATTR_BULLET_STYLE_LETTERS_LOWER      0x00000004
+#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_UPPER        0x00000008
+#define wxTEXT_ATTR_BULLET_STYLE_ROMAN_LOWER        0x00000010
+#define wxTEXT_ATTR_BULLET_STYLE_SYMBOL             0x00000020
+#define wxTEXT_ATTR_BULLET_STYLE_BITMAP             0x00000040
+#define wxTEXT_ATTR_BULLET_STYLE_PARENTHESES        0x00000080
+#define wxTEXT_ATTR_BULLET_STYLE_PERIOD             0x00000100
+#define wxTEXT_ATTR_BULLET_STYLE_STANDARD           0x00000200
+#define wxTEXT_ATTR_BULLET_STYLE_RIGHT_PARENTHESIS  0x00000400
+#define wxTEXT_ATTR_BULLET_STYLE_OUTLINE            0x00000800
+#define wxTEXT_ATTR_BULLET_STYLE_ALIGN_LEFT         0x00000000
+#define wxTEXT_ATTR_BULLET_STYLE_ALIGN_RIGHT        0x00001000
+#define wxTEXT_ATTR_BULLET_STYLE_ALIGN_CENTRE       0x00002000
 \end{verbatim}
 }
 
@@ -309,6 +315,22 @@ Returns \true if there is a command in the command history that can be undone.
 
 Clears the buffer content, leaving a single empty paragraph. Cannot be undone.
 
+\membersection{wxRichTextCtrl::ClearListStyle}\label{wxrichtextctrlclearliststyle}
+
+\func{bool}{ClearListStyle}{\param{const wxRichTextRange\& }{range}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}}
+
+\func{bool}{ClearListStyle}{\param{const wxRichTextRange\& }{range}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}}
+
+Clears the list style from the given range, clearing list-related attributes and applying any named paragraph style associated with each paragraph.
+
+{\it flags} is a bit list of the following:
+
+\begin{itemize}\itemsep=0pt
+\item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
+\end{itemize}
+
+See also \helpref{wxRichTextCtrl::SetListStyle}{wxrichtextctrlsetliststyle}, \helpref{wxRichTextCtrl::PromoteList}{wxrichtextctrlpromotelist}, \helpref{wxRichTextCtrl::NumberList}{wxrichtextctrlnumberlist}.
+
 \membersection{wxRichTextCtrl::Command}\label{wxrichtextctrlcommand}
 
 \func{void}{Command}{\param{wxCommandEvent\& }{event}}
@@ -968,6 +990,25 @@ Moves up.
 
 Insert a newline (actually paragraph) at the current insertion point.
 
+\membersection{wxRichTextCtrl::NumberList}\label{wxrichtextctrlnumberlist}
+
+\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}}
+
+\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}}
+
+Numbers the paragraphs in the given range. Pass flags to determine how the attributes are set.
+Either the style definition or the name of the style definition (in the current sheet) can be passed.
+
+{\it flags} is a bit list of the following:
+
+\begin{itemize}\itemsep=0pt
+\item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
+\item wxRICHTEXT\_SETSTYLE\_RENUMBER: specifies that numbering should start from {\it startFrom}, otherwise existing attributes are used.
+\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.
+\end{itemize}
+
+See also \helpref{wxRichTextCtrl::SetListStyle}{wxrichtextctrlsetliststyle}, \helpref{wxRichTextCtrl::PromoteList}{wxrichtextctrlpromotelist}, \helpref{wxRichTextCtrl::ClearListStyle}{wxrichtextctrlclearliststyle}.
+
 \membersection{wxRichTextCtrl::OnClear}\label{wxrichtextctrlonclear}
 
 \func{void}{OnClear}{\param{wxCommandEvent\& }{event}}
@@ -1100,6 +1141,26 @@ Internal function to position the visible caret according to the current caret p
 
 Converts a text position to zero-based column and line numbers.
 
+\membersection{wxRichTextCtrl::PromoteList}\label{wxrichtextctrlpromotelist}
+
+\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}}
+
+\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}}
+
+Promotes or demotes the paragraphs in the given range. A positive {\it promoteBy} produces a smaller indent, and a negative number
+produces a larger indent. Pass flags to determine how the attributes are set.
+Either the style definition or the name of the style definition (in the current sheet) can be passed.
+
+{\it flags} is a bit list of the following:
+
+\begin{itemize}\itemsep=0pt
+\item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
+\item wxRICHTEXT\_SETSTYLE\_RENUMBER: specifies that numbering should start from {\it startFrom}, otherwise existing attributes are used.
+\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.
+\end{itemize}
+
+See also \helpref{wxRichTextCtrl::SetListStyle}{wxrichtextctrlsetliststyle}, See also \helpref{wxRichTextCtrl::SetListStyle}{wxrichtextctrlnumberlist}, \helpref{wxRichTextCtrl::ClearListStyle}{wxrichtextctrlclearliststyle}.
+
 \membersection{wxRichTextCtrl::Redo}\label{wxrichtextctrlredo}
 
 \func{void}{Redo}{\void}
@@ -1222,6 +1283,25 @@ Sets the insertion point.
 
 Sets the insertion point to the end of the text control.
 
+\membersection{wxRichTextCtrl::SetListStyle}\label{wxrichtextctrlsetliststyle}
+
+\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}}
+
+\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}}
+
+Sets the list attributes for the given range, passing flags to determine how the attributes are set.
+Either the style definition or the name of the style definition (in the current sheet) can be passed.
+
+{\it flags} is a bit list of the following:
+
+\begin{itemize}\itemsep=0pt
+\item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this command will be undoable.
+\item wxRICHTEXT\_SETSTYLE\_RENUMBER: specifies that numbering should start from {\it startFrom}, otherwise existing attributes are used.
+\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.
+\end{itemize}
+
+See also \helpref{wxRichTextCtrl::NumberList}{wxrichtextctrlnumberlist}, \helpref{wxRichTextCtrl::PromoteList}{wxrichtextctrlpromotelist}, \helpref{wxRichTextCtrl::ClearListStyle}{wxrichtextctrlclearliststyle}.
+
 \membersection{wxRichTextCtrl::SetSelection}\label{wxrichtextctrlsetselection}
 
 \func{void}{SetSelection}{\param{long }{from}, \param{long }{to}}
@@ -1270,26 +1350,16 @@ So, for example, to set the style for a character at position 5, use the range (
 
 {\it flags} may contain a bit list of the following values:
 
-\begin{verbatim}
-#define wxRICHTEXT_SETSTYLE_NONE            0x00
-
-// Specifies that this operation should be undoable
-#define wxRICHTEXT_SETSTYLE_WITH_UNDO       0x01
-
-// Specifies that the style should not be applied if the
-// combined style at this point is already the style in question.
-#define wxRICHTEXT_SETSTYLE_OPTIMIZE        0x02
-
-// Specifies that the style should only be applied to paragraphs,
-// and not the content. This allows content styling to be
-// preserved independently from that of e.g. a named paragraph style.
-#define wxRICHTEXT_SETSTYLE_PARAGRAPHS_ONLY 0x04
-
-// Specifies that the style should only be applied to characters,
-// and not the paragraph. This allows content styling to be
-// preserved independently from that of e.g. a named paragraph style.
-#define wxRICHTEXT_SETSTYLE_CHARACTERS_ONLY 0x08
-\end{verbatim}
+\begin{itemize}\itemsep=0pt
+\item wxRICHTEXT\_SETSTYLE\_NONE: no style flag.
+\item wxRICHTEXT\_SETSTYLE\_WITH\_UNDO: specifies that this operation should be undoable.
+\item wxRICHTEXT\_SETSTYLE\_OPTIMIZE: specifies that the style should not be applied if the
+combined style at this point is already the style in question.
+\item define wxRICHTEXT\_SETSTYLE\_PARAGRAPHS\_ONLY: specifies that the style should only be applied to paragraphs,
+and not the content. This allows content styling to be preserved independently from that of e.g. a named paragraph style.
+\item wxRICHTEXT\_SETSTYLE\_CHARACTERS\_ONLY: specifies that the style should only be applied to characters,
+and not the paragraph. This allows content styling to be preserved independently from that of e.g. a named paragraph style.
+\end{itemize}
 
 \membersection{wxRichTextCtrl::SetStyleSheet}\label{wxrichtextctrlsetstylesheet}
 
diff --git a/docs/latex/wx/richtextheaderfooterdata.tex b/docs/latex/wx/richtextheaderfooterdata.tex
new file mode 100644
index 0000000000..b0f0fbe180
--- /dev/null
+++ b/docs/latex/wx/richtextheaderfooterdata.tex
@@ -0,0 +1,175 @@
+\section{\class{wxRichTextHeaderFooterData}}\label{wxrichtextheaderfooterdata}
+
+
+This class represents header and footer data to be passed to the \helpref{wxRichTextPrinting}{wxrichtextprinting} and
+\helpref{wxRichTextPrintout}{wxrichtextprintout} classes.
+
+Headers and footers can be specified independently for odd, even or both page sides. Different text can be specified
+for left, centre and right locations on the page, and the font and text colour can also
+be specified. You can specify the following keywords in header and footer text, which will
+be substituted for the actual values during printing and preview.
+
+\begin{itemize}\itemsep=0pt
+\item @DATE@: the current date.
+\item @PAGESCNT@: the total number of pages.
+\item @PAGENUM@: the current page number.
+\item @TIME@: the current time.
+\item @TITLE@: the title of the document, as passed to the wxRichTextPrinting or wxRichTextLayout constructor.
+\end{itemize}
+ 
+\wxheading{Derived from}
+
+\helpref{wxObject}{wxobject}
+
+\wxheading{Include files}
+
+<wx/richtex/richtextprint.h>
+
+\wxheading{Data structures}
+
+These are the header and footer page identifiers, passed to functions such as SetFooterText to specify
+the odd or even page for the text:
+
+\begin{verbatim}
+enum wxRichTextOddEvenPage {
+    wxRICHTEXT_PAGE_ODD,
+    wxRICHTEXT_PAGE_EVEN,
+    wxRICHTEXT_PAGE_ALL,
+}
+\end{verbatim}
+
+These are the location identifiers for passing to functions such as SetFooterText, to specify
+whether the text is on the left, centre or right of the page:
+
+\begin{verbatim}
+enum wxRichTextPageLocation {
+    wxRICHTEXT_PAGE_LEFT,
+    wxRICHTEXT_PAGE_CENTRE,
+    wxRICHTEXT_PAGE_RIGHT
+}
+\end{verbatim}
+
+\latexignore{\rtfignore{\wxheading{Members}}}
+
+\membersection{wxRichTextHeaderFooterData::wxRichTextHeaderFooterData}\label{wxrichtextheaderfooterdatawxrichtextheaderfooterdata}
+
+\func{}{wxRichTextHeaderFooterData}{\void}
+
+\func{}{wxRichTextHeaderFooterData}{\param{const wxRichTextHeaderFooterData\& }{data}}
+
+Constructors.
+
+\membersection{wxRichTextHeaderFooterData::Clear}\label{wxrichtextheaderfooterdataclear}
+
+\func{void}{Clear}{\void}
+
+Clears all text.
+
+\membersection{wxRichTextHeaderFooterData::Copy}\label{wxrichtextheaderfooterdatacopy}
+
+\func{void}{Copy}{\param{const wxRichTextHeaderFooterData\& }{data}}
+
+Copies the data.
+
+\membersection{wxRichTextHeaderFooterData::GetFont}\label{wxrichtextheaderfooterdatagetfont}
+
+\constfunc{const wxFont\&}{GetFont}{\void}
+
+Returns the font specified for printing the header and footer.
+
+\membersection{wxRichTextHeaderFooterData::GetFooterMargin}\label{wxrichtextheaderfooterdatagetfootermargin}
+
+\constfunc{int}{GetFooterMargin}{\void}
+
+Returns the margin between the text and the footer.
+
+\membersection{wxRichTextHeaderFooterData::GetFooterText}\label{wxrichtextheaderfooterdatagetfootertext}
+
+\constfunc{wxString}{GetFooterText}{\param{wxRichTextOddEvenPage }{page = wxRICHTEXT\_PAGE\_EVEN}, \param{wxRichTextPageLocation }{location = wxRICHTEXT\_PAGE\_CENTRE}}
+
+Returns the footer text on odd or even pages, and at a given position on the page (left, centre or right).
+
+\membersection{wxRichTextHeaderFooterData::GetHeaderMargin}\label{wxrichtextheaderfooterdatagetheadermargin}
+
+\constfunc{int}{GetHeaderMargin}{\void}
+
+Returns the margin between the text and the header.
+
+\membersection{wxRichTextHeaderFooterData::GetHeaderText}\label{wxrichtextheaderfooterdatagetheadertext}
+
+\constfunc{wxString}{GetHeaderText}{\param{wxRichTextOddEvenPage }{page = wxRICHTEXT\_PAGE\_EVEN}, \param{wxRichTextPageLocation }{location = wxRICHTEXT\_PAGE\_CENTRE}}
+
+Returns the header text on odd or even pages, and at a given position on the page (left, centre or right).
+
+\membersection{wxRichTextHeaderFooterData::GetShowOnFirstPage}\label{wxrichtextheaderfooterdatagetshowonfirstpage}
+
+\constfunc{bool}{GetShowOnFirstPage}{\void}
+
+Returns \true if the header and footer will be shown on the first page.
+
+\membersection{wxRichTextHeaderFooterData::GetText}\label{wxrichtextheaderfooterdatagettext}
+
+\constfunc{wxString}{GetText}{\param{int }{headerFooter}, \param{wxRichTextOddEvenPage }{page}, \param{wxRichTextPageLocation }{location}}
+
+Helper function for getting the header or footer text, odd or even pages, and at a given position on the page (left, centre or right).
+
+\membersection{wxRichTextHeaderFooterData::GetTextColour}\label{wxrichtextheaderfooterdatagettextcolour}
+
+\constfunc{const wxColour\&}{GetTextColour}{\void}
+
+Returns the text colour for drawing the header and footer.
+
+\membersection{wxRichTextHeaderFooterData::Init}\label{wxrichtextheaderfooterdatainit}
+
+\func{void}{Init}{\void}
+
+Initialises the object.
+
+\membersection{wxRichTextHeaderFooterData::SetFont}\label{wxrichtextheaderfooterdatasetfont}
+
+\func{void}{SetFont}{\param{const wxFont\& }{font}}
+
+Sets the font for drawing the header and footer.
+
+\membersection{wxRichTextHeaderFooterData::SetFooterText}\label{wxrichtextheaderfooterdatasetfootertext}
+
+\func{void}{SetFooterText}{\param{const wxString\& }{text}, \param{wxRichTextOddEvenPage }{page = wxRICHTEXT\_PAGE\_ALL}, \param{wxRichTextPageLocation }{location = wxRICHTEXT\_PAGE\_CENTRE}}
+
+Sets the footer text on odd or even pages, and at a given position on the page (left, centre or right).
+
+\membersection{wxRichTextHeaderFooterData::SetHeaderText}\label{wxrichtextheaderfooterdatasetheadertext}
+
+\func{void}{SetHeaderText}{\param{const wxString\& }{text}, \param{wxRichTextOddEvenPage }{page = wxRICHTEXT\_PAGE\_ALL}, \param{wxRichTextPageLocation }{location = wxRICHTEXT\_PAGE\_CENTRE}}
+
+Sets the header text on odd or even pages, and at a given position on the page (left, centre or right).
+
+\membersection{wxRichTextHeaderFooterData::SetMargins}\label{wxrichtextheaderfooterdatasetmargins}
+
+\func{void}{SetMargins}{\param{int }{headerMargin}, \param{int }{footerMargin}}
+
+Sets the margins between text and header or footer, in tenths of a millimeter.
+
+\membersection{wxRichTextHeaderFooterData::SetShowOnFirstPage}\label{wxrichtextheaderfooterdatasetshowonfirstpage}
+
+\func{void}{SetShowOnFirstPage}{\param{bool }{showOnFirstPage}}
+
+Pass \true to show the header or footer on first page (the default).
+
+\membersection{wxRichTextHeaderFooterData::SetText}\label{wxrichtextheaderfooterdatasettext}
+
+\func{void}{SetText}{\param{const wxString\& }{text}, \param{int }{headerFooter}, \param{wxRichTextOddEvenPage }{page}, \param{wxRichTextPageLocation }{location}}
+
+Helper function for setting the header or footer text, odd or even pages, and at a given position on the page (left, centre or right).
+
+\membersection{wxRichTextHeaderFooterData::SetTextColour}\label{wxrichtextheaderfooterdatasettextcolour}
+
+\func{void}{SetTextColour}{\param{const wxColour\& }{col}}
+
+Sets the text colour for drawing the header and footer.
+
+\membersection{wxRichTextHeaderFooterData::operator=}\label{wxrichtextheaderfooterdataoperatorassign}
+
+\func{void operator}{operator=}{\param{const wxRichTextHeaderFooterData\& }{data}}
+
+Assignment operator.
+
diff --git a/docs/latex/wx/richtextliststyledefinition.tex b/docs/latex/wx/richtextliststyledefinition.tex
index e74ea594b1..b2b8f470c5 100644
--- a/docs/latex/wx/richtextliststyledefinition.tex
+++ b/docs/latex/wx/richtextliststyledefinition.tex
@@ -13,7 +13,7 @@ so that you can apply them directly to a buffer without requiring a control.
 
 \wxheading{Derived from}
 
-\helpref{wxRichTextStyleParagraphDefinition}{wxrichtextstyleparagraphdefinition}
+\helpref{wxRichTextParagraphStyleDefinition}{wxrichtextparagraphstyledefinition}
 
 \wxheading{Include files}
 
diff --git a/docs/latex/wx/richtextoverview.tex b/docs/latex/wx/richtextoverview.tex
index 49f9b667cb..e7ca1e2d76 100644
--- a/docs/latex/wx/richtextoverview.tex
+++ b/docs/latex/wx/richtextoverview.tex
@@ -12,6 +12,9 @@ Classes: \helpref{wxRichTextCtrl}{wxrichtextctrl}, \helpref{wxRichTextBuffer}{wx
 \helpref{wxRichTextFileHandler}{wxrichtextfilehandler}, \helpref{wxRichTextHTMLHandler}{wxrichtexthtmlhandler}, 
 \helpref{wxRichTextXMLHandler}{wxrichtextxmlhandler}, 
 \helpref{wxRichTextFormattingDialog}{wxrichtextformattingdialog}, 
+\helpref{wxRichTextPrinting}{wxrichtextprinting}, 
+\helpref{wxRichTextPrintout}{wxrichtextprintout}, 
+\helpref{wxRichTextHeaderFooterData}{wxrichtextheaderfooterdata}, 
 \helpref{wxSymbolPickerDialog}{wxsymbolpickerdialog}
 
 wxRichTextCtrl provides a generic implementation of a rich text editor that can handle different character
diff --git a/docs/latex/wx/richtextprinting.tex b/docs/latex/wx/richtextprinting.tex
new file mode 100644
index 0000000000..53245d1aa1
--- /dev/null
+++ b/docs/latex/wx/richtextprinting.tex
@@ -0,0 +1,158 @@
+\section{\class{wxRichTextPrinting}}\label{wxrichtextprinting}
+
+This class provides a simple interface for performing \helpref{wxRichTextBuffer}{wxrichtextbuffer} printing
+and previewing. It uses \helpref{wxRichTextPrintout}{wxrichtextprintout} for layout and rendering.
+ 
+\wxheading{Derived from}
+
+\helpref{wxObject}{wxobject}
+
+\wxheading{Include files}
+
+<wx/richtext/richtextprint.h>
+
+\wxheading{Data structures}
+
+\latexignore{\rtfignore{\wxheading{Members}}}
+
+\membersection{wxRichTextPrinting::wxRichTextPrinting}\label{wxrichtextprintingwxrichtextprinting}
+
+\func{}{wxRichTextPrinting}{\param{const wxString\& }{name = wxT("Printing")}, \param{wxWindow* }{parentWindow = NULL}}
+
+Constructor. Optionally pass a title to be used in the preview frame and printing wait dialog, and
+also a parent window for these windows.
+
+\membersection{wxRichTextPrinting::GetFooterText}\label{wxrichtextprintinggetfootertext}
+
+\constfunc{wxString}{GetFooterText}{\param{wxRichTextOddEvenPage }{page = wxRICHTEXT\_PAGE\_EVEN}, \param{wxRichTextPageLocation }{location = wxRICHTEXT\_PAGE\_CENTRE}}
+
+A convenience function to get the footer text. See \helpref{wxRichTextHeaderFooterData}{wxrichtextheaderfooterdata} for details.
+
+\membersection{wxRichTextPrinting::GetHeaderFooterData}\label{wxrichtextprintinggetheaderfooterdata}
+
+\constfunc{const wxRichTextHeaderFooterData\&}{GetHeaderFooterData}{\void}
+
+Returns the internal \helpref{wxRichTextHeaderFooterData}{wxrichtextheaderfooterdata} object.
+
+\membersection{wxRichTextPrinting::GetHeaderText}\label{wxrichtextprintinggetheadertext}
+
+\constfunc{wxString}{GetHeaderText}{\param{wxRichTextOddEvenPage }{page = wxRICHTEXT\_PAGE\_EVEN}, \param{wxRichTextPageLocation }{location = wxRICHTEXT\_PAGE\_CENTRE}}
+
+A convenience function to get the header text. See \helpref{wxRichTextHeaderFooterData}{wxrichtextheaderfooterdata} for details.
+
+\membersection{wxRichTextPrinting::GetPageSetupData}\label{wxrichtextprintinggetpagesetupdata}
+
+\func{wxPageSetupDialogData*}{GetPageSetupData}{\void}
+
+Returns a pointer to the internal page setup data.
+
+\membersection{wxRichTextPrinting::GetParentWindow}\label{wxrichtextprintinggetparentwindow}
+
+\constfunc{wxWindow*}{GetParentWindow}{\void}
+
+Returns the parent window to be used for the preview window and printing wait dialog.
+
+\membersection{wxRichTextPrinting::GetPreviewRect}\label{wxrichtextprintinggetpreviewrect}
+
+\constfunc{const wxRect\&}{GetPreviewRect}{\void}
+
+Returns the dimensions to be used for the preview window.
+
+\membersection{wxRichTextPrinting::GetPrintData}\label{wxrichtextprintinggetprintdata}
+
+\func{wxPrintData*}{GetPrintData}{\void}
+
+Returns a pointer to the internal print data.
+
+\membersection{wxRichTextPrinting::GetTitle}\label{wxrichtextprintinggettitle}
+
+\constfunc{const wxString\&}{GetTitle}{\void}
+
+Returns the title of the preview window or printing wait caption.
+
+\membersection{wxRichTextPrinting::PageSetup}\label{wxrichtextprintingpagesetup}
+
+\func{void}{PageSetup}{\void}
+
+Shows the page setup dialog.
+
+\membersection{wxRichTextPrinting::PreviewBuffer}\label{wxrichtextprintingpreviewbuffer}
+
+\func{bool}{PreviewBuffer}{\param{const wxRichTextBuffer\& }{buffer}}
+
+Shows a preview window for the given buffer. The function takes its own copy of {\it buffer}.
+
+\membersection{wxRichTextPrinting::PreviewFile}\label{wxrichtextprintingpreviewfile}
+
+\func{bool}{PreviewFile}{\param{const wxString\& }{richTextFile}}
+
+Shows a preview window for the given file. {\it richTextFile} can be a text file or XML file, or other file
+depending on the available file handlers.
+
+\membersection{wxRichTextPrinting::PrintBuffer}\label{wxrichtextprintingprintbuffer}
+
+\func{bool}{PrintBuffer}{\param{const wxRichTextBuffer\& }{buffer}}
+
+Prints the given buffer. The function takes its own copy of {\it buffer}.
+
+\membersection{wxRichTextPrinting::PrintFile}\label{wxrichtextprintingprintfile}
+
+\func{bool}{PrintFile}{\param{const wxString\& }{richTextFile}}
+
+Prints the given file. {\it richTextFile} can be a text file or XML file, or other file
+depending on the available file handlers.
+
+\membersection{wxRichTextPrinting::SetFooterText}\label{wxrichtextprintingsetfootertext}
+
+\func{void}{SetFooterText}{\param{const wxString\& }{text}, \param{wxRichTextOddEvenPage }{page = wxRICHTEXT\_PAGE\_ALL}, \param{wxRichTextPageLocation }{location = wxRICHTEXT\_PAGE\_CENTRE}}
+
+A convenience function to set the footer text. See \helpref{wxRichTextHeaderFooterData}{wxrichtextheaderfooterdata} for details.
+
+\membersection{wxRichTextPrinting::SetHeaderFooterData}\label{wxrichtextprintingsetheaderfooterdata}
+
+\func{void}{SetHeaderFooterData}{\param{const wxRichTextHeaderFooterData\& }{data}}
+
+Sets the internal \helpref{wxRichTextHeaderFooterData}{wxrichtextheaderfooterdata} object.
+
+\membersection{wxRichTextPrinting::SetHeaderFooterFont}\label{wxrichtextprintingsetheaderfooterfont}
+
+\func{void}{SetHeaderFooterFont}{\param{const wxFont\& }{font}}
+
+Sets the \helpref{wxRichTextHeaderFooterData}{wxrichtextheaderfooterdata} font.
+
+\membersection{wxRichTextPrinting::SetHeaderFooterTextColour}\label{wxrichtextprintingsetheaderfootertextcolour}
+
+\func{void}{SetHeaderFooterTextColour}{\param{const wxColour\& }{colour}}
+
+Sets the \helpref{wxRichTextHeaderFooterData}{wxrichtextheaderfooterdata} text colour.
+
+\membersection{wxRichTextPrinting::SetHeaderText}\label{wxrichtextprintingsetheadertext}
+
+\func{void}{SetHeaderText}{\param{const wxString\& }{text}, \param{wxRichTextOddEvenPage }{page = wxRICHTEXT\_PAGE\_ALL}, \param{wxRichTextPageLocation }{location = wxRICHTEXT\_PAGE\_CENTRE}}
+
+A convenience function to set the header text. See \helpref{wxRichTextHeaderFooterData}{wxrichtextheaderfooterdata} for details.
+
+\membersection{wxRichTextPrinting::SetParentWindow}\label{wxrichtextprintingsetparentwindow}
+
+\func{void}{SetParentWindow}{\param{wxWindow* }{parent}}
+
+Sets the parent window to be used for the preview window and printing wait dialog.
+
+\membersection{wxRichTextPrinting::SetPreviewRect}\label{wxrichtextprintingsetpreviewrect}
+
+\func{void}{SetPreviewRect}{\param{const wxRect\& }{rect}}
+
+Sets the dimensions to be used for the preview window.
+
+\membersection{wxRichTextPrinting::SetShowOnFirstPage}\label{wxrichtextprintingsetshowonfirstpage}
+
+\func{void}{SetShowOnFirstPage}{\param{bool }{show}}
+
+Pass \true to show the header and footer on the first page.
+
+\membersection{wxRichTextPrinting::SetTitle}\label{wxrichtextprintingsettitle}
+
+\func{void}{SetTitle}{\param{const wxString\& }{title}}
+
+Pass the title of the preview window or printing wait caption.
+
diff --git a/docs/latex/wx/richtextprintout.tex b/docs/latex/wx/richtextprintout.tex
new file mode 100644
index 0000000000..7ab70ff879
--- /dev/null
+++ b/docs/latex/wx/richtextprintout.tex
@@ -0,0 +1,84 @@
+\section{\class{wxRichTextPrintout}}\label{wxrichtextprintout}
+
+This class implements print layout for \helpref{wxRichTextBuffer}{wxrichtextbuffer}. Instead of using it directly, you
+should normally use the \helpref{wxRichTextPrinting}{wxrichtextprinting} class.
+
+\wxheading{Derived from}
+
+\helpref{wxPrintout}{wxprintout}
+
+\wxheading{Include files}
+
+<wx/richtext/richtextprint.h>
+
+\wxheading{Data structures}
+
+\latexignore{\rtfignore{\wxheading{Members}}}
+
+\membersection{wxRichTextPrintout::wxRichTextPrintout}\label{wxrichtextprintoutwxrichtextprintout}
+
+\func{}{wxRichTextPrintout}{\param{const wxString\& }{title = wxT("Printout")}}
+
+Constructor.
+
+\membersection{wxRichTextPrintout::CalculateScaling}\label{wxrichtextprintoutcalculatescaling}
+
+\func{void}{CalculateScaling}{\param{wxDC* }{dc}, \param{wxRect\& }{textRect}, \param{wxRect\& }{headerRect}, \param{wxRect\& }{footerRect}}
+
+Calculates scaling and text, header and footer rectangles.
+
+\membersection{wxRichTextPrintout::GetHeaderFooterData}\label{wxrichtextprintoutgetheaderfooterdata}
+
+\constfunc{const wxRichTextHeaderFooterData\&}{GetHeaderFooterData}{\void}
+
+Returns the header and footer data associated with the printout.
+
+\membersection{wxRichTextPrintout::GetPageInfo}\label{wxrichtextprintoutgetpageinfo}
+
+\func{void}{GetPageInfo}{\param{int* }{minPage}, \param{int* }{maxPage}, \param{int* }{selPageFrom}, \param{int* }{selPageTo}}
+
+Gets the page information.
+
+\membersection{wxRichTextPrintout::GetRichTextBuffer}\label{wxrichtextprintoutgetrichtextbuffer}
+
+\constfunc{wxRichTextBuffer*}{GetRichTextBuffer}{\void}
+
+Returns a pointer to the buffer being rendered.
+
+\membersection{wxRichTextPrintout::HasPage}\label{wxrichtextprintouthaspage}
+
+\func{bool}{HasPage}{\param{int }{page}}
+
+Returns \true if the given page exists in the printout.
+
+\membersection{wxRichTextPrintout::OnPreparePrinting}\label{wxrichtextprintoutonprepareprinting}
+
+\func{void}{OnPreparePrinting}{\void}
+
+Prepares for printing, laying out the buffer and calculating pagination.
+
+\membersection{wxRichTextPrintout::OnPrintPage}\label{wxrichtextprintoutonprintpage}
+
+\func{bool}{OnPrintPage}{\param{int }{page}}
+
+Does the actual printing for this page.
+
+\membersection{wxRichTextPrintout::SetHeaderFooterData}\label{wxrichtextprintoutsetheaderfooterdata}
+
+\func{void}{SetHeaderFooterData}{\param{const wxRichTextHeaderFooterData\& }{data}}
+
+Sets the header and footer data associated with the printout.
+
+\membersection{wxRichTextPrintout::SetMargins}\label{wxrichtextprintoutsetmargins}
+
+\func{void}{SetMargins}{\param{int }{top = 252}, \param{int }{bottom = 252}, \param{int }{left = 252}, \param{int }{right = 252}}
+
+Sets margins in 10ths of millimetre. Defaults to 1 inch for margins.
+
+\membersection{wxRichTextPrintout::SetRichTextBuffer}\label{wxrichtextprintoutsetrichtextbuffer}
+
+\func{void}{SetRichTextBuffer}{\param{wxRichTextBuffer* }{buffer}}
+
+Sets the buffer to print. wxRichTextPrintout does not manage this pointer; it should
+be managed by the calling code, such as wxRichTextPrinting.
+
-- 
2.47.2

