X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;ds=sidebyside;f=dali-toolkit%2Finternal%2Ftext%2Ftext-controller.h;h=3e987dd1c6fba8ce58d56f8d54e0ca39c16bdf02;hb=051b90a87f5efbb300abf3f6d3509b903f792e7b;hp=03d8e19454abd4c4adf050cfa43dce153cd726bd;hpb=9c26b8bf8e9f8bc74f809a6ffd2ac2208125bc03;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/text/text-controller.h b/dali-toolkit/internal/text/text-controller.h index 03d8e19..3e987dd 100644 --- a/dali-toolkit/internal/text/text-controller.h +++ b/dali-toolkit/internal/text/text-controller.h @@ -504,6 +504,20 @@ public: // Configure the text controller. bool IsTextFitChanged() const; /** + * @brief Sets disabled color opacity. + * + * @param[in] opacity The color opacity value in disabled state. + */ + void SetDisabledColorOpacity(float opacity); + + /** + * @brief Retrieves the disabled color opacity. + * + * @return The disabled color opacity value for disabled state. + */ + float GetDisabledColorOpacity() const; + + /** * @brief Enable or disable the placeholder text elide. * @param enabled Whether to enable the placeholder text elide. */ @@ -659,6 +673,60 @@ public: // Configure the text controller. */ void FontStyleSetByString(bool setByString); + /** + * @brief Query if Strikethrough settings were provided by string or map + * @return bool true if set by string + */ + bool IsStrikethroughSetByString(); + + /** + * Set method Strikethrough setting were set by + * @param[in] bool, true if set by string + */ + void StrikethroughSetByString(bool setByString); + + /** + * @brief Set the override used for strikethrough height, 0 indicates height will be supplied by font metrics + * + * @param[in] height The height in pixels of the strikethrough + */ + void SetStrikethroughHeight(float height); + + /** + * @brief Retrieves the override height of an strikethrough, 0 indicates height is supplied by font metrics + * + * @return The height of the strikethrough, or 0 if height is not overrided. + */ + float GetStrikethroughHeight() const; + + /** + * @brief Set the strikethrough color. + * + * @param[in] color color of strikethrough. + */ + void SetStrikethroughColor(const Vector4& color); + + /** + * @brief Retrieve the strikethrough color. + * + * @return The strikethrough color. + */ + const Vector4& GetStrikethroughColor() const; + + /** + * @brief Set the strikethrough enabled flag. + * + * @param[in] enabled The strikethrough enabled flag. + */ + void SetStrikethroughEnabled(bool enabled); + + /** + * @brief Returns whether the text has a strikethrough or not. + * + * @return The strikethrough state. + */ + bool IsStrikethroughEnabled() const; + public: // Update. /** * @brief Replaces any text previously set. @@ -950,6 +1018,20 @@ public: // Default style & Input style const Vector4& GetDefaultColor() const; /** + * @brief Sets the user interaction enabled. + * + * @param enabled whether to enable the user interaction. + */ + void SetUserInteractionEnabled(bool enabled); + + /** + * @brief Whether the user interaction is enabled. + * + * @return true if the user interaction is enabled, false otherwise. + */ + bool IsUserInteractionEnabled() const; + + /** * @brief Set the text color * * @param textColor The text color @@ -1048,6 +1130,46 @@ public: // Default style & Input style float GetUnderlineHeight() const; /** + * @brief Sets the underline type. + * @param[in] type The underline type. + */ + void SetUnderlineType(Text::Underline::Type type); + + /** + * @brief Retrieve underline type. + * @return The underline type. + */ + Text::Underline::Type GetUnderlineType() const; + + /** + * @brief Set the width of the dashes of the dashed underline. + * + * @param[in] width The width in pixels of the dashes of the dashed underline. + */ + void SetDashedUnderlineWidth(float width); + + /** + * @brief Retrieves the width of the dashes of the dashed underline. + * + * @return The width of the dashes of the dashed underline. + */ + float GetDashedUnderlineWidth() const; + + /** + * @brief Set the gap between the dashes of the dashed underline. + * + * @param[in] gap The gap between the dashes of the dashed underline. + */ + void SetDashedUnderlineGap(float gap); + + /** + * @brief Retrieves the gap between the dashes of the dashed underline. + * + * @return The The gap between the dashes of the dashed underline. + */ + float GetDashedUnderlineGap() const; + + /** * @brief Set the outline color. * * @param[in] color color of outline. @@ -1168,6 +1290,22 @@ public: // Default style & Input style float GetDefaultLineSize() const; /** + * @brief Sets the relative line size to the original line size. + * + * @param[in] relativeLineSize The relativeline size. + * + * @return True if relativeLineSize has been updated, false otherwise + */ + bool SetRelativeLineSize(float lineSize); + + /** + * @brief Retrieves the relative line size. + * + * @return The relative line size. + */ + float GetRelativeLineSize() const; + + /** * @brief Sets the input text's color. * * @param[in] color The input text's color. @@ -1345,6 +1483,22 @@ public: // Default style & Input style const std::string& GetInputOutlineProperties() const; /** + * @brief Sets the input strikethrough's properties string. + * + * @note The string is stored to be recovered. + * + * @param[in] strikethroughProperties The strikethrough's properties string. + */ + void SetInputStrikethroughProperties(const std::string& strikethroughProperties); + + /** + * @brief Retrieves the input strikethrough's properties string. + * + * @return The strikethrough's properties string. + */ + const std::string& GetInputStrikethroughProperties() const; + + /** * @brief Set the control's interface. * * @param[in] controlInterface The control's interface. @@ -1358,6 +1512,24 @@ public: // Default style & Input style */ void SetAnchorControlInterface(AnchorControlInterface* anchorControlInterface); + /** + * @brief Sets the character spacing. + * + * @note A positive value will make the characters far apart (expanded) and a negative value will bring them closer (condensed). + * + * @param[in] characterSpacing The character spacing. + */ + void SetCharacterSpacing(float characterSpacing); + + /** + * @brief Retrieves the character spacing. + * + * @note A positive value will make the characters far apart (expanded) and a negative value will bring them closer (condensed). + * + * @return The character spacing. + */ + const float GetCharacterSpacing() const; + public: // Queries & retrieves. /** * @brief Return the layout engine. @@ -1552,6 +1724,15 @@ public: // Queries & retrieves. Vector GetTextPosition(CharacterIndex startIndex, CharacterIndex endIndex); /** + * @brief Gets the bounding box of a specific text range. + * + * @param[in] startIndex start index of the text requested to get bounding box to. + * @param[in] endIndex end index(included) of the text requested to get bounding box to. + * @return bounding box of the requested text. + */ + Rect<> GetTextBoundingRectangle(CharacterIndex startIndex, CharacterIndex endIndex); + + /** * @brief Sets the layout direction changed. */ void ChangedLayoutDirection(); @@ -1807,7 +1988,7 @@ protected: // Inherit from Text::Decorator::ControllerInterface. /** * @copydoc Dali::Toolkit::Text::Decorator::ControllerInterface::AddDecoration() */ - void AddDecoration(Actor& actor, bool needsClipping) override; + void AddDecoration(Actor& actor, DecorationType type, bool needsClipping) override; /** * @copydoc Dali::Toolkit::Text::Decorator::ControllerInterface::DecorationEvent()