X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fnavigation-frame%2Fnavigation-control-impl.cpp;h=84eb4e4e2be19549130fec66b4a4f756344a104e;hb=69b938841cf1ee06dde7659fa56ecfac20d48923;hp=8ef5ec6577efcc5834b31748ad4934ef3d8970e5;hpb=306d2f61a1b64179e801fa8a0bb2bd7b4e9dd682;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/controls/navigation-frame/navigation-control-impl.cpp b/dali-toolkit/internal/controls/navigation-frame/navigation-control-impl.cpp index 8ef5ec6..84eb4e4 100644 --- a/dali-toolkit/internal/controls/navigation-frame/navigation-control-impl.cpp +++ b/dali-toolkit/internal/controls/navigation-frame/navigation-control-impl.cpp @@ -22,11 +22,13 @@ #include #include #include +#include +#include // INTERNAL INCLUDES +#include #include #include -#include #include namespace Dali @@ -40,15 +42,20 @@ namespace Internal namespace // to register type { + BaseHandle Create() { return Toolkit::NavigationControl::New(); } -TypeRegistration mType( typeid(Toolkit::NavigationControl), typeid(Toolkit::Control), Create ); +// Setup properties, signals and actions using the type-registry. +DALI_TYPE_REGISTRATION_BEGIN( Toolkit::NavigationControl, Toolkit::Control, Create ) + +DALI_ACTION_REGISTRATION( NavigationControl, "push", ACTION_PUSH ) +DALI_ACTION_REGISTRATION( NavigationControl, "pop", ACTION_POP ) + +DALI_TYPE_REGISTRATION_END() -TypeAction a1(mType, Toolkit::NavigationControl::ACTION_PUSH, &NavigationControl::DoAction); -TypeAction a2(mType, Toolkit::NavigationControl::ACTION_POP, &NavigationControl::DoAction); } NavigationControl::NavigationControl() @@ -257,11 +264,12 @@ void NavigationControl::OrientationChanged( int angle ) } } + Actor self = Self(); Animation animation = Animation::New( mOrientationAnimationDuration ); - animation.RotateTo( Self(), Degree( -angle ), Vector3::ZAXIS, mOrientationAnimationAlphaFunc ); + animation.AnimateTo( Property( self, Actor::Property::ORIENTATION ), Quaternion( Radian( Degree( -angle ) ), Vector3::ZAXIS ), mOrientationAnimationAlphaFunc ); animation.Play(); - Self().SetSize( targetSize ); + self.SetSize( targetSize ); RelayoutRequest(); } @@ -278,7 +286,7 @@ Layer NavigationControl::GetBarLayer() const return mBarLayer; } -void NavigationControl::OnRelayout( const Vector2& size, ActorSizeContainer& container ) +void NavigationControl::OnRelayout( const Vector2& size, RelayoutContainer& container ) { const Vector2 setSize( size ); @@ -301,11 +309,11 @@ void NavigationControl::OnRelayout( const Vector2& size, ActorSizeContainer& con mCurrentItem.SetPosition( mItemPositionCoefficient * positionOffset); Vector2 itemSize( setSize.x, setSize.y-sizeShrink ); - Relayout(mCurrentItem, itemSize, container); + container.Add( mCurrentItem, itemSize ); } - container.push_back(ActorSizePair( mBarLayer, setSize )); - container.push_back(ActorSizePair( mPopupLayer, setSize )); + container.Add( mBarLayer, setSize ); + container.Add( mPopupLayer, setSize ); } void NavigationControl::OnControlSizeSet( const Vector3& size ) @@ -413,38 +421,38 @@ Toolkit::NavigationControl::ItemPoppedSignalType& NavigationControl::ItemPoppedS return mItemPoppedSignal; } -bool NavigationControl::DoAction(BaseObject* object, const std::string& actionName, const PropertyValueContainer& attributes) +bool NavigationControl::DoAction( BaseObject* object, const std::string& actionName, const PropertyValueContainer& attributes ) { bool ret = false; - Dali::BaseHandle handle(object); - Toolkit::NavigationControl control = Toolkit::NavigationControl::DownCast(handle); - DALI_ASSERT_ALWAYS(control); + Dali::BaseHandle handle( object ); + Toolkit::NavigationControl control = Toolkit::NavigationControl::DownCast( handle ); + DALI_ASSERT_ALWAYS( control ); - if (Toolkit::NavigationControl::ACTION_PUSH == actionName) + if( 0 == strcmp( actionName.c_str(), ACTION_PUSH ) ) { - for (PropertyValueConstIter iter = attributes.begin(); iter != attributes.end(); ++iter) + for( PropertyValueConstIter iter = attributes.begin(); iter != attributes.end(); ++iter ) { const Property::Value& value = *iter; - DALI_ASSERT_ALWAYS(value.GetType() == Property::STRING); - std::string itemName = value.Get (); + DALI_ASSERT_ALWAYS( value.GetType() == Property::STRING ); + std::string itemName = value.Get(); - for (std::list::iterator itemsIter = GetImpl(control).mUnpushedItems.begin(); itemsIter != GetImpl(control).mUnpushedItems.end(); ++itemsIter) + for( std::list::iterator itemsIter = GetImpl( control ).mUnpushedItems.begin(); itemsIter != GetImpl( control ).mUnpushedItems.end(); ++itemsIter ) { Toolkit::Page page = *itemsIter; - if (page.GetName() == itemName) + if( page.GetName() == itemName ) { - GetImpl(control).PushItem(page); + GetImpl( control ).PushItem( page ); ret = true; break; } } } } - else if(Toolkit::NavigationControl::ACTION_POP == actionName) + else if( 0 == strcmp( actionName.c_str(), ACTION_POP ) ) { - GetImpl(control).PopItem(); + GetImpl( control ).PopItem(); ret = true; }