X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e69d5138dc8f95e294ae6d03beb4f321406f4e34..62a268cc71a93c9fd2d696bc85b323e232f44a20:/docs/latex/wx/richtextbuffer.tex?ds=inline

diff --git a/docs/latex/wx/richtextbuffer.tex b/docs/latex/wx/richtextbuffer.tex
index bcefb8c2f7..c177b3f5e5 100644
--- a/docs/latex/wx/richtextbuffer.tex
+++ b/docs/latex/wx/richtextbuffer.tex
@@ -403,6 +403,15 @@ Finds a handler by name.
 
 Finds a handler by filename or, if supplied, type.
 
+\membersection{wxRichTextBuffer::GetBasicStyle}\label{wxrichtextbuffergetbasicstyle}
+
+\constfunc{const wxTextAttrEx\&}{GetBasicStyle}{\void}
+
+Gets the basic (overall) style. This is the style of the whole
+buffer before further styles are applied, unlike the default style, which
+only affects the style currently being applied (for example, setting the default
+style to bold will cause subsequently inserted text to be bold).
+
 \membersection{wxRichTextBuffer::GetBatchedCommand}\label{wxrichtextbuffergetbatchedcommand}
 
 \constfunc{wxRichTextCommand*}{GetBatchedCommand}{\void}
@@ -416,6 +425,13 @@ Gets the collapsed command.
 Gets the command processor. A text buffer always creates its own command processor when it is
 initialized.
 
+\membersection{wxRichTextBuffer::GetDefaultStyle}\label{wxrichtextbuffergetdefaultstyle}
+
+\constfunc{const wxTextAttrEx\&}{GetDefaultStyle}{\void}
+
+Returns the current default style, affecting the style currently being applied (for example, setting the default
+style to bold will cause subsequently inserted text to be bold).
+
 \membersection{wxRichTextBuffer::GetExtWildcard}\label{wxrichtextbuffergetextwildcard}
 
 \func{wxString}{GetExtWildcard}{\param{bool }{combine = false}, \param{bool }{save = false}, \param{wxArrayInt* }{types = NULL}}
@@ -430,6 +446,41 @@ used to determine the type to pass to \helpref{LoadFile}{wxrichtextbuffergetextw
 
 Returns the list of file handlers.
 
+\membersection{wxRichTextBuffer::GetStyle}\label{wxrichtextbuffergetstyle}
+
+\func{bool}{GetStyle}{\param{long }{position}, \param{wxRichTextAttr\& }{style}}
+
+\func{bool}{GetStyle}{\param{long }{position}, \param{wxTextAttrEx\& }{style}}
+
+Gets the attributes at the given position.
+
+This function gets the combined style - that is, the style you see on the screen as a result
+of combining base style, paragraph style and character style attributes. To get the character
+or paragraph style alone, use \helpref{GetUncombinedStyle}{wxrichtextbuffergetuncombinedstyle}.
+
+\membersection{wxRichTextBuffer::GetStyleForRange}\label{wxrichtextbuffergetstyleforrange}
+
+\func{bool}{GetStyleForRange}{\param{const wxRichTextRange\&}{ range}, \param{wxTextAttrEx\& }{style}}
+
+This function gets a style representing the common, combined attributes in the given range.
+Attributes which have different values within the specified range will not be included the style
+flags.
+
+The function is used to get the attributes to display in the formatting dialog: the user
+can edit the attributes common to the selection, and optionally specify the values of further
+attributes to be applied uniformly.
+
+To apply the edited attributes, you can use \helpref{SetStyle}{wxrichtextbuffersetstyle} specifying
+the wxRICHTEXT\_SETSTYLE\_OPTIMIZE flag, which will only apply attributes that are different
+from the {\it combined} attributes within the range. So, the user edits the effective, displayed attributes
+for the range, but his choice won't be applied unnecessarily to content. As an example,
+say the style for a paragraph specifies bold, but the paragraph text doesn't specify a weight. The
+combined style is bold, and this is what the user will see on-screen and in the formatting
+dialog. The user now specifies red text, in addition to bold. When applying with
+SetStyle, the content font weight attributes won't be changed to bold because this is already specified
+by the paragraph. However the text colour attributes {\it will} be changed to
+show red.
+
 \membersection{wxRichTextBuffer::GetStyleSheet}\label{wxrichtextbuffergetstylesheet}
 
 \constfunc{wxRichTextStyleSheet*}{GetStyleSheet}{\void}
@@ -442,6 +493,21 @@ Returns the current style sheet associated with the buffer, if any.
 
 Get the size of the style stack, for example to check correct nesting.
 
+\membersection{wxRichTextBuffer::GetUncombinedStyle}\label{wxrichtextbuffergetuncombinedstyle}
+
+\func{bool}{GetUncombinedStyle}{\param{long }{position}, \param{wxRichTextAttr\& }{style}}
+
+\func{bool}{GetUncombinedStyle}{\param{long }{position}, \param{wxTextAttrEx\& }{style}}
+
+Gets the attributes at the given position.
+
+This function gets the {\it uncombined style} - that is, the attributes associated with the
+paragraph or character content, and not necessarily the combined attributes you see on the
+screen. To get the combined attributes, use \helpref{GetStyle}{wxrichtextbuffergetstyle}.
+
+If you specify (any) paragraph attribute in {\it style}'s flags, this function will fetch
+the paragraph attributes. Otherwise, it will return the character attributes.
+
 \membersection{wxRichTextBuffer::HitTest}\label{wxrichtextbufferhittest}
 
 \func{int}{HitTest}{\param{wxDC\& }{dc}, \param{const wxPoint\& }{pt}, \param{long\& }{textPosition}}
@@ -552,6 +618,61 @@ Saves content to a stream.
 
 Saves content to a file.
 
+\membersection{wxRichTextBuffer::SetBasicStyle}\label{wxrichtextbuffersetbasicstyle}
+
+\func{void}{SetBasicStyle}{\param{const wxRichTextAttr\& }{style}}
+
+\func{void}{SetBasicStyle}{\param{const wxTextAttrEx\& }{style}}
+
+Sets the basic (overall) style. This is the style of the whole
+buffer before further styles are applied, unlike the default style, which
+only affects the style currently being applied (for example, setting the default
+style to bold will cause subsequently inserted text to be bold).
+
+\membersection{wxRichTextBuffer::SetDefaultStyle}\label{wxrichtextbuffersetdefaultstyle}
+
+\func{void}{SetDefaultStyle}{\param{const wxTextAttrEx\& }{style}}
+
+Sets the default style, affecting the style currently being applied (for example, setting the default
+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::SetStyle}\label{wxrichtextbuffersetstyle}
+
+\func{bool}{SetStyle}{\param{const wxRichTextRange\& }{range}, \param{const wxRichTextAttr\& }{style}, \param{int }{flags $=$ wxRICHTEXT\_SETSTYLE\_WITH\_UNDO}}
+
+\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.
+
+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).
+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}
+
 \membersection{wxRichTextBuffer::SetStyleSheet}\label{wxrichtextbuffersetstylesheet}
 
 \func{void}{SetStyleSheet}{\param{wxRichTextStyleSheet* }{styleSheet}}
