From 17c0a295533e5a9e2e6c9af97710d20b80696714 Mon Sep 17 00:00:00 2001 From: Adeel Kazmi Date: Mon, 18 Aug 2014 15:15:28 +0100 Subject: [PATCH] (ScrollViewTwistEffect) Added getters for some of the setters Added GetMaxSwingAngle() and GetSwingDropOff. Change-Id: I65da3c291534bcb6bb84a64f9ca46fdda9e0ca61 --- .../scroll-view/scroll-view-twist-effect-impl.cpp | 19 ++++++++++++++++++- .../scroll-view/scroll-view-twist-effect-impl.h | 12 +++++++++++- .../scroll-view/scroll-view-twist-effect.cpp | 10 ++++++++++ .../scrollable/scroll-view/scroll-view-twist-effect.h | 16 ++++++++++++++++ 4 files changed, 55 insertions(+), 2 deletions(-) diff --git a/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.cpp b/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.cpp index 1a3b893..c93d264 100755 --- a/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.cpp +++ b/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.cpp @@ -541,9 +541,19 @@ void ScrollViewTwistEffect::Apply(Actor child) } } +void ScrollViewTwistEffect::SetMaxSwingAngle(const Vector2& maxSwingAngle) +{ + mMaxSwingAngle = maxSwingAngle; +} + +Vector2 ScrollViewTwistEffect::GetMaxSwingAngle() const +{ + return mMaxSwingAngle; +} + void ScrollViewTwistEffect::SetSwingDropOff(const Vector2& dropOff, const Vector2& distance, AlphaFunction function) { - if( mDropOffDistance.LengthSquared() > Math::MACHINE_EPSILON_1 && mDropOff.LengthSquared() > Math::MACHINE_EPSILON_1 ) + if( distance.LengthSquared() > Math::MACHINE_EPSILON_1 && dropOff.LengthSquared() > Math::MACHINE_EPSILON_1 ) { mFlags |= FlagDropOff; mDropOff = dropOff; @@ -558,6 +568,13 @@ void ScrollViewTwistEffect::SetSwingDropOff(const Vector2& dropOff, const Vector mFlags = mFlags & ~FlagDefaultDropOff; } +void ScrollViewTwistEffect::GetSwingDropOff( Vector2& dropOff, Vector2& distance, AlphaFunction& function ) const +{ + dropOff = mDropOff; + distance = mDropOffDistance; + function = mDropOffFunction; +} + void ScrollViewTwistEffect::OnAttach(Toolkit::ScrollView& scrollView) { // Create effect-time property if not already created. diff --git a/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.h b/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.h index d98a086..5aca6a0 100644 --- a/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.h +++ b/base/dali-toolkit/internal/controls/scrollable/scroll-view/scroll-view-twist-effect-impl.h @@ -99,13 +99,23 @@ public: /** * @copydoc Toolkit::ScrollViewEffect::SetMaxSwingAngle */ - void SetMaxSwingAngle(const Vector2& maxSwingAngle) { mMaxSwingAngle = maxSwingAngle; } + void SetMaxSwingAngle(const Vector2& maxSwingAngle); + + /** + * @copydoc Toolkit::ScrollViewEffect::GetMaxSwingAngle + */ + Vector2 GetMaxSwingAngle() const; /** * @copydoc Toolkit::ScrollViewEffect::SetSwingDropOff */ void SetSwingDropOff(const Vector2& dropOff, const Vector2& distance, AlphaFunction function = NULL); + /** + * @copydoc Toolkit::ScrollViewEffect::GetSwingDropOff + */ + void GetSwingDropOff( Vector2& dropOff, Vector2& distance, AlphaFunction& function ) const; + public: /** diff --git a/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.cpp b/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.cpp index 5ad2e57..0472917 100644 --- a/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.cpp +++ b/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.cpp @@ -85,11 +85,21 @@ void ScrollViewTwistEffect::SetMaxSwingAngle(const Vector2& maxSwingAngle) GetImpl(*this).SetMaxSwingAngle(maxSwingAngle); } +Vector2 ScrollViewTwistEffect::GetMaxSwingAngle() const +{ + return GetImpl( *this ).GetMaxSwingAngle(); +} + void ScrollViewTwistEffect::SetSwingDropOff(const Vector2& dropOff, const Vector2& distance, AlphaFunction function) { GetImpl(*this).SetSwingDropOff(dropOff, distance, function); } +void ScrollViewTwistEffect::GetSwingDropOff( Vector2& dropOff, Vector2& distance, AlphaFunction& function ) const +{ + GetImpl(*this).GetSwingDropOff(dropOff, distance, function); +} + } // namespace Toolkit } // namespace Dali diff --git a/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.h b/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.h index 719fba2..a208fb0 100644 --- a/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.h +++ b/base/dali-toolkit/public-api/controls/scrollable/scroll-view/scroll-view-twist-effect.h @@ -130,6 +130,13 @@ public: void SetMaxSwingAngle(const Vector2& maxSwingAngle); /** + * @brief Retrieve the maximum swing angle when at zero drop off. + * + * @return The maximum swing angle for x and y axes + */ + Vector2 GetMaxSwingAngle() const; + + /** * @brief Set the drop off values to affect the amount of swing * angle applied to an actor the further it is from the scroll * position. @@ -146,6 +153,15 @@ public: */ void SetSwingDropOff(const Vector2& dropOff, const Vector2& distance, AlphaFunction function = NULL); + /** + * @brief Get the drop off values that affect the amount of swing angle that is applied to an actor. + * + * @param[out] dropOff The current drop-off amount. + * @param[out] distance The current distance to apply drop-off in pixels. + * @param[out] function The current alpha function used to affect how the drop iff is applied over the distance. + */ + void GetSwingDropOff( Vector2& dropOff, Vector2& distance, AlphaFunction& function ) const; + protected: /** -- 2.7.4