X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Ftext%2Ftext-controller.h;h=09305d252796da4c87e9083a27e3c412fc64ec06;hb=414fde1d3caad7cf88baecbeb62df75eccaa1499;hp=da396c90b78e0c577d9543c2a3e5e5d9ce6fb548;hpb=fb87251cfeff34418a36798700b81786e522018a;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 da396c9..09305d2 100644 --- a/dali-toolkit/internal/text/text-controller.h +++ b/dali-toolkit/internal/text/text-controller.h @@ -2,7 +2,7 @@ #define DALI_TOOLKIT_TEXT_CONTROLLER_H /* - * Copyright (c) 2021 Samsung Electronics Co., Ltd. + * Copyright (c) 2022 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -257,6 +257,15 @@ public: // Configure the text controller. void SetAutoScrollEnabled(bool enable); /** + * @brief Whether the auto scrolling texture exceed max texture. + * + * By default is false. + * + * @param[in] exceed Whether the auto scrolling texture exceed max texture. + */ + void SetAutoScrollMaxTextureExceeded(bool exceed); + + /** * @brief Retrieves whether auto text scrolling is enabled. * * By default is disabled. @@ -504,6 +513,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. */ @@ -962,6 +985,20 @@ public: // Default style & Input style float GetFontSizeScale() const; /** + * @brief Set the font size scale enabled flag. + * + * @param[in] enabled whether to enable the font size scale. + */ + void SetFontSizeScaleEnabled(bool enabled); + + /** + * @brief Returns whether the font size scale is enabled or not. + * + * @return @e true if the font size scale is enabled, otherwise returns @e false. + */ + bool IsFontSizeScaleEnabled() const; + + /** * @brief Sets the Placeholder text font size. * @param[in] fontSize The placeholder text font size * @param[in] type The font size type is point size or pixel size @@ -990,6 +1027,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 @@ -1088,6 +1139,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. @@ -1208,6 +1299,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. @@ -1414,6 +1521,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. @@ -1608,6 +1733,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(); @@ -1788,6 +1922,12 @@ public: // Text-input Event Queuing. virtual void ScrollBy(Vector2 scroll); /** + * @brief Whether the text is scrollable. + * @return Returns true if the text is scrollable. + */ + bool IsScrollable(const Vector2& displacement); + + /** * @copydoc Dali::Toolkit::Internal::TextEditor::GetHorizontalScrollPosition() */ float GetHorizontalScrollPosition(); @@ -1863,7 +2003,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()