\section{\class{wxRichTextAttr}}\label{wxrichtextattr}

wxRichTextAttr represents the character and paragraph attributes, or style,
for a range of text in a \helpref{wxRichTextCtrl}{wxrichtextctrl}. This class
is specific to wxRichTextCtrl, although you can also use the
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
as SetFont, the relevant bit will be set.

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}

No base class

\wxheading{Include files}

<wx/richtext/richtextbuffer.h>

\wxheading{Constants}

The following values can be passed to wxRichTextAttr::SetAlignment to determine
paragraph alignment.

{\small
\begin{verbatim}
enum wxTextAttrAlignment
{
    wxTEXT_ALIGNMENT_DEFAULT,
    wxTEXT_ALIGNMENT_LEFT,
    wxTEXT_ALIGNMENT_CENTRE,
    wxTEXT_ALIGNMENT_CENTER = wxTEXT_ALIGNMENT_CENTRE,
    wxTEXT_ALIGNMENT_RIGHT,
    wxTEXT_ALIGNMENT_JUSTIFIED
};
\end{verbatim}
}

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.

{\small
\begin{verbatim}
// Standard wxTextAttr constants

#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               0x00000080
#define wxTEXT_ATTR_LEFT_INDENT             0x00000100
#define wxTEXT_ATTR_RIGHT_INDENT            0x00000200
#define wxTEXT_ATTR_TABS                    0x00000400

// Extra formatting flags not in wxTextAttr

#define wxTEXT_ATTR_PARA_SPACING_AFTER      0x00000800
#define wxTEXT_ATTR_PARA_SPACING_BEFORE     0x00001000
#define wxTEXT_ATTR_LINE_SPACING            0x00002000
#define wxTEXT_ATTR_CHARACTER_STYLE_NAME    0x00004000
#define wxTEXT_ATTR_PARAGRAPH_STYLE_NAME    0x00008000
#define wxTEXT_ATTR_LIST_STYLE_NAME         0x00010000
#define wxTEXT_ATTR_BULLET_STYLE            0x00020000
#define wxTEXT_ATTR_BULLET_NUMBER           0x00040000
#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}
}

The following styles can be passed to wxRichTextAttr::SetBulletStyle:

{\small
\begin{verbatim}
#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}
}

Of these, wxTEXT\_ATTR\_BULLET\_STYLE\_BITMAP is unimplemented.

The following constants can be passed to wxRichTextAttr::SetLineSpacing:

{\small
\begin{verbatim}
#define wxTEXT_ATTR_LINE_SPACING_NORMAL         10
#define wxTEXT_ATTR_LINE_SPACING_HALF           15
#define wxTEXT_ATTR_LINE_SPACING_TWICE          20
\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}

\latexignore{\rtfignore{\wxheading{Members}}}

\membersection{wxRichTextAttr::wxRichTextAttr}\label{wxrichtextattrwxrichtextattr}

\func{}{wxRichTextAttr}{\void}

\func{}{wxRichTextAttr}{\param{const wxColour\& }{colText}, \param{const wxColour\& }{colBack = wxNullColour}, \param{wxTextAttrAlignment }{alignment = wxTEXT\_ALIGNMENT\_DEFAULT}}

\func{}{wxRichTextAttr}{\param{const wxTextAttrEx\& }{attr}}

Constructors.

\membersection{wxRichTextAttr::CopyTo}\label{wxrichtextattrcopyto}

\constfunc{void}{CopyTo}{\param{wxTextAttrEx\& }{attr}}

Copies the wxRichTextAttr attributes to a \helpref{wxTextAttrEx}{wxtextattrex} object.

\membersection{wxRichTextAttr::CreateFont}\label{wxrichtextattrcreatefont}

\constfunc{wxFont}{CreateFont}{\void}

Creates a font from the font attributes.

\membersection{wxRichTextAttr::GetAlignment}\label{wxrichtextattrgetalignment}

\constfunc{wxTextAttrAlignment}{GetAlignment}{\void}

Returns the alignment flags.
See \helpref{wxRichTextAttr::SetAlignment}{wxrichtextattrsetalignment} for a list of available styles.

\membersection{wxRichTextAttr::GetBackgroundColour}\label{wxrichtextattrgetbackgroundcolour}

\constfunc{const wxColour\&}{GetBackgroundColour}{\void}

Returns the background colour.

\membersection{wxRichTextAttr::GetBulletFont}\label{wxrichtextattrgetbulletfont}

\constfunc{const wxString\&}{GetBulletFont}{\void}

Returns a string containing the name of the font associated with the bullet symbol.
Only valid for attributes with wxTEXT\_ATTR\_BULLET\_SYMBOL.

\membersection{wxRichTextAttr::GetBulletName}\label{wxrichtextattrgetbulletname}

\constfunc{const wxString\&}{GetBulletName}{\void}

Returns the standard bullet name, applicable if the bullet style is wxTEXT\_ATTR\_BULLET\_STYLE\_STANDARD.
Currently the following standard bullet names are supported:

\begin{itemize}\itemsep=0pt
\item {\tt standard/circle}
\item {\tt standard/square}
\item {\tt standard/diamond}
\item {\tt standard/triangle}
\end{itemize}

If you wish your application to support further bullet graphics, you can derive a
class from wxRichTextRenderer or wxRichTextStdRenderer, override {\tt DrawStandardBullet} and {\tt EnumerateStandardBulletNames}, and
set an instance of the class using \helpref{wxRichTextBuffer::SetRenderer}{wxrichtextbuffersetrenderer}.

\membersection{wxRichTextAttr::GetBulletNumber}\label{wxrichtextattrgetbulletnumber}

\constfunc{int}{GetBulletNumber}{\void}

Returns the bullet number.

\membersection{wxRichTextAttr::GetBulletStyle}\label{wxrichtextattrgetbulletstyle}

\constfunc{int}{GetBulletStyle}{\void}

Returns the bullet style.
See \helpref{wxRichTextAttr::SetBulletStyle}{wxrichtextattrsetbulletstyle} for a list of available styles.

\membersection{wxRichTextAttr::GetBulletText}\label{wxrichtextattrgetbullettext}

\constfunc{const wxString\&}{GetBulletText}{\void}

Returns the bullet text, which could be a symbol, or (for example) cached outline text.

\membersection{wxRichTextAttr::GetCharacterStyleName}\label{wxrichtextattrgetcharacterstylename}

\constfunc{const wxString\&}{GetCharacterStyleName}{\void}

Returns the name of the character style.

\membersection{wxRichTextAttr::GetFlags}\label{wxrichtextattrgetflags}

\constfunc{long}{GetFlags}{\void}

Returns flags indicating which attributes are applicable.
See \helpref{wxRichTextAttr::SetFlags}{wxrichtextattrsetflags} for a list of available flags.

\membersection{wxRichTextAttr::GetFontAttributes}\label{wxrichtextattrgetfontattributes}

\func{bool}{GetFontAttributes}{\param{const wxFont\& }{font}}

Sets the font attributes from the given font.

\membersection{wxRichTextAttr::GetFontFaceName}\label{wxrichtextattrgetfontfacename}

\constfunc{const wxString\&}{GetFontFaceName}{\void}

Returns the font face name.

\membersection{wxRichTextAttr::GetFontSize}\label{wxrichtextattrgetfontsize}

\constfunc{int}{GetFontSize}{\void}

Returns the font size in points.

\membersection{wxRichTextAttr::GetFontStyle}\label{wxrichtextattrgetfontstyle}

\constfunc{int}{GetFontStyle}{\void}

Returns the font style.

\membersection{wxRichTextAttr::GetFontUnderlined}\label{wxrichtextattrgetfontunderlined}

\constfunc{bool}{GetFontUnderlined}{\void}

Returns \true if the font is underlined.

\membersection{wxRichTextAttr::GetFontWeight}\label{wxrichtextattrgetfontweight}

\constfunc{int}{GetFontWeight}{\void}

Returns the font weight.

\membersection{wxRichTextAttr::GetLeftIndent}\label{wxrichtextattrgetleftindent}

\constfunc{long}{GetLeftIndent}{\void}

Returns the left indent in tenths of a millimetre.

\membersection{wxRichTextAttr::GetLeftSubIndent}\label{wxrichtextattrgetleftsubindent}

\constfunc{long}{GetLeftSubIndent}{\void}

Returns the left sub-indent in tenths of a millimetre.

\membersection{wxRichTextAttr::GetLineSpacing}\label{wxrichtextattrgetlinespacing}

\constfunc{int}{GetLineSpacing}{\void}

Returns the line spacing value, one of wxTEXT\_ATTR\_LINE\_SPACING\_NORMAL,
wxTEXT\_ATTR\_LINE\_SPACING\_HALF, and wxTEXT\_ATTR\_LINE\_SPACING\_TWICE.

\membersection{wxRichTextAttr::GetListStyleName}\label{wxrichtextattrgetliststylename}

\constfunc{const wxString\&}{GetListStyleName}{\void}

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}

Returns the space in tenths of a millimeter after the paragraph.

\membersection{wxRichTextAttr::GetParagraphSpacingBefore}\label{wxrichtextattrgetparagraphspacingbefore}

\constfunc{int}{GetParagraphSpacingBefore}{\void}

Returns the space in tenths of a millimeter before the paragraph.

\membersection{wxRichTextAttr::GetParagraphStyleName}\label{wxrichtextattrgetparagraphstylename}

\constfunc{const wxString\&}{GetParagraphStyleName}{\void}

Returns the name of the paragraph style.

\membersection{wxRichTextAttr::GetRightIndent}\label{wxrichtextattrgetrightindent}

\constfunc{long}{GetRightIndent}{\void}

Returns the right indent in tenths of a millimeter.

\membersection{wxRichTextAttr::GetTabs}\label{wxrichtextattrgettabs}

\constfunc{const wxArrayInt\&}{GetTabs}{\void}

Returns an array of tab stops, each expressed in tenths of a millimeter. Each stop
is measured from the left margin and therefore each value must be larger than the last.

\membersection{wxRichTextAttr::GetTextColour}\label{wxrichtextattrgettextcolour}

\constfunc{const wxColour\&}{GetTextColour}{\void}

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}

Returns the URL for the content. Content with wxTEXT\_ATTR\_URL style
causes wxRichTextCtrl to show a hand cursor over it, and wxRichTextCtrl generates
a wxTextUrlEvent when the content is clicked.

\membersection{wxRichTextAttr::HasAlignment}\label{wxrichtextattrhasalignment}

\constfunc{bool}{HasAlignment}{\void}

Returns \true if the attribute object specifies alignment.

\membersection{wxRichTextAttr::HasBackgroundColour}\label{wxrichtextattrhasbackgroundcolour}

\constfunc{bool}{HasBackgroundColour}{\void}

Returns \true if the attribute object specifies a background colour.

\membersection{wxRichTextAttr::HasBulletName}\label{wxrichtextattrhasbulletname}

\constfunc{bool}{HasBulletName}{\void}

Returns \true if the attribute object specifies a standard bullet name.

\membersection{wxRichTextAttr::HasBulletNumber}\label{wxrichtextattrhasbulletnumber}

\constfunc{bool}{HasBulletNumber}{\void}

Returns \true if the attribute object specifies a bullet number.

\membersection{wxRichTextAttr::HasBulletStyle}\label{wxrichtextattrhasbulletstyle}

\constfunc{bool}{HasBulletStyle}{\void}

Returns \true if the attribute object specifies a bullet style.

\membersection{wxRichTextAttr::HasBulletText}\label{wxrichtextattrhasbullettext}

\constfunc{bool}{HasBulletText}{\void}

Returns \true if the attribute object specifies bullet text (usually specifying a symbol).

\membersection{wxRichTextAttr::HasCharacterStyleName}\label{wxrichtextattrhascharacterstylename}

\constfunc{bool}{HasCharacterStyleName}{\void}

Returns \true if the attribute object specifies a character style name.

\membersection{wxRichTextAttr::HasFaceName}\label{wxrichtextattrhasfacename}

\constfunc{bool}{HasFaceName}{\void}

Returns \true if the attribute object specifies a font face name.

\membersection{wxRichTextAttr::HasFlag}\label{wxrichtextattrhasflag}

\constfunc{bool}{HasFlag}{\param{long }{flag}}

Returns \true if the {\it flag} is present in the attribute object's flag bitlist.

\membersection{wxRichTextAttr::HasFont}\label{wxrichtextattrhasfont}

\constfunc{bool}{HasFont}{\void}

Returns \true if the attribute object specifies any font attributes.

\membersection{wxRichTextAttr::HasItalic}\label{wxrichtextattrhasitalic}

\constfunc{bool}{HasItalic}{\void}

Returns \true if the attribute object specifies italic style.

\membersection{wxRichTextAttr::HasLeftIndent}\label{wxrichtextattrhasleftindent}

\constfunc{bool}{HasLeftIndent}{\void}

Returns \true if the attribute object specifies a left indent.

\membersection{wxRichTextAttr::HasLineSpacing}\label{wxrichtextattrhaslinespacing}

\constfunc{bool}{HasLineSpacing}{\void}

Returns \true if the attribute object specifies line spacing.

\membersection{wxRichTextAttr::HasListStyleName}\label{wxrichtextattrhasliststylename}

\constfunc{bool}{HasListStyleName}{\void}

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}

Returns \true if the attribute object specifies spacing after a paragraph.

\membersection{wxRichTextAttr::HasParagraphSpacingBefore}\label{wxrichtextattrhasparagraphspacingbefore}

\constfunc{bool}{HasParagraphSpacingBefore}{\void}

Returns \true if the attribute object specifies spacing before a paragraph.

\membersection{wxRichTextAttr::HasParagraphStyleName}\label{wxrichtextattrhasparagraphstylename}

\constfunc{bool}{HasParagraphStyleName}{\void}

Returns \true if the attribute object specifies a paragraph style name.

\membersection{wxRichTextAttr::HasRightIndent}\label{wxrichtextattrhasrightindent}

\constfunc{bool}{HasRightIndent}{\void}

Returns \true if the attribute object specifies a right indent.

\membersection{wxRichTextAttr::HasSize}\label{wxrichtextattrhassize}

\constfunc{bool}{HasSize}{\void}

Returns \true if the attribute object specifies a font point size.

\membersection{wxRichTextAttr::HasTabs}\label{wxrichtextattrhastabs}

\constfunc{bool}{HasTabs}{\void}

Returns \true if the attribute object specifies tab stops.

\membersection{wxRichTextAttr::HasTextColour}\label{wxrichtextattrhastextcolour}

\constfunc{bool}{HasTextColour}{\void}

Returns \true if the attribute object specifies a text foreground colour.

\membersection{wxRichTextAttr::HasTextEffects}\label{wxrichtextattrhastexteffects}

\constfunc{bool}{HasTextEffects}{\void}

Returns \true if the attribute object specifies text effects.

\membersection{wxRichTextAttr::HasUnderlined}\label{wxrichtextattrhasunderlined}

\constfunc{bool}{HasUnderlined}{\void}

Returns \true if the attribute object specifies either underlining or no underlining.

\membersection{wxRichTextAttr::HasURL}\label{wxrichtextattrhasurl}

\constfunc{bool}{HasURL}{\void}

Returns \true if the attribute object specifies a URL.

\membersection{wxRichTextAttr::HasWeight}\label{wxrichtextattrhasweight}

\constfunc{bool}{HasWeight}{\void}

Returns \true if the attribute object specifies font weight (bold, light or normal).

\membersection{wxRichTextAttr::Init}\label{wxrichtextattrinit}

\func{void}{Init}{\void}

Initialise the object.

\membersection{wxRichTextAttr::IsCharacterStyle}\label{wxrichtextattrischaracterstyle}

\constfunc{bool}{IsCharacterStyle}{\void}

Returns \true if the object represents a character style, that is,
the flags specify a font or a text background or foreground colour.

\membersection{wxRichTextAttr::IsDefault}\label{wxrichtextattrisdefault}

\constfunc{bool}{IsDefault}{\void}

Returns \false if we have any attributes set, \true otherwise.

\membersection{wxRichTextAttr::IsParagraphStyle}\label{wxrichtextattrisparagraphstyle}

\constfunc{bool}{IsParagraphStyle}{\void}

Returns \true if the object represents a paragraph style, that is,
the flags specify alignment, indentation, tabs, paragraph spacing, or
bullet style.

\membersection{wxRichTextAttr::SetAlignment}\label{wxrichtextattrsetalignment}

\func{void}{SetAlignment}{\param{wxTextAttrAlignment }{alignment}}

Sets the paragraph alignment. These are the possible values for {\it alignment}:

{\small
\begin{verbatim}
enum wxTextAttrAlignment
{
    wxTEXT_ALIGNMENT_DEFAULT,
    wxTEXT_ALIGNMENT_LEFT,
    wxTEXT_ALIGNMENT_CENTRE,
    wxTEXT_ALIGNMENT_CENTER = wxTEXT_ALIGNMENT_CENTRE,
    wxTEXT_ALIGNMENT_RIGHT,
    wxTEXT_ALIGNMENT_JUSTIFIED
};
\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}}

Sets the background colour.

\membersection{wxRichTextAttr::SetBulletFont}\label{wxrichtextattrsetbulletfont}

\func{void}{SetBulletFont}{\param{const wxString\& }{font}}

Sets the name of the font associated with the bullet symbol.
Only valid for attributes with wxTEXT\_ATTR\_BULLET\_SYMBOL.

\membersection{wxRichTextAttr::SetBulletName}\label{wxrichtextattrsetbulletname}

\func{void}{SetBulletName}{\param{const wxString\& }{name}}

Sets the standard bullet name, applicable if the bullet style is wxTEXT\_ATTR\_BULLET\_STYLE\_STANDARD.
See \helpref{wxRichTextAttr::GetBulletName}{wxrichtextattrgetbulletname} for a list
of supported names, and how to expand the range of supported types.

\membersection{wxRichTextAttr::SetBulletNumber}\label{wxrichtextattrsetbulletnumber}

\func{void}{SetBulletNumber}{\param{int }{n}}

Sets the bullet number.

\membersection{wxRichTextAttr::SetBulletStyle}\label{wxrichtextattrsetbulletstyle}

\func{void}{SetBulletStyle}{\param{int }{style}}

Sets the bullet style. The following styles can be passed:

{\small
\begin{verbatim}
#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}
}

Currently wxTEXT\_ATTR\_BULLET\_STYLE\_BITMAP is not supported.

\membersection{wxRichTextAttr::SetBulletText}\label{wxrichtextattrsetbullettext}

\func{void}{SetBulletText}{\param{const wxString& }{text}}

Sets the bullet text, which could be a symbol, or (for example) cached outline text.

\membersection{wxRichTextAttr::SetCharacterStyleName}\label{wxrichtextattrsetcharacterstylename}

\func{void}{SetCharacterStyleName}{\param{const wxString\& }{name}}

Sets the character style name.

\membersection{wxRichTextAttr::SetFlags}\label{wxrichtextattrsetflags}

\func{void}{SetFlags}{\param{long }{flags}}

Sets the flags determining which styles are being specified. The following
flags can be passed in a bitlist:

{\small
\begin{verbatim}
// Standard wxTextAttr constants

#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               0x00000080
#define wxTEXT_ATTR_LEFT_INDENT             0x00000100
#define wxTEXT_ATTR_RIGHT_INDENT            0x00000200
#define wxTEXT_ATTR_TABS                    0x00000400

// Extra formatting flags not in wxTextAttr

#define wxTEXT_ATTR_PARA_SPACING_AFTER      0x00000800
#define wxTEXT_ATTR_PARA_SPACING_BEFORE     0x00001000
#define wxTEXT_ATTR_LINE_SPACING            0x00002000
#define wxTEXT_ATTR_CHARACTER_STYLE_NAME    0x00004000
#define wxTEXT_ATTR_PARAGRAPH_STYLE_NAME    0x00008000
#define wxTEXT_ATTR_LIST_STYLE_NAME         0x00010000
#define wxTEXT_ATTR_BULLET_STYLE            0x00020000
#define wxTEXT_ATTR_BULLET_NUMBER           0x00040000
#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}
}

\membersection{wxRichTextAttr::SetFontFaceName}\label{wxrichtextattrsetfontfacename}

\func{void}{SetFontFaceName}{\param{const wxString\& }{faceName}}

Sets the paragraph alignment.

\membersection{wxRichTextAttr::SetFontSize}\label{wxrichtextattrsetfontsize}

\func{void}{SetFontSize}{\param{int }{pointSize}}

Sets the font size in points.

\membersection{wxRichTextAttr::SetFontStyle}\label{wxrichtextattrsetfontstyle}

\func{void}{SetFontStyle}{\param{int }{fontStyle}}

Sets the font style (normal, italic or slanted).

\membersection{wxRichTextAttr::SetFontUnderlined}\label{wxrichtextattrsetfontunderlined}

\func{void}{SetFontUnderlined}{\param{bool }{underlined}}

Sets the font underlining.

\membersection{wxRichTextAttr::SetFontWeight}\label{wxrichtextattrsetfontweight}

\func{void}{SetFontWeight}{\param{int }{fontWeight}}

Sets the font weight.

\membersection{wxRichTextAttr::SetLeftIndent}\label{wxrichtextattrsetleftindent}

\func{void}{SetLeftIndent}{\param{int }{indent}, \param{int }{subIndent = 0}}

Sets the left indent and left subindent in tenths of a millimetre.

The sub-indent is an offset from the left of the paragraph, and is used for all but the
first line in a paragraph. A positive value will cause the first line to appear to the left
of the subsequent lines, and a negative value will cause the first line to be indented
relative to the subsequent lines.

wxRichTextBuffer uses indentation to render a bulleted item. The left indent is the distance between
the margin and the bullet. The content of the paragraph, including the first line, starts
at leftMargin + leftSubIndent. So the distance between the left edge of the bullet and the
left of the actual paragraph is leftSubIndent.

\membersection{wxRichTextAttr::SetLineSpacing}\label{wxrichtextattrsetlinespacing}

\func{void}{SetLineSpacing}{\param{int }{spacing}}

Sets the line spacing. {\it spacing} is a multiple, where 10 means single-spacing,
15 means 1.5 spacing, and 20 means double spacing. The following constants are
defined for convenience:

{\small
\begin{verbatim}
#define wxTEXT_ATTR_LINE_SPACING_NORMAL         10
#define wxTEXT_ATTR_LINE_SPACING_HALF           15
#define wxTEXT_ATTR_LINE_SPACING_TWICE          20
\end{verbatim}
}

\membersection{wxRichTextAttr::SetListStyleName}\label{wxrichtextattrsetliststylename}

\func{void}{SetListStyleName}{\param{const wxString\& }{name}}

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}}

Sets the spacing after a paragraph, in tenths of a millimetre.

\membersection{wxRichTextAttr::SetParagraphSpacingBefore}\label{wxrichtextattrsetparagraphspacingbefore}

\func{void}{SetParagraphSpacingBefore}{\param{int }{spacing}}

Sets the spacing before a paragraph, in tenths of a millimetre.

\membersection{wxRichTextAttr::SetParagraphStyleName}\label{wxrichtextattrsetparagraphstylename}

\func{void}{SetParagraphStyleName}{\param{const wxString\& }{name}}

Sets the name of the paragraph style.

\membersection{wxRichTextAttr::SetRightIndent}\label{wxrichtextattrsetrightindent}

\func{void}{SetRightIndent}{\param{int }{indent}}

Sets the right indent in tenths of a millimetre.

\membersection{wxRichTextAttr::SetTabs}\label{wxrichtextattrsettabs}

\func{void}{SetTabs}{\param{const wxArrayInt\& }{tabs}}

Sets the tab stops, expressed in tenths of a millimetre.
Each stop is measured from the left margin and therefore each value must be larger than the last.

\membersection{wxRichTextAttr::SetTextColour}\label{wxrichtextattrsettextcolour}

\func{void}{SetTextColour}{\param{const wxColour\& }{colText}}

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}}

Sets the URL for the content. Sets the wxTEXT\_ATTR\_URL style; content with this style
causes wxRichTextCtrl to show a hand cursor over it, and wxRichTextCtrl generates
a wxTextUrlEvent when the content is clicked.

\membersection{wxRichTextAttr::operator=}\label{wxrichtextattroperatorassign}

\func{void operator}{operator=}{\param{const wxTextAttrEx\& }{attr}}

Assignment from a \helpref{wxTextAttrEx}{wxtextattr} object.

\func{void operator}{operator=}{\param{const wxRichTextAttr\& }{attr}}

Assignment from a \helpref{wxRichTextAttr}{wxrichtextattr} object.

\membersection{wxRichTextAttr::wxTextAttrEx}\label{wxrichtextattrwxtextattrex}

\constfunc{operator}{wxTextAttrEx}{\void}

Makes a \helpref{wxTextAttrEx}{wxtextattrex} object from this object.

