X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Fpublic-api%2Fcontrols%2Fcontrol-impl.cpp;h=c731c0dd5b6e6a1b10a25c22e88baada56588410;hp=d3f43622f7cf8a556f8712fa19a9b084da2f508e;hb=ce4bae9bcaabc3b38d016e7ef36cc55357087bc0;hpb=d0b03f52573948c53cdca89ec5e3be201737c3bb diff --git a/dali-toolkit/public-api/controls/control-impl.cpp b/dali-toolkit/public-api/controls/control-impl.cpp index d3f4362..c731c0d 100644 --- a/dali-toolkit/public-api/controls/control-impl.cpp +++ b/dali-toolkit/public-api/controls/control-impl.cpp @@ -29,6 +29,7 @@ #include #include #include +#include #include #include @@ -38,7 +39,7 @@ #include #include #include -#include +#include #include #include #include @@ -134,7 +135,7 @@ HandleIndex GetVisualProperty( if( iter != visuals.End() ) { Actor self = controlImpl.Self(); - Property::Index index = self.GetPropertyIndex( propertyKey ); + Property::Index index = DevelHandle::GetPropertyIndex( self, propertyKey ); if( index != Property::INVALID_INDEX ) { // It's an actor property: @@ -147,7 +148,7 @@ HandleIndex GetVisualProperty( { // @todo Need to use correct renderer index Renderer renderer = self.GetRendererAt(0); - Property::Index index = renderer.GetPropertyIndex( propertyKey ); + Property::Index index = DevelHandle::GetPropertyIndex( renderer, propertyKey ); if( index != Property::INVALID_INDEX ) { // It's a renderer property: @@ -170,11 +171,11 @@ void SetDefaultTransform( Property::Map& propertyMap ) { propertyMap.Clear(); propertyMap - .Add( Toolkit::Visual::DevelProperty::Transform::Property::OFFSET, Vector2(0.0f, 0.0f) ) - .Add( Toolkit::Visual::DevelProperty::Transform::Property::SIZE, Vector2(1.0f, 1.0f) ) - .Add( Toolkit::Visual::DevelProperty::Transform::Property::ORIGIN, Toolkit::Align::CENTER ) - .Add( Toolkit::Visual::DevelProperty::Transform::Property::ANCHOR_POINT, Toolkit::Align::CENTER ) - .Add( Toolkit::Visual::DevelProperty::Transform::Property::OFFSET_SIZE_MODE, Vector4::ZERO ); + .Add( Toolkit::DevelVisual::Transform::Property::OFFSET, Vector2(0.0f, 0.0f) ) + .Add( Toolkit::DevelVisual::Transform::Property::SIZE, Vector2(1.0f, 1.0f) ) + .Add( Toolkit::DevelVisual::Transform::Property::ORIGIN, Toolkit::Align::CENTER ) + .Add( Toolkit::DevelVisual::Transform::Property::ANCHOR_POINT, Toolkit::Align::CENTER ) + .Add( Toolkit::DevelVisual::Transform::Property::OFFSET_SIZE_MODE, Vector4::ZERO ); } /** @@ -542,11 +543,6 @@ Toolkit::Control Control::New() return handle; } -Control::~Control() -{ - delete mImpl; -} - void Control::SetStyleName( const std::string& styleName ) { if( styleName != mImpl->mStyleName ) @@ -571,7 +567,7 @@ void Control::SetBackgroundColor( const Vector4& color ) { mImpl->mBackgroundColor = color; Property::Map map; - map[ Toolkit::VisualProperty::TYPE ] = Toolkit::Visual::COLOR; + map[ Toolkit::DevelVisual::Property::TYPE ] = Toolkit::Visual::COLOR; map[ Toolkit::ColorVisual::Property::MIX_COLOR ] = color; SetBackground( map ); @@ -589,6 +585,9 @@ void Control::SetBackground( const Property::Map& map ) { RegisterVisual( Toolkit::Control::Property::BACKGROUND, visual ); visual.SetDepthIndex( DepthIndex::BACKGROUND ); + + // Trigger a size negotiation request that may be needed by the new visual to relayout its contents. + RelayoutRequest(); } } @@ -607,6 +606,9 @@ void Control::ClearBackground() { UnregisterVisual( Toolkit::Control::Property::BACKGROUND ); mImpl->mBackgroundColor = Color::TRANSPARENT; + + // Trigger a size negotiation request that may be needed when unregistering a visual. + RelayoutRequest(); } void Control::EnableGestureDetection(Gesture::Type type) @@ -865,7 +867,7 @@ Dali::Animation Control::CreateTransition( const Toolkit::TransitionData& handle Actor child = Self().FindChildByName( animator->objectName ); if( child ) { - Property::Index propertyIndex = child.GetPropertyIndex( animator->propertyKey ); + Property::Index propertyIndex = DevelHandle::GetPropertyIndex( child, animator->propertyKey ); handleIndex = HandleIndex( child, propertyIndex ); } else @@ -994,6 +996,11 @@ Control::Control( ControlBehaviour behaviourFlags ) mImpl->mFlags = behaviourFlags; } +Control::~Control() +{ + delete mImpl; +} + void Control::Initialize() { // Call deriving classes so initialised before styling is applied to them.