A text string with a set of colour/font settings that are associated with sub-ranges of the text. More...
#include <juce_AttributedString.h>
Classes | |
class | Attribute |
An attribute that has been applied to a range of characters in an AttributedString. More... | |
Public Types | |
enum | WordWrap { none , byWord , byChar } |
Types of word-wrap behaviour. More... | |
enum | ReadingDirection { natural , leftToRight , rightToLeft } |
Types of reading direction that can be used. More... | |
Public Member Functions | |
AttributedString ()=default | |
Creates an empty attributed string. | |
AttributedString (const String &newString) | |
Creates an attributed string with the given text. | |
AttributedString (const AttributedString &)=default | |
AttributedString & | operator= (const AttributedString &)=default |
AttributedString (AttributedString &&) noexcept=default | |
AttributedString & | operator= (AttributedString &&) noexcept=default |
const String & | getText () const noexcept |
Returns the complete text of this attributed string. | |
void | setText (const String &newText) |
Replaces all the text. | |
void | append (const String &textToAppend) |
Appends some text (with a default font and colour). | |
void | append (const String &textToAppend, const Font &font) |
Appends some text, with a specified font, and the default colour (black). | |
void | append (const String &textToAppend, Colour colour) |
Appends some text, with a specified colour, and the default font. | |
void | append (const String &textToAppend, const Font &font, Colour colour) |
Appends some text, with a specified font and colour. | |
void | append (const AttributedString &other) |
Appends another AttributedString to this one. | |
void | clear () |
Resets the string, clearing all text and attributes. | |
void | draw (Graphics &g, const Rectangle< float > &area) const |
Draws this string within the given area. | |
Justification | getJustification () const noexcept |
Returns the justification that should be used for laying-out the text. | |
void | setJustification (Justification newJustification) noexcept |
Sets the justification that should be used for laying-out the text. | |
WordWrap | getWordWrap () const noexcept |
Returns the word-wrapping behaviour. | |
void | setWordWrap (WordWrap newWordWrap) noexcept |
Sets the word-wrapping behaviour. | |
ReadingDirection | getReadingDirection () const noexcept |
Returns the reading direction for the text. | |
void | setReadingDirection (ReadingDirection newReadingDirection) noexcept |
Sets the reading direction that should be used for the text. | |
float | getLineSpacing () const noexcept |
Returns the extra line-spacing distance. | |
void | setLineSpacing (float newLineSpacing) noexcept |
Sets an extra line-spacing distance. | |
int | getNumAttributes () const noexcept |
Returns the number of attributes that have been added to this string. | |
const Attribute & | getAttribute (int index) const noexcept |
Returns one of the string's attributes. | |
void | setColour (Range< int > range, Colour colour) |
Adds a colour attribute for the specified range. | |
void | setColour (Colour colour) |
Removes all existing colour attributes, and applies this colour to the whole string. | |
void | setFont (Range< int > range, const Font &font) |
Adds a font attribute for the specified range. | |
void | setFont (const Font &font) |
Removes all existing font attributes, and applies this font to the whole string. | |
A text string with a set of colour/font settings that are associated with sub-ranges of the text.
An attributed string lets you create a string with varied fonts, colours, word-wrapping, layout, etc., and draw it using AttributedString::draw().
Invariants:
Types of word-wrap behaviour.
Enumerator | |
---|---|
none | No word-wrapping: lines extend indefinitely. |
byWord | Lines are wrapped on a word boundary. |
byChar | Lines are wrapped on a character boundary. |
Types of reading direction that can be used.
Enumerator | |
---|---|
natural | |
leftToRight | |
rightToLeft |
|
default |
Creates an empty attributed string.
Creates an attributed string with the given text.
|
default |
|
defaultnoexcept |
|
default |
|
defaultnoexcept |
Returns the complete text of this attributed string.
Replaces all the text.
This will change the text, but won't affect any of the colour or font attributes that have been added.
Appends some text (with a default font and colour).
Appends some text, with a specified font, and the default colour (black).
Appends some text, with a specified colour, and the default font.
Appends some text, with a specified font and colour.
void AttributedString::append | ( | const AttributedString & | other | ) |
Appends another AttributedString to this one.
Note that this will only append the text, fonts, and colours - it won't copy any other properties such as justification, line-spacing, etc from the other object.
void AttributedString::clear | ( | ) |
Resets the string, clearing all text and attributes.
Note that this won't affect global settings like the justification type, word-wrap mode, etc.
Draws this string within the given area.
The layout of the string within the rectangle is controlled by the justification value passed to setJustification().
|
noexcept |
Returns the justification that should be used for laying-out the text.
This may include both vertical and horizontal flags.
|
noexcept |
Sets the justification that should be used for laying-out the text.
This may include both vertical and horizontal flags.
|
noexcept |
Returns the word-wrapping behaviour.
Sets the word-wrapping behaviour.
|
noexcept |
Returns the reading direction for the text.
|
noexcept |
Sets the reading direction that should be used for the text.
|
noexcept |
Returns the extra line-spacing distance.
Sets an extra line-spacing distance.
|
noexcept |
Returns the number of attributes that have been added to this string.
Returns one of the string's attributes.
The index provided must be less than getNumAttributes(), and >= 0.
Adds a colour attribute for the specified range.
Removes all existing colour attributes, and applies this colour to the whole string.
Adds a font attribute for the specified range.
Removes all existing font attributes, and applies this font to the whole string.