X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-toolkit%2Finternal%2Fvisuals%2Fgradient%2Fgradient-visual.cpp;h=ea84e5e58bc3b875f21a7c8b7a258652621a83e5;hb=refs%2Fchanges%2F63%2F274263%2F16;hp=f3028c4651c20194ecef91c26b1218065d3fc858;hpb=f6004b92a7b8ea0feed9c468943a3c369da4501e;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-toolkit/internal/visuals/gradient/gradient-visual.cpp b/dali-toolkit/internal/visuals/gradient/gradient-visual.cpp index f3028c4..ea84e5e 100644 --- a/dali-toolkit/internal/visuals/gradient/gradient-visual.cpp +++ b/dali-toolkit/internal/visuals/gradient/gradient-visual.cpp @@ -25,6 +25,7 @@ #include #include #include +#include #include // INTERNAL INCLUDES @@ -46,7 +47,7 @@ namespace Internal { namespace { -const int CUSTOM_PROPERTY_COUNT(11); // 5 transform properties + alignment + corner/border +const int CUSTOM_PROPERTY_COUNT(1); // alignment DALI_ENUM_TO_STRING_TABLE_BEGIN(UNITS) DALI_ENUM_TO_STRING_WITH_SCOPE(Toolkit::GradientVisual::Units, OBJECT_BOUNDING_BOX) @@ -169,7 +170,7 @@ void GradientVisual::OnSetTransform() { if(mImpl->mRenderer) { - mImpl->mTransform.RegisterUniforms(mImpl->mRenderer, Direction::LEFT_TO_RIGHT); + mImpl->mTransform.SetUniforms(mImpl->mRenderer, Direction::LEFT_TO_RIGHT); } } @@ -238,6 +239,15 @@ void GradientVisual::DoCreateInstancePropertyMap(Property::Map& map) const // Do nothing } +void GradientVisual::EnablePreMultipliedAlpha(bool preMultiplied) +{ + // Make always enable pre multiplied alpha whether preMultiplied value is false. + if(!preMultiplied) + { + DALI_LOG_WARNING("Note : GradientVisual cannot disable PreMultipliedAlpha\n"); + } +} + void GradientVisual::OnInitialize() { Geometry geometry = mFactoryCache.GetGeometry(VisualFactoryCache::QUAD_GEOMETRY); @@ -252,7 +262,7 @@ void GradientVisual::OnInitialize() sampler.SetWrapMode(wrap, wrap); textureSet.SetSampler(0u, sampler); - mImpl->mRenderer = Renderer::New(geometry, shader); + mImpl->mRenderer = DecoratedVisualRenderer::New(geometry, shader); mImpl->mRenderer.ReserveCustomProperties(CUSTOM_PROPERTY_COUNT); mImpl->mRenderer.SetTextures(textureSet); @@ -265,7 +275,7 @@ void GradientVisual::OnInitialize() mImpl->mRenderer.RegisterUniqueProperty(UNIFORM_ALIGNMENT_MATRIX_NAME, mGradientTransform); //Register transform properties - mImpl->mTransform.RegisterUniforms(mImpl->mRenderer, Direction::LEFT_TO_RIGHT); + mImpl->mTransform.SetUniforms(mImpl->mRenderer, Direction::LEFT_TO_RIGHT); } bool GradientVisual::NewGradient(Type gradientType, const Property::Map& propertyMap) @@ -382,21 +392,21 @@ Shader GradientVisual::GenerateShader() const if(roundedCorner) { - vertexShaderPrefixList += "#define IS_REQUIRED_ROUNDED_CORNER 1\n"; - fragmentShaderPrefixList += "#define IS_REQUIRED_ROUNDED_CORNER 1\n"; + vertexShaderPrefixList += "#define IS_REQUIRED_ROUNDED_CORNER\n"; + fragmentShaderPrefixList += "#define IS_REQUIRED_ROUNDED_CORNER\n"; } if(borderline) { - vertexShaderPrefixList += "#define IS_REQUIRED_BORDERLINE 1\n"; - fragmentShaderPrefixList += "#define IS_REQUIRED_BORDERLINE 1\n"; + vertexShaderPrefixList += "#define IS_REQUIRED_BORDERLINE\n"; + fragmentShaderPrefixList += "#define IS_REQUIRED_BORDERLINE\n"; } if(radialGradient) { - fragmentShaderPrefixList += "#define RADIAL 1\n"; + fragmentShaderPrefixList += "#define RADIAL\n"; } if(userspaceUnit) { - vertexShaderPrefixList += "#define USER_SPACE 1\n"; + vertexShaderPrefixList += "#define USER_SPACE\n"; } shader = Shader::New(Dali::Shader::GetVertexShaderPrefix() + vertexShaderPrefixList + SHADER_GRADIENT_VISUAL_SHADER_VERT.data(),