DALi signals refactor to remove V2 naming
[platform/core/uifw/dali-toolkit.git] / base / dali-toolkit / public-api / controls / scroll-bar / scroll-bar.h
index ad13fee..734bd7c 100755 (executable)
  *
  */
 
+// EXTERNAL INCLUDES
+#include <dali/public-api/common/vector-wrapper.h>
+
 // INTERNAL INCLUDES
-#include <dali/dali.h>
 #include <dali-toolkit/public-api/controls/scrollable/scroll-component.h>
 
-namespace Dali DALI_IMPORT_API
+namespace Dali
 {
 
 namespace Toolkit
@@ -42,17 +44,19 @@ class ScrollBar;
  * ScrollBar is a UI component that can be added to the scrollable controls
  * indicating the current scroll position of the scrollable content.
  */
-class ScrollBar : public ScrollComponent
+class DALI_IMPORT_API ScrollBar : public ScrollComponent
 {
 public:
 
   // Signals
   static const char* const SCROLL_POSITION_NOTIFIED_SIGNAL_NAME;        ///< "scroll-position-notified" signal name
-  typedef SignalV2< void ( float ) > ScrollPositionNotifiedSignalType;
+  typedef Signal< void ( float ) > ScrollPositionNotifiedSignalType;
 
   // Properties
-  static const Property::Index PROPERTY_INDICATOR_HEIGHT_POLICY;         ///< name "indicator-height-policy", type STRING
-  static const Property::Index PROPERTY_INDICATOR_FIXED_HEIGHT;          ///< name "indicator-fixed-height",  type FLOAT
+  static const Property::Index PROPERTY_INDICATOR_HEIGHT_POLICY;         ///< name "indicator-height-policy", @see SetIndicatorHeightPolicy(), type STRING
+  static const Property::Index PROPERTY_INDICATOR_FIXED_HEIGHT;          ///< name "indicator-fixed-height",  @see SetIndicatorFixedHeight(),  type FLOAT
+  static const Property::Index PROPERTY_INDICATOR_SHOW_DURATION;         ///< name "indicator-show-duration", @see SetIndicatorShowDuration(), type FLOAT
+  static const Property::Index PROPERTY_INDICATOR_HIDE_DURATION;         ///< name "indicator-hide-duration", @see SetIndicatorHideDuration(), type FLOAT
 
 public:
 
@@ -170,6 +174,36 @@ public:
   float GetIndicatorFixedHeight();
 
   /**
+   * @brief Sets the duration in second for the scroll indicator to become fully visible
+   *
+   * @pre The scroll bar actor has been initialised.
+   *
+   * @param[in] durationSeconds The duration for the scroll indicator to become fully visible
+   */
+  void SetIndicatorShowDuration( float durationSeconds );
+
+  /**
+   * @brief Gets the duration in second for the scroll indicator to become fully visible
+   * @return The duration for the scroll indicator to become fully visible
+   */
+  float GetIndicatorShowDuration();
+
+  /**
+   * @brief Sets the duration in second for the scroll indicator to become fully invisible
+   *
+   * @pre The scroll bar actor has been initialised.
+   *
+   * @param[in] durationSeconds The duration for the scroll indicator to become fully invisible
+   */
+  void SetIndicatorHideDuration( float durationSeconds );
+
+  /**
+   * @brief Gets the duration in second for the scroll indicator to become fully invisible
+   * @return The duration for the scroll indicator to become fully invisible
+   */
+  float GetIndicatorHideDuration();
+
+  /**
    * @brief Shows the scroll indicator
    */
   void Show();
@@ -198,13 +232,13 @@ public: // Not intended for application developers
    * Creates a handle using the Toolkit::Internal implementation.
    * @param[in]  implementation  The Control implementation.
    */
-  ScrollBar( Internal::ScrollBar& implementation );
+  DALI_INTERNAL ScrollBar( Internal::ScrollBar& implementation );
 
   /**
    * Allows the creation of this Control from an Internal::CustomActor pointer.
    * @param[in]  internal  A pointer to the internal CustomActor.
    */
-  ScrollBar( Dali::Internal::CustomActor* internal );
+  explicit DALI_INTERNAL ScrollBar( Dali::Internal::CustomActor* internal );
 };
 
 } // namespace Toolkit