X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=examples%2Fstyling%2Fimage-channel-control-impl.cpp;h=c7dde4f2a55c3ebe0ac5d8392925219fbcdee781;hb=aa68f1034c216719641d32849168fa31f6680576;hp=aa4f3251ba4361541398e4e7ccbc73442363b5a4;hpb=2fa69545ba52fa238710839f76352e7bef582f7d;p=platform%2Fcore%2Fuifw%2Fdali-demo.git diff --git a/examples/styling/image-channel-control-impl.cpp b/examples/styling/image-channel-control-impl.cpp index aa4f325..c7dde4f 100644 --- a/examples/styling/image-channel-control-impl.cpp +++ b/examples/styling/image-channel-control-impl.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 Samsung Electronics Co., Ltd. + * Copyright (c) 2017 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,10 +16,12 @@ #include "image-channel-control-impl.h" #include -#include +#include #include + #include + using namespace Dali; // Needed for macros namespace Demo @@ -34,11 +36,12 @@ const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER( varying mediump vec2 vTexCoord;\n uniform sampler2D sTexture;\n uniform mediump vec4 uColor;\n + uniform mediump vec3 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 ) * vec4(mixColor,1.0) * uColor * vec4(uChannels, 1.0) ;\n }\n ); @@ -67,6 +70,7 @@ DALI_TYPE_REGISTRATION_END(); Internal::ImageChannelControl::ImageChannelControl() : Control( ControlBehaviour( REQUIRES_STYLE_CHANGE_SIGNALS ) ), mChannels( 1.0f, 1.0f, 1.0f ), + mChannelIndex( Property::INVALID_INDEX ), mVisibility(true), mTargetVisibility(true) { @@ -97,8 +101,8 @@ void ImageChannelControl::SetImage( const std::string& url ) properties[Dali::Toolkit::Visual::Property::SHADER]=shader; properties[Dali::Toolkit::ImageVisual::Property::URL] = url; - Dali::Toolkit::InitializeVisual( self, mVisual, properties ); - RegisterVisual( Demo::ImageChannelControl::Property::IMAGE_VISUAL, self, mVisual ); + mVisual = Toolkit::VisualFactory::Get().CreateVisual( properties ); + Toolkit::DevelControl::RegisterVisual( *this, Demo::ImageChannelControl::Property::IMAGE_VISUAL, mVisual ); mVisual.SetName("imageVisual"); RelayoutRequest(); @@ -108,8 +112,6 @@ void ImageChannelControl::SetVisibility( bool visibility ) { printf("ImageChannelControl %s: SetVisibility( %s )\n", Self().GetName().c_str(), visibility?"T":"F" ); - Animation animation; - if( mAnimation ) { mAnimation.Stop(); @@ -123,14 +125,14 @@ void ImageChannelControl::SetVisibility( bool visibility ) { if( mDisableVisibilityTransition.Count() > 0 ) { - mAnimation = CreateTransition( mDisableVisibilityTransition ); + mAnimation = Toolkit::DevelControl::CreateTransition( *this, mDisableVisibilityTransition ); } } else { if( mEnableVisibilityTransition.Count() > 0 ) { - mAnimation = CreateTransition( mEnableVisibilityTransition ); + mAnimation = Toolkit::DevelControl::CreateTransition( *this, mEnableVisibilityTransition ); } } } @@ -161,22 +163,10 @@ void ImageChannelControl::OnInitialize() 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(); } @@ -187,7 +177,16 @@ void ImageChannelControl::OnSizeSet( const Vector3& targetSize ) if( mVisual ) { Vector2 size( targetSize ); - mVisual.SetSize( size ); + Property::Map transformMap; + transformMap + .Add( Toolkit::Visual::Transform::Property::OFFSET, Vector2(0.0f, 0.0f) ) + .Add( Toolkit::Visual::Transform::Property::SIZE, Vector2(1.0f, 1.0f) ) + .Add( Toolkit::Visual::Transform::Property::ORIGIN, Toolkit::Align::CENTER ) + .Add( Toolkit::Visual::Transform::Property::ANCHOR_POINT, Toolkit::Align::CENTER ) + .Add( Toolkit::Visual::Transform::Property::OFFSET_POLICY, Vector2( Toolkit::Visual::Transform::Policy::RELATIVE, Toolkit::Visual::Transform::Policy::RELATIVE ) ) + .Add( Toolkit::Visual::Transform::Property::SIZE_POLICY, Vector2( Toolkit::Visual::Transform::Policy::RELATIVE, Toolkit::Visual::Transform::Policy::RELATIVE ) ); + + mVisual.SetTransformAndSize( transformMap, size ); } } @@ -234,7 +233,8 @@ void ImageChannelControl::SetProperty( BaseObject* object, Property::Index index Property::Map* map = value.GetMap(); if( map ) { - Dali::Toolkit::InitializeVisual( self, impl.mVisual, *map ); + impl.mVisual = Toolkit::VisualFactory::Get().CreateVisual( *map ); + Toolkit::DevelControl::RegisterVisual( impl, Demo::ImageChannelControl::Property::IMAGE_VISUAL, impl.mVisual ); } break; }