ArcGIS Developers
Dashboard

LabelStackSeparator Class

class Esri::ArcGISRuntime::LabelStackSeparator

A separator character in a label, where a line break may be inserted in long text. More...

Header: #include <LabelStackSeparator>
Since: Esri::ArcGISRuntime 100.11
Inherits: Esri::ArcGISRuntime::Object and Esri::ArcGISRuntime::JsonSerializable

This class was introduced in Esri::ArcGISRuntime 100.11.

Public Functions

LabelStackSeparator(QObject *parent = nullptr)
virtual ~LabelStackSeparator() override
Esri::ArcGISRuntime::LabelStackSeparatorBreakPosition breakPosition() const
bool isForced() const
bool isVisible() const
QString separator() const
void setBreakPosition(Esri::ArcGISRuntime::LabelStackSeparatorBreakPosition breakPosition)
void setForced(bool forced)
void setSeparator(const QString &separator)
void setVisible(bool visible)

Reimplemented Public Functions

virtual QString toJson() const override
virtual QJsonObject unknownJson() const override
virtual QJsonObject unsupportedJson() const override

Static Public Members

Esri::ArcGISRuntime::LabelStackSeparator *fromJson(const QString &json, QObject *parent)

Detailed Description

A single separator consists of: - the separator character that should potentially be replaced by a line break - if the separator should always be used for line break - if the separator should remain visible - if the separator should appear at the end of one row, or the beginning of the next.

Member Function Documentation

LabelStackSeparator::LabelStackSeparator(QObject *parent = nullptr)

Creates a label stack separator with default values.

  • parent - The optional parent QObject.

The default separator has an empty separator and will be ignored.

[override virtual] LabelStackSeparator::~LabelStackSeparator()

Destructor.

Esri::ArcGISRuntime::LabelStackSeparatorBreakPosition LabelStackSeparator::breakPosition() const

Returns the position where the separator will be written, if used and remaining visible.

Determines whether the separator code point should appear at the end of one row, or the beginning of the next, if chosen as a line break position. This does not matter if the separator is not to be visible when used. The default value is LabelStackSeparatorBreakPosition::Automatic, which will give the same behavior as LabelStackSeparatorBreakPosition::After.

See also setBreakPosition().

[static] Esri::ArcGISRuntime::LabelStackSeparator *LabelStackSeparator::fromJson(const QString &json, QObject *parent)

Creates a new LabelStackSeparator from its JSON representation.

  • json - See
  • parent - The optional parent QObject.

See also JsonSerializable.

bool LabelStackSeparator::isForced() const

Returns whether a line break must be inserted when the separator is encountered.

The default value is false.

bool LabelStackSeparator::isVisible() const

Returns whether the separator should still be visible, if chosen as a line break position.

For example, a user may wish to keep a hyphenation mark at the end of a row of text, but hide a comma. The default value is false.

QString LabelStackSeparator::separator() const

Returns a QString intended to describe one code point.

Each LabelStackSeparator specifies a code point to be looked for in the text. A code point is often thought of as a single character in the text, but may need several chars in a QString to describe it. For example: - to use a comma as a separator, the separator string would be just "," - to use a Hebrew punctuation Paseq as a separator, the separator would need to encode the code point with utf16 value "\u05c0" if your SDK uses utf16 strings (e.g. Java, c#) or with the utf8 string "\x30\x35\x63\x30" if your SDK uses utf8 strings - to use higher range unicode code points such as Aegean Word Separator Dot (which has utf32 hex value 10101), the separator would need to encode the code point with utf16 value "\ud800\udd01" if your SDK uses utf16 strings (e.g. Java, c#) or with the utf8 string "\xf0\x90\x84\x81" if your SDK uses utf8 strings.

The default value is an empty string, meaning that the LabelStackSeparator will be ignored.

See also setSeparator().

void LabelStackSeparator::setBreakPosition(Esri::ArcGISRuntime::LabelStackSeparatorBreakPosition breakPosition)

Sets the breakPosition to breakPosition.

See also breakPosition.

void LabelStackSeparator::setForced(bool forced)

Sets the forced to forced.

See also isForced.

void LabelStackSeparator::setSeparator(const QString &separator)

Sets the separator to separator.

See also separator.

void LabelStackSeparator::setVisible(bool visible)

Sets the visible to visible.

See also isVisible.

[override virtual] QString LabelStackSeparator::toJson() const

Reimplements: JsonSerializable::toJson() const.

See

See also JsonSerializable.

[override virtual] QJsonObject LabelStackSeparator::unknownJson() const

Reimplements: JsonSerializable::unknownJson() const.

Gets the unknown JSON of this object.

See also JsonSerializable.

[override virtual] QJsonObject LabelStackSeparator::unsupportedJson() const

Reimplements: JsonSerializable::unsupportedJson() const.

Gets the unsupported JSON of this object.

See also JsonSerializable.


Feedback on this topic?