#define DALI_TOOLKIT_SCROLL_VIEW_H
/*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2020 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.
*/
enum ClampState
{
- NotClamped, ///< The quantity isn't clamped @SINCE_1_0.0
- ClampedToMin, ///< The quantity is clamped to the min value @SINCE_1_0.0
- ClampedToMax ///< The quantity is clamped to the max value @SINCE_1_0.0
+ NOT_CLAMPED, ///< The quantity isn't clamped @SINCE_1_9.28
+ CLAMPED_TO_MIN, ///< The quantity is clamped to the min value @SINCE_1_9.28
+ CLAMPED_TO_MAX ///< The quantity is clamped to the max value @SINCE_1_9.28
};
/**
*/
enum SnapType
{
- Snap, ///< Snap @SINCE_1_0.0
- Flick ///< Flick @SINCE_1_0.0
+ SNAP, ///< SNAP @SINCE_1_9.28
+ FLICK ///< FLICK @SINCE_1_9.28
};
/**
*/
enum DirectionBias
{
- DirectionBiasLeft = -1, ///< Bias scroll snap to Left @SINCE_1_0.0
- DirectionBiasNone = 0, ///< Don't bias scroll snap @SINCE_1_0.0
- DirectionBiasRight = 1 ///< Bias scroll snap to Right @SINCE_1_0.0
+ DIRECTION_BIAS_LEFT = -1, ///< Bias scroll snap to Left @SINCE_1_9.28
+ DIRECTION_BIAS_NONE = 0, ///< Don't bias scroll snap @SINCE_1_9.28
+ DIRECTION_BIAS_RIGHT = 1 ///< Bias scroll snap to Right @SINCE_1_9.28
};
/**
* @SINCE_1_0.0
*/
enum RulerType {
- Fixed, ///< A fixed ruler @SINCE_1_0.0
- Free ///< A free ruler @SINCE_1_0.0
+ FIXED, ///< A fixed ruler @SINCE_1_9.28
+ FREE ///< A free ruler @SINCE_1_9.28
};
public:
protected:
- RulerType mType; ///< Type of Ruler (Fixed or Free).
+ RulerType mType; ///< Type of Ruler (FIXED or FREE).
bool mEnabled; ///< If the ruler is enabled.
RulerDomain mDomain; ///< The domain of the ruler.
/**
* @copydoc Toolkit::Ruler::Snap
*/
- virtual float Snap(float x, float bias) const;
+ float Snap(float x, float bias) const override;
/**
* @copydoc Toolkit::Ruler::GetPositionFromPage
*/
- virtual float GetPositionFromPage(unsigned int page, unsigned int &volume, bool wrap) const;
+ float GetPositionFromPage(unsigned int page, unsigned int &volume, bool wrap) const override;
/**
* @copydoc Toolkit::Ruler::GetPageFromPosition
*/
- virtual unsigned int GetPageFromPosition(float position, bool wrap) const;
+ unsigned int GetPageFromPosition(float position, bool wrap) const override;
/**
* @copydoc Toolkit::Ruler::GetTotalPages
*/
- virtual unsigned int GetTotalPages() const;
+ unsigned int GetTotalPages() const override;
};
/**
/**
* @copydoc Toolkit::Ruler::Snap
*/
- virtual float Snap(float x, float bias) const;
+ float Snap(float x, float bias) const override;
/**
* @copydoc Toolkit::Ruler::GetPositionFromPage
*/
- virtual float GetPositionFromPage(unsigned int page, unsigned int &volume, bool wrap) const;
+ float GetPositionFromPage(unsigned int page, unsigned int &volume, bool wrap) const override;
/**
* @copydoc Toolkit::Ruler::GetPageFromPosition
*/
- virtual unsigned int GetPageFromPosition(float position, bool wrap) const;
+ unsigned int GetPageFromPosition(float position, bool wrap) const override;
/**
* @copydoc Toolkit::Ruler::GetTotalPages
*/
- virtual unsigned int GetTotalPages() const;
+ unsigned int GetTotalPages() const override;
private:
float mSpacing; ///< The spacing between each interval
ScrollView( const ScrollView& handle );
/**
+ * @brief Move constructor
+ * @SINCE_1_9.23
+ *
+ * @param[in] rhs A reference to the moved handle
+ */
+ ScrollView( ScrollView&& rhs );
+
+ /**
* @brief Assignment operator.
*
* Changes this handle to point to another real object.
ScrollView& operator=( const ScrollView& handle );
/**
+ * @brief Move assignment
+ * @SINCE_1_9.23
+ *
+ * @param[in] rhs A reference to the moved handle
+ * @return A reference to this
+ */
+ ScrollView& operator=( ScrollView&& rhs );
+
+ /**
* @brief Destructor.
*
* This is non-virtual since derived Handle types must not contain data or virtual methods.