X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Fnavigation-frame%2Fpage-impl.cpp;h=82fb886d428291dac7a5684dcad477333859d22a;hp=615f3a62fe729af863832459931f32a190cd9382;hb=5ff76a127dce1541de4f27d29db5e019d80363e0;hpb=2ddfbb9e23a7c3fc30e604236c41e0ef6d2ed6a2 diff --git a/dali-toolkit/internal/controls/navigation-frame/page-impl.cpp b/dali-toolkit/internal/controls/navigation-frame/page-impl.cpp index 615f3a6..82fb886 100644 --- a/dali-toolkit/internal/controls/navigation-frame/page-impl.cpp +++ b/dali-toolkit/internal/controls/navigation-frame/page-impl.cpp @@ -16,13 +16,11 @@ */ // CLASS HEADER - #include "page-impl.h" // EXTERNAL INCLUDES #include - -// INTERNAL INCLUDES +#include namespace Dali { @@ -41,16 +39,17 @@ BaseHandle Create() return Toolkit::Page::New(); } -TypeRegistration mType( typeid(Toolkit::Page), typeid(CustomActor), Create ); +DALI_TYPE_REGISTRATION_BEGIN( Toolkit::Page, Toolkit::Control, Create ) +DALI_PROPERTY_REGISTRATION( Toolkit, Page, "title", STRING, TITLE ) +DALI_PROPERTY_REGISTRATION( Toolkit, Page, "sub-title", STRING, SUB_TITLE ) +DALI_TYPE_REGISTRATION_END() } // unnamed namespace Page::Page() -: Control( CONTROL_BEHAVIOUR_NONE ), +: Control( ControlBehaviour( ACTOR_BEHAVIOUR_NONE ) ), mTitle(""), - mSubTitle(""), - mPropertyTitle(Property::INVALID_INDEX), - mPropertySubTitle(Property::INVALID_INDEX) + mSubTitle("") { } @@ -162,26 +161,54 @@ Toolkit::Popup Page::GetPopupMenu() const return mPopupMenu; } -void Page::OnInitialize() +void Page::SetProperty( BaseObject* object, Property::Index index, const Property::Value& value ) { - Actor self = Self(); + Toolkit::Page page = Toolkit::Page::DownCast( Dali::BaseHandle( object ) ); - mPropertyTitle = self.RegisterProperty( Dali::Toolkit::Page::PROPERTY_TITLE, "", Property::READ_WRITE ); - mPropertySubTitle = self.RegisterProperty( Dali::Toolkit::Page::PROPERTY_SUB_TITLE, "", Property::READ_WRITE ); + if ( page ) + { + switch ( index ) + { + case Toolkit::Page::Property::TITLE: + { + GetImpl( page ).SetTitle( value.Get< std::string >() ); + break; + } + + case Toolkit::Page::Property::SUB_TITLE: + { + GetImpl( page ).SetSubTitle( value.Get< std::string >() ); + break; + } + } + } } -void Page::OnPropertySet( Property::Index index, Property::Value propertyValue ) +Property::Value Page::GetProperty( BaseObject* object, Property::Index propertyIndex ) { - if( index == mPropertyTitle ) - { - std::string title( propertyValue.Get() ); - SetTitle(title); - } - else if( index == mPropertySubTitle ) + Property::Value value; + + Toolkit::Page page = Toolkit::Page::DownCast( Dali::BaseHandle( object ) ); + + if ( page ) { - std::string subTitle( propertyValue.Get() ); - SetSubTitle(subTitle); + switch ( propertyIndex ) + { + case Toolkit::Page::Property::TITLE: + { + value = GetImpl( page ).mTitle; + break; + } + + case Toolkit::Page::Property::SUB_TITLE: + { + value = GetImpl( page ).mSubTitle; + break; + } + } } + + return value; } } // namespace Internal