+ * @brief Sets the maximum number of characters that can be inserted into the TextModel
+ *
+ * @param[in] maxCharacters maximum number of characters to be accepted
+ */
+ void SetMaximumNumberOfCharacters( Length maxCharacters );
+
+ /**
+ * @brief Sets the maximum number of characters that can be inserted into the TextModel
+ *
+ * @param[in] maxCharacters maximum number of characters to be accepted
+ */
+ int GetMaximumNumberOfCharacters();
+
+ /**
+ * @brief Called to enable/disable cursor blink.
+ *
+ * @note Only editable controls should calls this.
+ * @param[in] enabled Whether the cursor should blink or not.
+ */
+ void SetEnableCursorBlink( bool enable );
+
+ /**
+ * @brief Query whether cursor blink is enabled.
+ *
+ * @return Whether the cursor should blink or not.
+ */
+ bool GetEnableCursorBlink() const;
+
+ /**
+ * @brief Whether to enable the multi-line layout.
+ *
+ * @param[in] enable \e true enables the multi-line (by default)
+ */
+ void SetMultiLineEnabled( bool enable );
+
+ /**
+ * @return Whether the multi-line layout is enabled.
+ */
+ bool IsMultiLineEnabled() const;
+
+ /**
+ * @brief Sets the text's horizontal alignment.
+ *
+ * @param[in] alignment The horizontal alignment.
+ */
+ void SetHorizontalAlignment( Layout::HorizontalAlignment alignment );
+
+ /**
+ * @copydoc ModelInterface::GetHorizontalAlignment()
+ */
+ Layout::HorizontalAlignment GetHorizontalAlignment() const;
+
+ /**
+ * @brief Sets the text's vertical alignment.
+ *
+ * @param[in] alignment The vertical alignment.
+ */
+ void SetVerticalAlignment( Layout::VerticalAlignment alignment );
+
+ /**
+ * @copydoc ModelInterface::GetVerticalAlignment()
+ */
+ Layout::VerticalAlignment GetVerticalAlignment() const;
+
+ /**
+ * @brief Sets the text's wrap mode
+ * @param[in] text wrap mode The unit of wrapping
+ */
+ void SetLineWrapMode( Layout::LineWrap::Mode textWarpMode );
+
+ /**
+ * @brief Retrieve text wrap mode previously set.
+ * @return text wrap mode
+ */
+ Layout::LineWrap::Mode GetLineWrapMode() const;
+
+ /**
+ * @brief Enable or disable the text elide.
+ *
+ * @param[in] enabled Whether to enable the text elide.
+ */
+ void SetTextElideEnabled( bool enabled );
+
+ /**
+ * @copydoc ModelInterface::IsTextElideEnabled()
+ */
+ bool IsTextElideEnabled() const;
+
+ /**
+ * @brief Enable or disable the text selection.
+ * @param[in] enabled Whether to enable the text selection.
+ */
+ void SetSelectionEnabled( bool enabled );
+
+ /**
+ * @brief Whether the text selection is enabled or not.
+ * @return True if the text selection is enabled
+ */
+ bool IsSelectionEnabled() const;
+
+ /**
+ * @brief Sets input type to password
+ *
+ * @note The string is displayed hidden character
+ *
+ * @param[in] passwordInput True if password input is enabled.
+ */
+ void SetInputModePassword( bool passwordInput );
+
+ /**
+ * @brief Returns whether the input mode type is set as password.
+ *
+ * @return True if input mode type is password
+ */
+ bool IsInputModePassword();
+
+ /**
+ * @brief Sets the action when there is a double tap event on top of a text area with no text.
+ *
+ * @param[in] action The action to do.
+ */
+ void SetNoTextDoubleTapAction( NoTextTap::Action action );
+
+ /**
+ * @brief Retrieves the action when there is a double tap event on top of a text area with no text.
+ *
+ * @return The action to do.
+ */
+ NoTextTap::Action GetNoTextDoubleTapAction() const;
+
+ /**
+ * @briefSets the action when there is a long press event on top of a text area with no text.
+ *
+ * @param[in] action The action to do.
+ */
+ void SetNoTextLongPressAction( NoTextTap::Action action );
+
+ /**
+ * @brief Retrieves the action when there is a long press event on top of a text area with no text.
+ *
+ * @return The action to do.
+ */
+ NoTextTap::Action GetNoTextLongPressAction() const;
+
+ /**
+ * @brief Query if Underline settings were provided by string or map
+ * @return bool true if set by string
+ */
+ bool IsUnderlineSetByString();
+
+ /**
+ * Set method underline setting were set by
+ * @param[in] bool, true if set by string
+ */
+ void UnderlineSetByString( bool setByString );
+
+ /**
+ * @brief Query if shadow settings were provided by string or map
+ * @return bool true if set by string
+ */
+ bool IsShadowSetByString();
+
+ /**
+ * Set method shadow setting were set by
+ * @param[in] bool, true if set by string
+ */
+ void ShadowSetByString( bool setByString );
+
+ /**
+ * @brief Query if font style settings were provided by string or map
+ * @return bool true if set by string
+ */
+ bool IsFontStyleSetByString();
+
+ /**
+ * Set method font style setting were set by
+ * @param[in] bool, true if set by string
+ */
+ void FontStyleSetByString( bool setByString );
+
+public: // Update.
+
+ /**