X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fvisual-base-impl.cpp;h=528bc14b2a641f8ea5f7a96acad4fee92c0bbb51;hb=3c6245ad032678461d6df519db63240016f43ed7;hp=331eaf5661c26cac3a03413a8c81057119881e32;hpb=2ca1c3856ce848a94f54444f1014a820e91ee207;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/visuals/visual-base-impl.cpp b/dali-toolkit/internal/visuals/visual-base-impl.cpp index 331eaf5..528bc14 100644 --- a/dali-toolkit/internal/visuals/visual-base-impl.cpp +++ b/dali-toolkit/internal/visuals/visual-base-impl.cpp @@ -219,10 +219,26 @@ void Visual::Base::SetProperties(const Property::Map& propertyMap) } case Toolkit::DevelVisual::Property::CORNER_RADIUS: { - float radius; - if(value.Get(radius)) + if(value.GetType() == Property::VECTOR4) { - mImpl->mCornerRadius = radius; + // If CORNER_RADIUS Property is Vector4, + // Each values mean the radius of + // (top-left, top-right, bottom-right, bottom-left) + Vector4 radius; + if(value.Get(radius)) + { + mImpl->mCornerRadius = radius; + } + } + else + { + // If CORNER_RADIUS Property is float, + // Every corner radius have same value + float radius; + if(value.Get(radius)) + { + mImpl->mCornerRadius = Vector4(radius, radius, radius, radius); + } } break; } @@ -370,7 +386,7 @@ void Visual::Base::CreatePropertyMap(Property::Map& map) const } if(mImpl->mCornerRadiusIndex != Property::INVALID_INDEX) { - mImpl->mCornerRadius = mImpl->mRenderer.GetProperty(mImpl->mCornerRadiusIndex); + mImpl->mCornerRadius = mImpl->mRenderer.GetProperty(mImpl->mCornerRadiusIndex); } } @@ -449,9 +465,9 @@ bool Visual::Base::IsRoundedCornerRequired() const if(mImpl->mRenderer && mImpl->mCornerRadiusIndex != Property::INVALID_INDEX) { // Update values from Renderer - mImpl->mCornerRadius = mImpl->mRenderer.GetProperty(mImpl->mCornerRadiusIndex); + mImpl->mCornerRadius = mImpl->mRenderer.GetProperty(mImpl->mCornerRadiusIndex); } - return !EqualsZero(mImpl->mCornerRadius) || mImpl->mNeedCornerRadius; + return !(mImpl->mCornerRadius == Vector4::ZERO) || mImpl->mNeedCornerRadius; } void Visual::Base::OnDoAction(const Property::Index actionId, const Property::Value& attributes)