}
/**
- * @brief How axes/rotation or scale are clamped
- */
-enum ClampState
-{
- NotClamped, ///< The quantity isn't clamped
- ClampedToMin, ///< The quantity is clamped to the min value
- ClampedToMax ///< The quantity is clamped to the max value
-};
-
-/**
- * @brief A 2 dimensional clamp
- */
-struct ClampState2
-{
- ClampState x; ///< The clamp state of the x axis
- ClampState y; ///< The clamp state of the y axis
-};
-
-/**
- * @brief A 3 dimensional clamp
- */
-struct ClampState3
-{
- ClampState x; ///< The clamp state of the x axis
- ClampState y; ///< The clamp state of the y axis
- ClampState z; ///< The clamp state of the z axis
-};
-
-/**
* @brief Base class for derived Scrollables that contains actors that can be scrolled manually
* (via touch) or automatically.
*
* | scroll-started | @ref ScrollStartedSignal() |
* | scroll-completed | @ref ScrollUpdatedSignal() |
* | scroll-updated | @ref ScrollCompletedSignal() |
- * | scroll-clamped | @ref ScrollClampedSignal() |
*/
class DALI_IMPORT_API Scrollable : public Control
{
public:
/**
- * @brief Clamp signal event's data
- */
- struct ClampEvent
- {
- ClampState3 scale; ///< Clamp information for scale axes
- ClampState3 position; ///< Clamp information for position axes
- ClampState rotation; ///< Clamp information for rotation
- };
-
- /**
* @brief Scroll component types
*/
enum ScrollComponentType
typedef Signal< void ( const Vector3& ) > ScrollStartedSignalType; ///< ScrollStarted signal type
typedef Signal< void ( const Vector3& ) > ScrollCompletedSignalType; ///< ScrollCompleted signal type
typedef Signal< void ( const Vector3& ) > ScrollUpdatedSignalType; ///< Scroll updated signal type
- typedef Signal< void ( const ClampEvent& ) > ScrollClampedSignalType; ///< Scroll clamped signal type
/**
* @brief Signal emitted when the Scrollable has moved (whether by touch or animation).
*/
ScrollCompletedSignalType& ScrollCompletedSignal();
- /**
- * @brief Signal emitted when the Scrollable is pushing against a domain boundary
- * (in either position, scale, or rotation).
- *
- * @return The signal to connect to
- */
- ScrollClampedSignalType& ScrollClampedSignal();
-
public:
/**