Merge "Add TextFitArray to text label" into devel/master
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / controls / text-controls / text-label-impl.h
index 6e34534..66cb0a6 100644 (file)
@@ -154,6 +154,15 @@ public:
   int GetCharacterIndexAtPosition(float visualX, float visualY) const;
 
   /**
+   * @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(uint32_t startIndex, uint32_t endIndex) const;
+
+  /**
    * @brief Set the @p spannedText into current textLabel
    * the spanned text contains content (text) and  format (spans with ranges)
    * the text is copied into text-controller and the spans are applied on ranges
@@ -162,6 +171,28 @@ public:
    */
   void SetSpannedText(const Text::Spanned& spannedText);
 
+  /**
+   * @brief Set text fit array to text label.
+   *
+   * @param[in] enable Whether the text fit array is enabled or not.
+   * @param[in] fitOptions list of the fit options.
+   */
+  void SetTextFitArray(const bool enable, std::vector<Toolkit::DevelTextLabel::FitOption>& fitOptions);
+
+  /**
+   * @brief Get the text fit array of text label.
+   *
+   * @return list of the fit options.
+   */
+  std::vector<Toolkit::DevelTextLabel::FitOption>& GetTextFitArray();
+
+  /**
+   * @brief Whether the text fit array is enabled or not.
+   *
+   * @return True if the text fit array is enabled.
+   */
+  bool IsTextFitArrayEnabled() const;
+
 private: // From Control
   /**
    * @copydoc Control::OnInitialize()