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 | ReadingDirection { natural, leftToRight, rightToLeft } |
Types of reading direction that can be used. More... | |
enum | WordWrap { none, byWord, byChar } |
Types of word-wrap behaviour. More... | |
Public Member Functions | |
AttributedString ()=default | |
Creates an empty attributed string. More... | |
AttributedString (AttributedString &&) noexcept=default | |
AttributedString (const AttributedString &)=default | |
AttributedString (const String &newString) | |
Creates an attributed string with the given text. More... | |
void | append (const AttributedString &other) |
Appends another AttributedString to this one. More... | |
void | append (const String &textToAppend) |
Appends some text (with a default font and colour). More... | |
void | append (const String &textToAppend, Colour colour) |
Appends some text, with a specified colour, and the default font. More... | |
void | append (const String &textToAppend, const Font &font) |
Appends some text, with a specified font, and the default colour (black). More... | |
void | append (const String &textToAppend, const Font &font, Colour colour) |
Appends some text, with a specified font and colour. More... | |
void | clear () |
Resets the string, clearing all text and attributes. More... | |
void | draw (Graphics &g, const Rectangle< float > &area) const |
Draws this string within the given area. More... | |
const Attribute & | getAttribute (int index) const noexcept |
Returns one of the string's attributes. More... | |
Justification | getJustification () const noexcept |
Returns the justification that should be used for laying-out the text. More... | |
float | getLineSpacing () const noexcept |
Returns the extra line-spacing distance. More... | |
int | getNumAttributes () const noexcept |
Returns the number of attributes that have been added to this string. More... | |
ReadingDirection | getReadingDirection () const noexcept |
Returns the reading direction for the text. More... | |
const String & | getText () const noexcept |
Returns the complete text of this attributed string. More... | |
WordWrap | getWordWrap () const noexcept |
Returns the word-wrapping behaviour. More... | |
AttributedString & | operator= (AttributedString &&) noexcept=default |
AttributedString & | operator= (const AttributedString &)=default |
void | setColour (Colour colour) |
Removes all existing colour attributes, and applies this colour to the whole string. More... | |
void | setColour (Range< int > range, Colour colour) |
Adds a colour attribute for the specified range. More... | |
void | setFont (const Font &font) |
Removes all existing font attributes, and applies this font to the whole string. More... | |
void | setFont (Range< int > range, const Font &font) |
Adds a font attribute for the specified range. More... | |
void | setJustification (Justification newJustification) noexcept |
Sets the justification that should be used for laying-out the text. More... | |
void | setLineSpacing (float newLineSpacing) noexcept |
Sets an extra line-spacing distance. More... | |
void | setReadingDirection (ReadingDirection newReadingDirection) noexcept |
Sets the reading direction that should be used for the text. More... | |
void | setText (const String &newText) |
Replaces all the text. More... | |
void | setWordWrap (WordWrap newWordWrap) noexcept |
Sets the word-wrapping behaviour. More... | |
Private Attributes | |
Array< Attribute > | attributes |
Justification | justification = Justification::left |
float | lineSpacing = 0.0f |
ReadingDirection | readingDirection = AttributedString::natural |
String | text |
WordWrap | wordWrap = AttributedString::byWord |
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:
@tags{Graphics}
Types of reading direction that can be used.
Enumerator | |
---|---|
natural | |
leftToRight | |
rightToLeft |
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. |
|
default |
Creates an empty attributed string.
|
inlineexplicit |
Creates an attributed string with the given text.
|
default |
|
defaultnoexcept |
void juce::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 juce::AttributedString::append | ( | const String & | textToAppend | ) |
Appends some text (with a default font and colour).
Appends some text, with a specified colour, and the default font.
Appends some text, with a specified font, and the default colour (black).
void juce::AttributedString::append | ( | const String & | textToAppend, |
const Font & | font, | ||
Colour | colour | ||
) |
Appends some text, with a specified font and colour.
void juce::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().
Returns one of the string's attributes.
The index provided must be less than getNumAttributes(), and >= 0.
References juce::gl::index.
|
inlinenoexcept |
Returns the justification that should be used for laying-out the text.
This may include both vertical and horizontal flags.
|
inlinenoexcept |
Returns the extra line-spacing distance.
|
inlinenoexcept |
Returns the number of attributes that have been added to this string.
|
inlinenoexcept |
Returns the reading direction for the text.
|
inlinenoexcept |
Returns the complete text of this attributed string.
References juce::UnitTestCategories::text.
|
inlinenoexcept |
Returns the word-wrapping behaviour.
|
defaultnoexcept |
|
default |
void juce::AttributedString::setColour | ( | Colour | colour | ) |
Removes all existing colour attributes, and applies this colour to the whole string.
Adds a colour attribute for the specified range.
void juce::AttributedString::setFont | ( | const Font & | font | ) |
Removes all existing font attributes, and applies this font to the whole string.
Adds a font attribute for the specified range.
|
noexcept |
Sets the justification that should be used for laying-out the text.
This may include both vertical and horizontal flags.
|
noexcept |
Sets an extra line-spacing distance.
|
noexcept |
Sets the reading direction that should be used for the text.
void juce::AttributedString::setText | ( | const String & | newText | ) |
Replaces all the text.
This will change the text, but won't affect any of the colour or font attributes that have been added.
|
noexcept |
Sets the word-wrapping behaviour.
|
private |
|
private |
|
private |
|
private |
|
private |