Move Progress Bar from Devel to Public API
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / public-api / controls / progress-bar / progress-bar.h
@@ -2,7 +2,7 @@
 #define DALI_TOOLKIT_PROGRESS_BAR_H
 
 /*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2017 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.
@@ -31,6 +31,10 @@ namespace Internal DALI_INTERNAL
 {
 class ProgressBar;
 }
+/**
+ * @addtogroup dali_toolkit_controls_progress_bar
+ * @{
+ */
 
 /**
  * @brief ProgressBar is a control to give the user an indication of the progress of an operation.
@@ -55,11 +59,12 @@ class ProgressBar;
  *     =============================================
  *
  * Also progress value percentage is shown as text inside the progress bar.
- *
  * Signals
  * | %Signal Name      | Method                        |
  * |-------------------|-------------------------------|
  * | valueChanged      | @ref ValueChangedSignal()     |
+ *
+ * @SINCE_1_2.60
  */
 
 class DALI_IMPORT_API ProgressBar : public Control
@@ -70,24 +75,26 @@ public:
 
   /**
    * @brief The start and end property ranges for this control.
+   * @SINCE_1_2.60
    */
   enum PropertyRange
   {
-    PROPERTY_START_INDEX = Control::CONTROL_PROPERTY_END_INDEX + 1, ///< Start Index
-    PROPERTY_END_INDEX =   PROPERTY_START_INDEX + 1000              ///< Reserve property indices
+    PROPERTY_START_INDEX = Control::CONTROL_PROPERTY_END_INDEX + 1, ///< Start Index. @SINCE_1_2.60
+    PROPERTY_END_INDEX =   PROPERTY_START_INDEX + 1000              ///< Reserve property indices. @SINCE_1_2.60
   };
 
   /**
    * @brief An enumeration of properties belonging to the ProgressBar class.
+   * @SINCE_1_2.60
    */
   struct Property
   {
     enum
     {
-
       /**
        * @brief The progress value of progress bar, progress runs form 0 to 1.
        * @details Name "progressValue", type Property::FLOAT.
+       * @SINCE_1_2.60
        * @note Optional. If not supplied, the default is 0.
        * @note Value should be between 0 to 1.
        * @note If Value is set to 0, progress bar will be set to beginning.
@@ -99,6 +106,7 @@ public:
       /**
        * @brief The secondary progress value of progress bar, secondary progress runs form 0 to 1.
        * @details Name "secondaryProgressValue", type Property::FLOAT.
+       * @SINCE_1_2.60
        * @note Optional. If not supplied, the default is 0.
        * @note Value should be between 0 to 1.
        * @note If Value is set to 0, progress bar will be set secondary progress to beginning.
@@ -109,41 +117,47 @@ public:
 
       /**
        * @brief Sets the progress-bar as \e indeterminate state.
-       * @details name "indeterminate", type bool
+       * @details name "indeterminate", type Property::BOOLEAN.
+       * @SINCE_1_2.60
        */
       INDETERMINATE,
 
       /**
        * @brief The track Visual value of progress bar, it's a full progress area and it's shown behind PROGRESS_VISUAL.
-       * @details Name "trackVisual", type Property::STRING if it is a url, map otherwise.
+       * @details Name "trackVisual", type Property::MAP or Property::STRING (url to image).
+       * @SINCE_1_2.60
        * @note Optional. If not supplied, the default track visual will be shown.
        */
       TRACK_VISUAL,
 
       /**
        * @brief The progress Visual value of progress bar, size of the progress visual is changed based on PROGRESS_VALUE.
-       * @details Name "progressVisual", type Property::STRING if it is a url, map otherwise.
+       * @details Name "progressVisual", type Property::MAP or Property::STRING (url to image).
+       * @SINCE_1_2.60
        * @note Optional. If not supplied, the default progress visual will be shown.
        */
       PROGRESS_VISUAL,
 
       /**
        * @brief The secondary progress visual of progress bar, size of the secondary progress visual is changed based on SECONDARY_PROGRESS_VALUE.
-       * @details Name "secondaryProgressVisual", type Property::STRING if it is a url, map otherwise.
+       * @details Name "secondaryProgressVisual", type Property::MAP or Property::STRING (url to image).
+       * @SINCE_1_2.60
        * @note Optional. If not supplied, the secondary progress visual will not be shown.
        */
       SECONDARY_PROGRESS_VISUAL,
 
       /**
        * @brief The indeterminate visual of progress bar.
-       * @details Name "inditerminateVisual", type Property::STRING if it is a url, map otherwise.
-       * @note Optional. If not supplied, the default inditerminate visual will be shown.
+       * @details Name "inditerminateVisual", type Property::MAP or Property::STRING (url to image).
+       * @SINCE_1_2.60
+       * @note Optional. If not supplied, the default indeterminate visual will be shown.
        */
       INDETERMINATE_VISUAL,
 
       /**
        * @brief The transition data for indeterminate visual animation.
-       * @details Name "indeterminateVisualAnimation", type Property::STRING.
+       * @details Name "indeterminateVisualAnimation", type Property::MAP or Property::ARRAY.
+       * @SINCE_1_2.60
        * @note Optional. If not supplied, default animation will be played.
        */
       INDETERMINATE_VISUAL_ANIMATION,
@@ -151,6 +165,7 @@ public:
       /**
        * @brief The Label visual of progress bar.
        * @details Name "labelVisual", type Property::MAP.
+       * @SINCE_1_2.60
        */
       LABEL_VISUAL,
     };
@@ -160,12 +175,14 @@ public:
 
   /**
    * @brief Creates the ProgressBar control.
+   * @SINCE_1_2.60
    * @return A handle to the ProgressBar control
    */
   static ProgressBar New();
 
   /**
    * @brief Creates an empty ProgressBar handle.
+   * @SINCE_1_2.60
    */
   ProgressBar();
 
@@ -173,6 +190,7 @@ public:
    * @brief Copy constructor.
    *
    * Creates another handle that points to the same real object.
+   * @SINCE_1_2.60
    */
   ProgressBar( const ProgressBar& handle );
 
@@ -180,6 +198,7 @@ public:
    * @brief Assignment operator.
    *
    * Changes this handle to point to another real object.
+   * @SINCE_1_2.60
    */
   ProgressBar& operator=( const ProgressBar& handle );
 
@@ -187,6 +206,7 @@ public:
    * @brief Destructor.
    *
    * This is non-virtual since derived Handle types must not contain data or virtual methods.
+   * @SINCE_1_2.60
    */
   ~ProgressBar();
 
@@ -195,6 +215,7 @@ public:
    *
    * If handle points to a ProgressBar the
    * downcast produces valid handle. If not the returned handle is left uninitialized.
+   * @SINCE_1_2.60
    * @param[in] handle Handle to an object
    * @return handle to a ProgressBar or an uninitialized handle
    */
@@ -204,6 +225,7 @@ public:  // Signals
 
   /**
    * @brief Value changed signal type.
+   * @SINCE_1_2.60
    */
   typedef Signal< void ( ProgressBar, float, float ) > ValueChangedSignalType;
 
@@ -214,11 +236,11 @@ public:  // Signals
    * @code
    *   void YourCallbackName( ProgressBar progressBar, float progressValue, float secondaryProgressValue );
    * @endcode
+   * @SINCE_1_2.60
    * @return The signal to connect to
    */
   ValueChangedSignalType& ValueChangedSignal();
 
-
 public: // Not intended for application developers
 
   /// @cond internal
@@ -236,6 +258,9 @@ public: // Not intended for application developers
   /// @endcond
 };
 
+/**
+ * @}
+ */
 } // namespace Toolkit
 
 } // namespace Dali