X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d2d0adc7765dfe904f0f7e97d85a2638c934a7d6..d3f00f59938d4801a95afa1cd638b8f15c481ee3:/docs/latex/wx/richtextattr.tex diff --git a/docs/latex/wx/richtextattr.tex b/docs/latex/wx/richtextattr.tex index 5a97fad846..9bec6fcd32 100644 --- a/docs/latex/wx/richtextattr.tex +++ b/docs/latex/wx/richtextattr.tex @@ -7,9 +7,9 @@ standard \helpref{wxTextAttr}{wxtextattr} class with wxRichTextCtrl. When setting up a wxRichTextAttr object, pass a bitlist mask to \helpref{SetFlags}{wxrichtextattrsetflags} to indicate which style elements should be changed. As a convenience, when you call a setter such -s SetFont, the relevant bit will be set. +as SetFont, the relevant bit will be set. -wxRichTextAttr stores attributes without a wxFont object, so is a much more +wxRichTextAttr stores attributes without a wxFont object, so is a more efficient way to query styles than using a \helpref{wxTextAttr}{wxtextattr} or \helpref{wxTextAttrEx}{wxtextattrex} object. \wxheading{Derived from} @@ -20,9 +20,13 @@ No base class +\wxheading{Library} + +\helpref{wxRichtext}{librarieslist} + \wxheading{Constants} -The following values can be passed to SetAlignment to determine +The following values can be passed to wxRichTextAttr::SetAlignment to determine paragraph alignment. {\small @@ -39,7 +43,10 @@ enum wxTextAttrAlignment \end{verbatim} } -These values are passed in a bitlist to SetFlags to determine +Of these, wxTEXT\_ALIGNMENT\_JUSTIFIED is unimplemented. In future justification may be supported +when printing or previewing, only. + +The following values are passed in a bitlist to wxRichTextAttr::SetFlags to determine what attributes will be considered when setting the attributes for a text control. @@ -47,20 +54,20 @@ for a text control. \begin{verbatim} // Standard wxTextAttr constants -#define wxTEXT_ATTR_TEXT_COLOUR 0x0001 -#define wxTEXT_ATTR_BACKGROUND_COLOUR 0x0002 -#define wxTEXT_ATTR_FONT_FACE 0x0004 -#define wxTEXT_ATTR_FONT_SIZE 0x0008 -#define wxTEXT_ATTR_FONT_WEIGHT 0x0010 -#define wxTEXT_ATTR_FONT_ITALIC 0x0020 -#define wxTEXT_ATTR_FONT_UNDERLINE 0x0040 +#define wxTEXT_ATTR_TEXT_COLOUR 0x00000001 +#define wxTEXT_ATTR_BACKGROUND_COLOUR 0x00000002 +#define wxTEXT_ATTR_FONT_FACE 0x00000004 +#define wxTEXT_ATTR_FONT_SIZE 0x00000008 +#define wxTEXT_ATTR_FONT_WEIGHT 0x00000010 +#define wxTEXT_ATTR_FONT_ITALIC 0x00000020 +#define wxTEXT_ATTR_FONT_UNDERLINE 0x00000040 #define wxTEXT_ATTR_FONT \ wxTEXT_ATTR_FONT_FACE | wxTEXT_ATTR_FONT_SIZE | wxTEXT_ATTR_FONT_WEIGHT \ | wxTEXT_ATTR_FONT_ITALIC | wxTEXT_ATTR_FONT_UNDERLINE -#define wxTEXT_ATTR_ALIGNMENT 0x0080 -#define wxTEXT_ATTR_LEFT_INDENT 0x0100 -#define wxTEXT_ATTR_RIGHT_INDENT 0x0200 -#define wxTEXT_ATTR_TABS 0x0400 +#define wxTEXT_ATTR_ALIGNMENT 0x00000080 +#define wxTEXT_ATTR_LEFT_INDENT 0x00000100 +#define wxTEXT_ATTR_RIGHT_INDENT 0x00000200 +#define wxTEXT_ATTR_TABS 0x00000400 // Extra formatting flags not in wxTextAttr @@ -75,6 +82,9 @@ for a text control. #define wxTEXT_ATTR_BULLET_TEXT 0x00080000 #define wxTEXT_ATTR_BULLET_NAME 0x00100000 #define wxTEXT_ATTR_URL 0x00200000 +#define wxTEXT_ATTR_PAGE_BREAK 0x00400000 +#define wxTEXT_ATTR_EFFECTS 0x00800000 +#define wxTEXT_ATTR_OUTLINE_LEVEL 0x01000000 \end{verbatim} } @@ -101,6 +111,8 @@ The following styles can be passed to wxRichTextAttr::SetBulletStyle: \end{verbatim} } +Of these, wxTEXT\_ATTR\_BULLET\_STYLE\_BITMAP is unimplemented. + The following constants can be passed to wxRichTextAttr::SetLineSpacing: {\small @@ -111,6 +123,26 @@ The following constants can be passed to wxRichTextAttr::SetLineSpacing: \end{verbatim} } +The following styles can be passed to wxTextAttrEx::SetTextEffects: + +{\small +\begin{verbatim} +#define wxTEXT_ATTR_EFFECT_NONE 0x00000000 +#define wxTEXT_ATTR_EFFECT_CAPITALS 0x00000001 +#define wxTEXT_ATTR_EFFECT_SMALL_CAPITALS 0x00000002 +#define wxTEXT_ATTR_EFFECT_STRIKETHROUGH 0x00000004 +#define wxTEXT_ATTR_EFFECT_DOUBLE_STRIKETHROUGH 0x00000008 +#define wxTEXT_ATTR_EFFECT_SHADOW 0x00000010 +#define wxTEXT_ATTR_EFFECT_EMBOSS 0x00000020 +#define wxTEXT_ATTR_EFFECT_OUTLINE 0x00000040 +#define wxTEXT_ATTR_EFFECT_ENGRAVE 0x00000080 +#define wxTEXT_ATTR_EFFECT_SUPERSCRIPT 0x00000100 +#define wxTEXT_ATTR_EFFECT_SUBSCRIPT 0x00000200 +\end{verbatim} +} + +Of these, only wxTEXT\_ATTR\_EFFECT\_CAPITALS and wxTEXT\_ATTR\_EFFECT\_STRIKETHROUGH are implemented. + \wxheading{See also} \helpref{wxTextAttr}{wxtextattr}, \helpref{wxTextAttrEx}{wxtextattrex}, \helpref{wxRichTextCtrl}{wxrichtextctrl} @@ -127,11 +159,22 @@ The following constants can be passed to wxRichTextAttr::SetLineSpacing: Constructors. -\membersection{wxRichTextAttr::CopyTo}\label{wxrichtextattrcopyto} +\membersection{wxRichTextAttr::Apply}\label{wxrichtextattrapply} + +\func{bool}{Combine}{\param{const wxRichTextAttrEx\& }{style}, \param{const wxRichTextAttrEx* }{compareWith = NULL}} + +Applies the attributes in {\it style} to the original object, but not those attributes from {\it style} that are the same as those in {\it compareWith} (if passed). + +See also \helpref{wxRichTextAttr::Combine}{wxrichtextattrcombine} for a function that does almost the same but returns a new object instead of modifying the original object. + +\membersection{wxRichTextAttr::Combine}\label{wxrichtextattrcombine} -\constfunc{void}{CopyTo}{\param{wxTextAttrEx\& }{attr}} +\constfunc{wxRichTextAttr}{Combine}{\param{const wxRichTextAttrEx\& }{style}, \param{const wxRichTextAttrEx* }{compareWith = NULL}} -Copies the wxRichTextAttr attributes to a \helpref{wxTextAttrEx}{wxtextattrex} object. +Combines 'this' with {\it style}, but not applying attributes from {\it style} that are the same as those in {\it compareWith} (if passed). +A wxRichTextAttr object is returned and the original object is not changed. + +See also \helpref{wxRichTextAttr::Apply}{wxrichtextattrapply} for a function that does almost the same but modifies the original object instead of returning a new one. \membersection{wxRichTextAttr::CreateFont}\label{wxrichtextattrcreatefont} @@ -270,6 +313,12 @@ wxTEXT\_ATTR\_LINE\_SPACING\_HALF, and wxTEXT\_ATTR\_LINE\_SPACING\_TWICE. Returns the name of the list style. +\membersection{wxRichTextAttr::GetOutlineLevel}\label{wxrichtextattrgetoutlinelevel} + +\constfunc{bool}{GetOutlineLevel}{\void} + +Returns the outline level. + \membersection{wxRichTextAttr::GetParagraphSpacingAfter}\label{wxrichtextattrgetparagraphspacingafter} \constfunc{int}{GetParagraphSpacingAfter}{\void} @@ -307,6 +356,19 @@ is measured from the left margin and therefore each value must be larger than th Returns the text foreground colour. +\membersection{wxRichTextAttr::GetTextEffectFlags}\label{wxrichtextattrgettexteffectflags} + +\constfunc{int}{GetTextEffectFlags}{\void} + +Returns the text effect bits of interest. See \helpref{wxRichTextAttr::SetFlags}{wxrichtextattrsetflags} for further information. + +\membersection{wxRichTextAttr::GetTextEffects}\label{wxrichtextattrgettexteffects} + +\constfunc{int}{GetTextEffects}{\void} + +Returns the text effects, a bit list of styles. See \helpref{wxRichTextAttr::SetTextEffects}{wxrichtextattrsettexteffects} for +details. + \membersection{wxRichTextAttr::GetURL}\label{wxrichtextattrgeturl} \constfunc{const wxString\&}{GetURL}{\void} @@ -357,9 +419,9 @@ Returns \true if the attribute object specifies bullet text (usually specifying Returns \true if the attribute object specifies a character style name. -\membersection{wxRichTextAttr::HasFaceName}\label{wxrichtextattrhasfacename} +\membersection{wxRichTextAttr::HasFontFaceName}\label{wxrichtextattrhasfontfacename} -\constfunc{bool}{HasFaceName}{\void} +\constfunc{bool}{HasFontFaceName}{\void} Returns \true if the attribute object specifies a font face name. @@ -375,9 +437,9 @@ Returns \true if the {\it flag} is present in the attribute object's flag bitlis Returns \true if the attribute object specifies any font attributes. -\membersection{wxRichTextAttr::HasItalic}\label{wxrichtextattrhasitalic} +\membersection{wxRichTextAttr::HasFontItalic}\label{wxrichtextattrhasfontitalic} -\constfunc{bool}{HasItalic}{\void} +\constfunc{bool}{HasFontItalic}{\void} Returns \true if the attribute object specifies italic style. @@ -399,6 +461,18 @@ Returns \true if the attribute object specifies line spacing. Returns \true if the attribute object specifies a list style name. +\membersection{wxRichTextAttr::HasOutlineLevel}\label{wxrichtextattrhasoutlinelevel} + +\constfunc{bool}{HasOutlineLevel}{\void} + +Returns \true if the attribute object specifies an outline level. + +\membersection{wxRichTextAttr::HasPageBreak}\label{wxrichtextattrhaspagebreak} + +\constfunc{bool}{HasPageBreak}{\void} + +Returns \true if the attribute object specifies a page break before this paragraph. + \membersection{wxRichTextAttr::HasParagraphSpacingAfter}\label{wxrichtextattrhasparagraphspacingafter} \constfunc{bool}{HasParagraphSpacingAfter}{\void} @@ -423,9 +497,9 @@ Returns \true if the attribute object specifies a paragraph style name. Returns \true if the attribute object specifies a right indent. -\membersection{wxRichTextAttr::HasSize}\label{wxrichtextattrhassize} +\membersection{wxRichTextAttr::HasFontSize}\label{wxrichtextattrhasfontsize} -\constfunc{bool}{HasSize}{\void} +\constfunc{bool}{HasFontSize}{\void} Returns \true if the attribute object specifies a font point size. @@ -441,23 +515,29 @@ Returns \true if the attribute object specifies tab stops. Returns \true if the attribute object specifies a text foreground colour. -\membersection{wxRichTextAttr::HasUnderlined}\label{wxrichtextattrhasunderlined} +\membersection{wxRichTextAttr::HasTextEffects}\label{wxrichtextattrhastexteffects} + +\constfunc{bool}{HasTextEffects}{\void} + +Returns \true if the attribute object specifies text effects. -\constfunc{bool}{HasUnderlined}{\void} +\membersection{wxRichTextAttr::HasFontUnderlined}\label{wxrichtextattrhasfontunderlined} + +\constfunc{bool}{HasFontUnderlined}{\void} Returns \true if the attribute object specifies either underlining or no underlining. -\membersection{wxRichTextAttr::HasWeight}\label{wxrichtextattrhasweight} +\membersection{wxRichTextAttr::HasURL}\label{wxrichtextattrhasurl} -\constfunc{bool}{HasWeight}{\void} +\constfunc{bool}{HasURL}{\void} -Returns \true if the attribute object specifies font weight (bold, light or normal). +Returns \true if the attribute object specifies a URL. -\membersection{wxRichTextAttr::Init}\label{wxrichtextattrinit} +\membersection{wxRichTextAttr::HasFontWeight}\label{wxrichtextattrhasfontweight} -\func{void}{Init}{\void} +\constfunc{bool}{HasFontWeight}{\void} -Initialise the object. +Returns \true if the attribute object specifies font weight (bold, light or normal). \membersection{wxRichTextAttr::IsCharacterStyle}\label{wxrichtextattrischaracterstyle} @@ -500,6 +580,9 @@ enum wxTextAttrAlignment \end{verbatim} } +Of these, wxTEXT\_ALIGNMENT\_JUSTIFIED is unimplemented. In future justification may be supported +when printing or previewing, only. + \membersection{wxRichTextAttr::SetBackgroundColour}\label{wxrichtextattrsetbackgroundcolour} \func{void}{SetBackgroundColour}{\param{const wxColour\& }{colBack}} @@ -554,6 +637,8 @@ Sets the bullet style. The following styles can be passed: \end{verbatim} } +Currently wxTEXT\_ATTR\_BULLET\_STYLE\_BITMAP is not supported. + \membersection{wxRichTextAttr::SetBulletText}\label{wxrichtextattrsetbullettext} \func{void}{SetBulletText}{\param{const wxString& }{text}} @@ -577,20 +662,20 @@ flags can be passed in a bitlist: \begin{verbatim} // Standard wxTextAttr constants -#define wxTEXT_ATTR_TEXT_COLOUR 0x0001 -#define wxTEXT_ATTR_BACKGROUND_COLOUR 0x0002 -#define wxTEXT_ATTR_FONT_FACE 0x0004 -#define wxTEXT_ATTR_FONT_SIZE 0x0008 -#define wxTEXT_ATTR_FONT_WEIGHT 0x0010 -#define wxTEXT_ATTR_FONT_ITALIC 0x0020 -#define wxTEXT_ATTR_FONT_UNDERLINE 0x0040 +#define wxTEXT_ATTR_TEXT_COLOUR 0x00000001 +#define wxTEXT_ATTR_BACKGROUND_COLOUR 0x00000002 +#define wxTEXT_ATTR_FONT_FACE 0x00000004 +#define wxTEXT_ATTR_FONT_SIZE 0x00000008 +#define wxTEXT_ATTR_FONT_WEIGHT 0x00000010 +#define wxTEXT_ATTR_FONT_ITALIC 0x00000020 +#define wxTEXT_ATTR_FONT_UNDERLINE 0x00000040 #define wxTEXT_ATTR_FONT \ wxTEXT_ATTR_FONT_FACE | wxTEXT_ATTR_FONT_SIZE | wxTEXT_ATTR_FONT_WEIGHT \ | wxTEXT_ATTR_FONT_ITALIC | wxTEXT_ATTR_FONT_UNDERLINE -#define wxTEXT_ATTR_ALIGNMENT 0x0080 -#define wxTEXT_ATTR_LEFT_INDENT 0x0100 -#define wxTEXT_ATTR_RIGHT_INDENT 0x0200 -#define wxTEXT_ATTR_TABS 0x0400 +#define wxTEXT_ATTR_ALIGNMENT 0x00000080 +#define wxTEXT_ATTR_LEFT_INDENT 0x00000100 +#define wxTEXT_ATTR_RIGHT_INDENT 0x00000200 +#define wxTEXT_ATTR_TABS 0x00000400 // Extra formatting flags not in wxTextAttr @@ -605,6 +690,9 @@ flags can be passed in a bitlist: #define wxTEXT_ATTR_BULLET_TEXT 0x00080000 #define wxTEXT_ATTR_BULLET_NAME 0x00100000 #define wxTEXT_ATTR_URL 0x00200000 +#define wxTEXT_ATTR_PAGE_BREAK 0x00400000 +#define wxTEXT_ATTR_EFFECTS 0x00800000 +#define wxTEXT_ATTR_OUTLINE_LEVEL 0x01000000 \end{verbatim} } @@ -676,6 +764,20 @@ defined for convenience: Sets the list style name. +\membersection{wxRichTextAttr::SetOutlineLevel}\label{wxrichtextattrsetoutlinelevel} + +\func{void}{SetOutlineLevel}{\param{int}{ level}} + +Specifies the outline level. Zero represents normal text. At present, the outline level is +not used, but may be used in future for determining list levels and for applications +that need to store document structure information. + +\membersection{wxRichTextAttr::SetPageBreak}\label{wxrichtextattrsetpagebreak} + +\func{void}{SetPageBreak}{\param{bool}{ pageBreak = true}} + +Specifies a page break before this paragraph. + \membersection{wxRichTextAttr::SetParagraphSpacingAfter}\label{wxrichtextattrsetparagraphspacingafter} \func{void}{SetParagraphSpacingAfter}{\param{int }{spacing}} @@ -713,6 +815,45 @@ Each stop is measured from the left margin and therefore each value must be larg Sets the text foreground colout. +\membersection{wxRichTextAttr::SetTextEffectFlags}\label{wxrichtextattrsettexteffectflags} + +\func{void}{SetTextEffectFlags}{\param{int }{flags}} + +Sets the text effect bits of interest. You should also pass wxTEXT\_ATTR\_EFFECTS to \helpref{wxRichTextAttr::SetFlags}{wxrichtextattrsetflags}. +See \helpref{wxRichTextAttr::SetFlags}{wxrichtextattrsetflags} for further information. + +\membersection{wxRichTextAttr::SetTextEffects}\label{wxrichtextattrsettexteffects} + +\func{void}{SetTextEffects}{\param{int }{effects}} + +Sets the text effects, a bit list of styles. + +The following styles can be passed: + +{\small +\begin{verbatim} +#define wxTEXT_ATTR_EFFECT_NONE 0x00000000 +#define wxTEXT_ATTR_EFFECT_CAPITALS 0x00000001 +#define wxTEXT_ATTR_EFFECT_SMALL_CAPITALS 0x00000002 +#define wxTEXT_ATTR_EFFECT_STRIKETHROUGH 0x00000004 +#define wxTEXT_ATTR_EFFECT_DOUBLE_STRIKETHROUGH 0x00000008 +#define wxTEXT_ATTR_EFFECT_SHADOW 0x00000010 +#define wxTEXT_ATTR_EFFECT_EMBOSS 0x00000020 +#define wxTEXT_ATTR_EFFECT_OUTLINE 0x00000040 +#define wxTEXT_ATTR_EFFECT_ENGRAVE 0x00000080 +#define wxTEXT_ATTR_EFFECT_SUPERSCRIPT 0x00000100 +#define wxTEXT_ATTR_EFFECT_SUBSCRIPT 0x00000200 +\end{verbatim} +} + +Of these, only wxTEXT\_ATTR\_EFFECT\_CAPITALS and wxTEXT\_ATTR\_EFFECT\_STRIKETHROUGH are implemented. +wxTEXT\_ATTR\_EFFECT\_CAPITALS capitalises text when displayed (leaving the case of the actual buffer +text unchanged), and wxTEXT\_ATTR\_EFFECT\_STRIKETHROUGH draws a line through text. + +To set effects, you should also pass wxTEXT\_ATTR\_EFFECTS to \helpref{wxRichTextAttr::SetFlags}{wxrichtextattrsetflags}, and call\rtfsp +\helpref{wxRichTextAttr::SetTextEffectFlags}{wxrichtextattrsettexteffectflags} with the styles (taken from the +above set) that you are interested in setting. + \membersection{wxRichTextAttr::SetURL}\label{wxrichtextattrseturl} \func{void}{SetURL}{\param{const wxString\& }{url}}