{
namespace
{
-const int CUSTOM_PROPERTY_COUNT(7); // 5 transform properties + color,size
+const int CUSTOM_PROPERTY_COUNT(2); // color,size
const char* const POSITION_ATTRIBUTE_NAME("aPosition");
const char* const DRIFT_ATTRIBUTE_NAME("aDrift");
void BorderVisual::DoSetOnScene(Actor& actor)
{
- mBorderColorIndex = mImpl->mRenderer.RegisterProperty(Toolkit::BorderVisual::Property::COLOR, COLOR_NAME, mBorderColor);
+ if(mBorderColorIndex == Property::INVALID_INDEX)
+ {
+ mBorderColorIndex = mImpl->mRenderer.RegisterUniqueProperty(Toolkit::BorderVisual::Property::COLOR, COLOR_NAME, mBorderColor);
+ }
if(mBorderColor.a < 1.f || mAntiAliasing)
{
mImpl->mRenderer.SetProperty(Renderer::Property::BLEND_MODE, BlendMode::ON);
}
- mBorderSizeIndex = mImpl->mRenderer.RegisterProperty(Toolkit::BorderVisual::Property::SIZE, SIZE_NAME, mBorderSize);
+ if(mBorderSizeIndex == Property::INVALID_INDEX)
+ {
+ mBorderSizeIndex = mImpl->mRenderer.RegisterUniqueProperty(Toolkit::BorderVisual::Property::SIZE, SIZE_NAME, mBorderSize);
+ }
actor.AddRenderer(mImpl->mRenderer);
{
if(mImpl->mRenderer)
{
- mImpl->mTransform.RegisterUniforms(mImpl->mRenderer, Direction::LEFT_TO_RIGHT);
+ mImpl->mTransform.SetUniforms(mImpl->mRenderer, Direction::LEFT_TO_RIGHT);
}
}
}
Shader shader = GetBorderShader();
- mImpl->mRenderer = Renderer::New(geometry, shader);
+ mImpl->mRenderer = VisualRenderer::New(geometry, shader);
mImpl->mRenderer.ReserveCustomProperties(CUSTOM_PROPERTY_COUNT);
//Register transform properties
- mImpl->mTransform.RegisterUniforms(mImpl->mRenderer, Direction::LEFT_TO_RIGHT);
+ mImpl->mTransform.SetUniforms(mImpl->mRenderer, Direction::LEFT_TO_RIGHT);
}
Shader BorderVisual::GetBorderShader()