+ return static_cast< TextVisual& >( Toolkit::GetImplementation( visual ).GetVisualObject() );
+ };
+
+private:
+
+ /**
+ * Used as an alternative to boolean so that it is obvious whether the text contains single or multiple text colors, and emoji and styles.
+ */
+ struct TextType
+ {
+ enum Type
+ {
+ SINGLE_COLOR_TEXT = 0, ///< The text contains single color only.
+ MULTI_COLOR_TEXT = 1, ///< The text contains multiple colors.
+ NO_EMOJI = 0, ///< The text contains no emoji.
+ HAS_EMOJI = 1, ///< The text contains emoji.
+ NO_STYLES = 0, ///< The text contains contains no styles.
+ HAS_SYLES = 1 ///< The text contains contains styles.
+ };