#include "image-channel-control-impl.h"
#include <dali-toolkit/dali-toolkit.h>
#include <dali/public-api/object/type-registry-helper.h>
+#include <dali-toolkit/devel-api/align-enums.h>
#include <dali-toolkit/devel-api/visual-factory/visual-factory.h>
+#include <dali-toolkit/devel-api/visuals/visual-properties-devel.h>
+
#include <cstdio>
using namespace Dali; // Needed for macros
varying mediump vec2 vTexCoord;\n
uniform sampler2D sTexture;\n
uniform mediump vec4 uColor;\n
+ uniform mediump vec4 mixColor;\n
uniform mediump vec3 uChannels;\n
\n
void main()\n
{\n
- gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor * vec4(uChannels, 1.0) ;\n
+ gl_FragColor = texture2D( sTexture, vTexCoord ) * mixColor * uColor * vec4(uChannels, 1.0) ;\n
}\n
);
Internal::ImageChannelControl::ImageChannelControl()
: Control( ControlBehaviour( REQUIRES_STYLE_CHANGE_SIGNALS ) ),
mChannels( 1.0f, 1.0f, 1.0f ),
+ mChannelIndex( Property::INVALID_INDEX ),
mVisibility(true),
mTargetVisibility(true)
{
{
printf("ImageChannelControl %s: SetVisibility( %s )\n", Self().GetName().c_str(), visibility?"T":"F" );
- Animation animation;
-
if( mAnimation )
{
mAnimation.Stop();
void ImageChannelControl::OnStageConnection( int depth )
{
Control::OnStageConnection( depth );
-
- if( mVisual )
- {
- CustomActor self = Self();
- mVisual.SetOnStage( self );
- }
}
void ImageChannelControl::OnStageDisconnection()
{
- if( mVisual )
- {
- CustomActor self = Self();
- mVisual.SetOffStage( self );
- }
-
Control::OnStageDisconnection();
}
if( mVisual )
{
Vector2 size( targetSize );
- mVisual.SetSize( size );
+ Property::Map transformMap;
+ transformMap
+ .Add( Toolkit::DevelVisual::Transform::Property::OFFSET, Vector2(0.0f, 0.0f) )
+ .Add( Toolkit::DevelVisual::Transform::Property::SIZE, Vector2(1.0f, 1.0f) )
+ .Add( Toolkit::DevelVisual::Transform::Property::ORIGIN, Toolkit::Align::CENTER )
+ .Add( Toolkit::DevelVisual::Transform::Property::ANCHOR_POINT, Toolkit::Align::CENTER )
+ .Add( Toolkit::DevelVisual::Transform::Property::OFFSET_SIZE_MODE, Vector4::ZERO );
+
+ mVisual.SetTransformAndSize( transformMap, size );
}
}
Property::Map* map = value.GetMap();
if( map )
{
- Dali::Toolkit::InitializeVisual( self, impl.mVisual, *map );
+ impl.mVisual = Toolkit::VisualFactory::Get().CreateVisual( *map );
+ impl.RegisterVisual( Demo::ImageChannelControl::Property::IMAGE_VISUAL, impl.mVisual );
}
break;
}