JUCE: AttributedString Class Reference

JUCE

- Main Page
- Related Pages
- Topics
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | List of all members
AttributedString Class Reference
juce_graphics » fonts

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.

## Detailed Description

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:

- Every character in the string is a member of exactly one attribute.
- Attributes are sorted such that the range-end of attribute 'i' is equal to the range-begin of attribute 'i + 1'.

See also
  TextLayout

## Member Enumeration Documentation

## ◆ WordWrap

enum AttributedString::WordWrap

Types of word-wrap behaviour.

See also
  getWordWrap, setWordWrap

Enumerator
none | No word-wrapping: lines extend indefinitely.
byWord | Lines are wrapped on a word boundary.
byChar | Lines are wrapped on a character boundary.

## ◆ ReadingDirection

enum AttributedString::ReadingDirection

Types of reading direction that can be used.

See also
  getReadingDirection, setReadingDirection

Enumerator
natural |
leftToRight |
rightToLeft |

## Constructor & Destructor Documentation

## ◆ AttributedString() [1/4]

AttributedString::AttributedString | ( |  | ) |
| default

Creates an empty attributed string.

## ◆ AttributedString() [2/4]

AttributedString::AttributedString | ( | const String & | newString | ) |
| explicit

Creates an attributed string with the given text.

## ◆ AttributedString() [3/4]

AttributedString::AttributedString | ( | const AttributedString & |  | ) |
| default

## ◆ AttributedString() [4/4]

AttributedString::AttributedString | ( | AttributedString && |  | ) |
| defaultnoexcept

## Member Function Documentation

## ◆ operator=() [1/2]

AttributedString & AttributedString::operator= | ( | const AttributedString & |  | ) |
| default

## ◆ operator=() [2/2]

AttributedString & AttributedString::operator= | ( | AttributedString && |  | ) |
| defaultnoexcept

## ◆ getText()

const String & AttributedString::getText | ( |  | ) | const
| noexcept

Returns the complete text of this attributed string.

## ◆ setText()

void 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.

## ◆ append() [1/5]

void AttributedString::append | ( | const String & | textToAppend | ) |

Appends some text (with a default font and colour).

## ◆ append() [2/5]

void AttributedString::append | ( | const String & | textToAppend,
|  | const Font & | font
| ) |  |

Appends some text, with a specified font, and the default colour (black).

## ◆ append() [3/5]

void AttributedString::append | ( | const String & | textToAppend,
|  | Colour | colour
| ) |  |

Appends some text, with a specified colour, and the default font.

## ◆ append() [4/5]

void AttributedString::append | ( | const String & | textToAppend,
|  | const Font & | font,
|  | Colour | colour
| ) |  |

Appends some text, with a specified font and colour.

## ◆ append() [5/5]

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.

## ◆ clear()

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.

## ◆ draw()

void AttributedString::draw | ( | Graphics & | g,
|  | const Rectangle< float > & | area
| ) |  | const

Draws this string within the given area.

The layout of the string within the rectangle is controlled by the justification value passed to setJustification().

## ◆ getJustification()

Justification AttributedString::getJustification | ( |  | ) | const
| noexcept

Returns the justification that should be used for laying-out the text.

This may include both vertical and horizontal flags.

## ◆ setJustification()

void AttributedString::setJustification | ( | Justification | newJustification | ) |
| noexcept

Sets the justification that should be used for laying-out the text.

This may include both vertical and horizontal flags.

## ◆ getWordWrap()

WordWrap AttributedString::getWordWrap | ( |  | ) | const
| noexcept

Returns the word-wrapping behaviour.

## ◆ setWordWrap()

void AttributedString::setWordWrap | ( | WordWrap | newWordWrap | ) |
| noexcept

Sets the word-wrapping behaviour.

## ◆ getReadingDirection()

ReadingDirection AttributedString::getReadingDirection | ( |  | ) | const
| noexcept

Returns the reading direction for the text.

## ◆ setReadingDirection()

void AttributedString::setReadingDirection | ( | ReadingDirection | newReadingDirection | ) |
| noexcept

Sets the reading direction that should be used for the text.

## ◆ getLineSpacing()

float AttributedString::getLineSpacing | ( |  | ) | const
| noexcept

Returns the extra line-spacing distance.

## ◆ setLineSpacing()

void AttributedString::setLineSpacing | ( | float | newLineSpacing | ) |
| noexcept

Sets an extra line-spacing distance.

## ◆ getNumAttributes()

int AttributedString::getNumAttributes | ( |  | ) | const
| noexcept

Returns the number of attributes that have been added to this string.

## ◆ getAttribute()

const Attribute & AttributedString::getAttribute | ( | int | index | ) | const
| noexcept

Returns one of the string's attributes.

The index provided must be less than getNumAttributes(), and >= 0.

## ◆ setColour() [1/2]

void AttributedString::setColour | ( | Range< int > | range,
|  | Colour | colour
| ) |  |

Adds a colour attribute for the specified range.

## ◆ setColour() [2/2]

void AttributedString::setColour | ( | Colour | colour | ) |

Removes all existing colour attributes, and applies this colour to the whole string.

## ◆ setFont() [1/2]

void AttributedString::setFont | ( | Range< int > | range,
|  | const Font & | font
| ) |  |

Adds a font attribute for the specified range.

## ◆ setFont() [2/2]

void AttributedString::setFont | ( | const Font & | font | ) |

Removes all existing font attributes, and applies this font to the whole string.

The documentation for this class was generated from the following file:

- juce_AttributedString.h