Add text selection popup style
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / devel-api / controls / text-controls / text-selection-popup.h
index c46d138..a4cb2a7 100644 (file)
@@ -2,7 +2,7 @@
 #define DALI_TOOLKIT_TEXT_SELECTION_POPUP_H
 
 /*
- * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
@@ -20,6 +20,7 @@
 
 // INTERNAL INCLUDES
 #include <dali-toolkit/public-api/controls/control.h>
+#include <dali/public-api/object/property-map.h>
 
 namespace Dali
 {
@@ -103,6 +104,12 @@ public:
       OPTION_DIVIDER_SIZE,
 
       /**
+       * @brief The padding of the divider between options.
+       * @details Name "optionDividerPadding", type Vector4.
+       */
+      OPTION_DIVIDER_PADDING,
+
+      /**
        * @brief The image to use as the popup clipboard icon.
        * @details Name "popupClipboardButtonImage", type string.
        */
@@ -157,6 +164,12 @@ public:
       POPUP_PRESSED_COLOR,
 
       /**
+       * @brief The corner radius of the option when pressed.
+       * @details Name "popupPressedCornerRadius", type float.
+       */
+      POPUP_PRESSED_CORNER_RADIUS,
+
+      /**
        * @brief The image to use for the option when pressed.
        * @details Name "popupPressedImage", type string.
        */
@@ -179,7 +192,42 @@ public:
        * @details Name "backgroundBorder", type Property::Map.
        * @note Optional.
        */
-      BACKGROUND_BORDER
+      BACKGROUND_BORDER,
+
+      /**
+       * @brief The popup background.
+       * @details Name "background", type Property::Map.
+       * @note Optional.
+       */
+      BACKGROUND,
+
+      /**
+       * @brief The minimum size of popup label.
+       * @details Name "labelMinimumSize", type Vector2.
+       * @note Optional.
+       */
+      LABEL_MINIMUM_SIZE,
+
+      /**
+       * @brief The padding of popup label.
+       * @details Name "labelPadding", type Vector4.
+       * @note Optional.
+       */
+      LABEL_PADDING,
+
+      /**
+       * @brief The text visual map of popup label.
+       * @details Name "labelTextVisual", type Property::Map.
+       * @note Optional.
+       */
+      LABEL_TEXT_VISUAL,
+
+      /**
+       * @brief Whether the scroll-bar is enabled.
+       * @details Name "enableScrollBar", type Property::BOOLEAN.
+       * @note Optional.
+       */
+      ENABLE_SCROLL_BAR
     };
   };
 
@@ -235,11 +283,11 @@ public:
   void EnableButtons(Toolkit::TextSelectionPopup::Buttons buttonsToEnable);
 
   /**
-   * @brief Raises the toolbar's layer above the given @e target layer.
+   * @brief Raises the toolbar's actor above the given @e target actor.
    *
-   * @param[in] target The layer to get above of.
+   * @param[in] target The actor to get above of.
    */
-  void RaiseAbove(Layer target);
+  void RaiseAbove(Actor target);
 
   /**
    * @brief Show the Popup if not being shown
@@ -251,6 +299,20 @@ public:
    */
   void HidePopup();
 
+  /**
+   * @brief Used to set options of text selection popup
+   *
+   * @param[in] properties The text selection popup options
+   */
+  void SetProperties(const Dali::Property::Map& properties);
+
+  /**
+   * @brief Retrieve property map of text selection popup options
+   *
+   * @param[out] properties The text selection popup options
+   */
+  void GetProperties(Dali::Property::Map& properties);
+
 public: // Not intended for application developers
   /**
    * @brief Creates a handle using the Toolkit::Internal implementation.