X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fscrollable%2Fscrollable-impl.cpp;h=70e5c112b1f73ac59d0df0db438f3b2f56d2302a;hp=98ab55b4fc3a243301935d6cf8508cca825064ab;hb=d52a13429557137effd2bf7816c8f2171a72faea;hpb=4bf366c7c657eacb5cf150fa52e34263ca16218f diff --git a/dali-toolkit/internal/controls/scrollable/scrollable-impl.cpp b/dali-toolkit/internal/controls/scrollable/scrollable-impl.cpp index 98ab55b..70e5c11 100644 --- a/dali-toolkit/internal/controls/scrollable/scrollable-impl.cpp +++ b/dali-toolkit/internal/controls/scrollable/scrollable-impl.cpp @@ -48,8 +48,9 @@ DALI_TYPE_REGISTRATION_BEGIN( Toolkit::Scrollable, Toolkit::Control, Create ); DALI_PROPERTY_REGISTRATION( Toolkit, Scrollable, "overshootEffectColor", VECTOR4, OVERSHOOT_EFFECT_COLOR ) DALI_PROPERTY_REGISTRATION( Toolkit, Scrollable, "overshootAnimationSpeed", FLOAT, OVERSHOOT_ANIMATION_SPEED ) -const int OVERSHOOT_SIZE = Dali::Toolkit::Scrollable::Property::OVERSHOOT_ANIMATION_SPEED + 1; // OVERSHOOT_SIZE is not public yet -Dali::PropertyRegistration p1( typeRegistration, "overshootSize", OVERSHOOT_SIZE, Property::VECTOR2, Dali::Toolkit::Internal::Scrollable::SetProperty, Dali::Toolkit::Internal::Scrollable::GetProperty ); +DALI_PROPERTY_REGISTRATION( Toolkit, Scrollable, "overshootEnabled", BOOLEAN, OVERSHOOT_ENABLED ) +DALI_PROPERTY_REGISTRATION( Toolkit, Scrollable, "overshootSize", VECTOR2, OVERSHOOT_SIZE ) +DALI_PROPERTY_REGISTRATION( Toolkit, Scrollable, "scrollToAlphaFunction", INTEGER, SCROLL_TO_ALPHA_FUNCTION ) DALI_ANIMATABLE_PROPERTY_REGISTRATION( Toolkit, Scrollable, "scrollRelativePosition", VECTOR2, SCROLL_RELATIVE_POSITION) DALI_ANIMATABLE_PROPERTY_REGISTRATION( Toolkit, Scrollable, "scrollPositionMin", VECTOR2, SCROLL_POSITION_MIN) @@ -84,6 +85,7 @@ Scrollable::Scrollable() mOvershootEffectColor( DEFAULT_OVERSHOOT_COLOUR ), mOvershootAnimationSpeed ( DEFAULT_OVERSHOOT_ANIMATION_SPEED ), mOvershootSize( OVERSHOOT_DEFAULT_SIZE ), + mScrollToAlphaFunction( AlphaFunction::EASE_OUT ), mOvershootEnabled(true) { } @@ -93,6 +95,7 @@ Scrollable::Scrollable( ControlBehaviour behaviourFlags ) mOvershootEffectColor( DEFAULT_OVERSHOOT_COLOUR ), mOvershootAnimationSpeed ( DEFAULT_OVERSHOOT_ANIMATION_SPEED ), mOvershootSize( OVERSHOOT_DEFAULT_SIZE ), + mScrollToAlphaFunction( AlphaFunction::EASE_OUT ), mOvershootEnabled(true) { } @@ -194,7 +197,12 @@ void Scrollable::SetProperty( BaseObject* object, Property::Index index, const P scrollableImpl.SetOvershootAnimationSpeed( value.Get() ); break; } - case OVERSHOOT_SIZE: // OVERSHOOT_SIZE is not public yet + case Toolkit::Scrollable::Property::OVERSHOOT_ENABLED: + { + scrollableImpl.SetOvershootEnabled( value.Get() ); + break; + } + case Toolkit::Scrollable::Property::OVERSHOOT_SIZE: { Vector2 input; if( value.Get( input ) ) @@ -204,6 +212,17 @@ void Scrollable::SetProperty( BaseObject* object, Property::Index index, const P scrollableImpl.EnableScrollOvershoot( scrollableImpl.IsOvershootEnabled() ); break; } + case Toolkit::Scrollable::Property::SCROLL_TO_ALPHA_FUNCTION: + { + int alphaFunction = value.Get(); + + if( alphaFunction >= AlphaFunction::DEFAULT && + alphaFunction < AlphaFunction::COUNT ) + { + scrollableImpl.mScrollToAlphaFunction = static_cast< AlphaFunction::BuiltinFunction >( alphaFunction ); + } + break; + } } } } @@ -229,11 +248,21 @@ Property::Value Scrollable::GetProperty( BaseObject* object, Property::Index ind value = scrollableImpl.GetOvershootAnimationSpeed(); break; } - case OVERSHOOT_SIZE: // OVERSHOOT_SIZE is not public yet + case Toolkit::Scrollable::Property::OVERSHOOT_ENABLED: + { + value = scrollableImpl.IsOvershootEnabled(); + break; + } + case Toolkit::Scrollable::Property::OVERSHOOT_SIZE: { value = scrollableImpl.mOvershootSize; break; } + case Toolkit::Scrollable::Property::SCROLL_TO_ALPHA_FUNCTION: + { + value = static_cast( scrollableImpl.mScrollToAlphaFunction ); + break; + } } }