X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fvisual-base-impl.cpp;h=55610ec17fb0012624c5646f094f97440eb87eb7;hp=ce78b7e696573b2b9d5946f0017814346e061d8a;hb=refs%2Fchanges%2F93%2F279593%2F2;hpb=bb2dce1c6997b8b0c04828d0a7fc4498e3d0561b diff --git a/dali-toolkit/internal/visuals/visual-base-impl.cpp b/dali-toolkit/internal/visuals/visual-base-impl.cpp index ce78b7e..55610ec 100644 --- a/dali-toolkit/internal/visuals/visual-base-impl.cpp +++ b/dali-toolkit/internal/visuals/visual-base-impl.cpp @@ -306,6 +306,10 @@ void Visual::Base::SetProperties(const Property::Map& propertyMap) // Check whether we must update shader. if(!mImpl->mAlwaysUsingBorderline && IsBorderlineRequired()) { + // Required to change shader mean, we didn't setup BORDERLINE_COLOR and BORDERLINE_OFFSET into mRenderer before. Set property now. + mImpl->mRenderer.SetProperty(DecoratedVisualRenderer::Property::BORDERLINE_COLOR, mImpl->mBorderlineColor); + mImpl->mRenderer.SetProperty(DecoratedVisualRenderer::Property::BORDERLINE_OFFSET, mImpl->mBorderlineOffset); + // Make Blend mode ON_WITHOUT_CULL for transparent mix color. mImpl->mRenderer.SetProperty(Renderer::Property::BLEND_MODE, BlendMode::ON_WITHOUT_CULL); @@ -387,6 +391,9 @@ void Visual::Base::SetProperties(const Property::Map& propertyMap) // Check whether we must update shader. if(!mImpl->mAlwaysUsingCornerRadius && IsRoundedCornerRequired()) { + // Required to change shader mean, we didn't setup CORNER_RADIUS_POLICY into mRenderer before. Set property now. + mImpl->mRenderer.SetProperty(DecoratedVisualRenderer::Property::CORNER_RADIUS_POLICY, mImpl->mCornerRadiusPolicy); + // Change the shader must not be occured many times. we always have to use corner radius feature. mImpl->mAlwaysUsingCornerRadius = true; @@ -574,11 +581,11 @@ void Visual::Base::CreatePropertyMap(Property::Map& map) const mImpl->mTransform.mOffset = mImpl->mRenderer.GetProperty(VisualRenderer::Property::TRANSFORM_OFFSET); mImpl->mTransform.mSize = mImpl->mRenderer.GetProperty(VisualRenderer::Property::TRANSFORM_SIZE); - if(IsTypeAvailableForCornerRadius(mImpl->mType)) + if(IsRoundedCornerRequired()) { mImpl->mCornerRadius = mImpl->mRenderer.GetProperty(DecoratedVisualRenderer::Property::CORNER_RADIUS); } - if(IsTypeAvailableForBorderline(mImpl->mType)) + if(IsBorderlineRequired()) { mImpl->mBorderlineWidth = mImpl->mRenderer.GetProperty(DecoratedVisualRenderer::Property::BORDERLINE_WIDTH); mImpl->mBorderlineColor = mImpl->mRenderer.GetProperty(DecoratedVisualRenderer::Property::BORDERLINE_COLOR);