X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fcontrols%2Ftext-controls%2Ftext-label-impl.cpp;h=4ff20356f11fe8d26afe137ea0e67cd39ebab273;hp=1da86f50d5fae82140c786bece8926d4e00c221a;hb=ffe0742468a71b93445f53863252be639bf3fe99;hpb=a117d2b75fc50a0e12ce7c5ffc1f6ad88c9fbc35 diff --git a/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp b/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp index 1da86f5..4ff2035 100644 --- a/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp +++ b/dali-toolkit/internal/controls/text-controls/text-label-impl.cpp @@ -83,6 +83,8 @@ DALI_PROPERTY_REGISTRATION( TextLabel, "point-size", FLOAT, POINT_SI DALI_PROPERTY_REGISTRATION( TextLabel, "multi-line", BOOLEAN, MULTI_LINE ) DALI_PROPERTY_REGISTRATION( TextLabel, "horizontal-alignment", STRING, HORIZONTAL_ALIGNMENT ) DALI_PROPERTY_REGISTRATION( TextLabel, "vertical-alignment", STRING, VERTICAL_ALIGNMENT ) +DALI_PROPERTY_REGISTRATION( TextLabel, "shadow-offset", VECTOR2, SHADOW_OFFSET ) +DALI_PROPERTY_REGISTRATION( TextLabel, "shadow-color", VECTOR4, SHADOW_COLOR ) DALI_TYPE_REGISTRATION_END() @@ -218,6 +220,32 @@ void TextLabel::SetProperty( BaseObject* object, Property::Index index, const Pr } break; } + case Toolkit::TextLabel::Property::SHADOW_OFFSET: + { + if( impl.mController ) + { + Vector2 shadowOffset = value.Get< Vector2 >(); + if ( impl.mController->GetShadowOffset() != shadowOffset ) + { + impl.mController->SetShadowOffset( shadowOffset ); + impl.RequestTextRelayout(); + } + } + break; + } + case Toolkit::TextLabel::Property::SHADOW_COLOR: + { + if( impl.mController ) + { + Vector4 shadowColor = value.Get< Vector4 >(); + if ( impl.mController->GetShadowColor() != shadowColor ) + { + impl.mController->SetShadowColor( shadowColor ); + impl.RequestTextRelayout(); + } + } + break; + } } } } @@ -276,6 +304,22 @@ Property::Value TextLabel::GetProperty( BaseObject* object, Property::Index inde } break; } + case Toolkit::TextLabel::Property::SHADOW_OFFSET: + { + if ( impl.mController ) + { + value = impl.mController->GetShadowOffset(); + } + break; + } + case Toolkit::TextLabel::Property::SHADOW_COLOR: + { + if ( impl.mController ) + { + value = impl.mController->GetShadowColor(); + } + break; + } } } @@ -284,7 +328,13 @@ Property::Value TextLabel::GetProperty( BaseObject* object, Property::Index inde void TextLabel::OnInitialize() { + Actor self = Self(); + mController = Text::Controller::New( *this ); + + // Use height-for-width negotiation by default + self.SetResizePolicy( FILL_TO_PARENT, WIDTH ); + self.SetDimensionDependency( HEIGHT, WIDTH ); } void TextLabel::OnStyleChange( Toolkit::StyleManager styleManager, StyleChange change ) @@ -302,7 +352,7 @@ float TextLabel::GetHeightForWidth( float width ) return mController->GetHeightForWidth( width ); } -void TextLabel::OnRelayout( const Vector2& size, ActorSizeContainer& container ) +void TextLabel::OnRelayout( const Vector2& size, RelayoutContainer& container ) { if( mController->Relayout( size ) || !mRenderer )