From: Xiangyin Ma Date: Mon, 21 Dec 2015 18:03:04 +0000 (+0000) Subject: Remove more ImageActors from Toolkit X-Git-Tag: dali_1.1.29~6 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=commitdiff_plain;h=bfdf7a73a4d50dfb60d0f7fa5b214f61c920bf9c Remove more ImageActors from Toolkit Change-Id: Idc4e89e816ed271b71befb22d469912775e2ee16 --- diff --git a/automated-tests/src/dali-toolkit/utc-Dali-ScrollView.cpp b/automated-tests/src/dali-toolkit/utc-Dali-ScrollView.cpp index 61fba59..ee941cc 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-ScrollView.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-ScrollView.cpp @@ -812,7 +812,7 @@ int UtcDaliToolkitScrollViewSignalsUpdate(void) scrollView.ScrollUpdatedSignal().Connect( &OnScrollUpdate ); scrollView.ScrollCompletedSignal().Connect( &OnScrollComplete ); - ImageActor image = CreateSolidColorActor( Color::RED ); + Actor image = Actor::New(); image.SetSize(stageSize); image.SetParentOrigin(ParentOrigin::TOP_LEFT); image.SetAnchorPoint(AnchorPoint::TOP_LEFT); diff --git a/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp b/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp index fc49de9..4bb5f56 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-TextEditor.cpp @@ -545,8 +545,7 @@ int utcDaliTextEditorEvent02(void) DALI_TEST_EQUALS( offscreenRoot.GetChildCount(), 1u, TEST_LOCATION ); // The camera actor. Actor offscreenImage = editor.GetChildAt( 2u ); - ImageActor imageActor = ImageActor::DownCast( offscreenImage ); - DALI_TEST_CHECK( imageActor ); + DALI_TEST_CHECK( offscreenImage ); // Create a tap event to touch the text editor. application.ProcessEvent( GenerateTap( Gesture::Possible, 1u, 1u, Vector2( 150.0f, 25.0f ) ) ); diff --git a/automated-tests/src/dali-toolkit/utc-Dali-TextField.cpp b/automated-tests/src/dali-toolkit/utc-Dali-TextField.cpp index 31e5126..982dffe 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-TextField.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-TextField.cpp @@ -669,8 +669,7 @@ int utcDaliTextFieldEvent02(void) DALI_TEST_EQUALS( offscreenRoot.GetChildCount(), 1u, TEST_LOCATION ); // The camera actor. Actor offscreenImage = field.GetChildAt( 2u ); - ImageActor imageActor = ImageActor::DownCast( offscreenImage ); - DALI_TEST_CHECK( imageActor ); + DALI_TEST_CHECK( offscreenImage ); // Create a tap event to touch the text field. application.ProcessEvent( GenerateTap( Gesture::Possible, 1u, 1u, Vector2( 150.0f, 25.0f ) ) ); diff --git a/automated-tests/src/dali-toolkit/utc-Dali-ToolBar.cpp b/automated-tests/src/dali-toolkit/utc-Dali-ToolBar.cpp index 36e8f8c..fec7948 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-ToolBar.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-ToolBar.cpp @@ -21,6 +21,7 @@ #include #include #include +#include using namespace Dali; using namespace Toolkit; @@ -33,6 +34,18 @@ static void TestCallback(BaseHandle handle) { gObjectCreatedCallBackCalled = true; } + +Actor CreateColorActor( const Vector4& color ) +{ + Actor solidColorActor = Actor::New(); + + RendererFactory factory = RendererFactory::Get(); + ControlRenderer colorRenderer = factory.GetControlRenderer( color ); + colorRenderer.SetOnStage( solidColorActor ); + + return solidColorActor; +} + } // namespace void dali_toolbar_startup(void) @@ -88,15 +101,15 @@ int UtcDaliToolBarAddControl01(void) try { - ImageActor control1 = CreateSolidColorActor( Color::RED ); + Actor control1 = CreateColorActor( Color::RED ); control1.SetSize( Vector2( 100.f, 100.f ) ); - ImageActor control2 = CreateSolidColorActor( Color::RED ); + Actor control2 = CreateColorActor( Color::RED ); control2.SetSize( Vector2( 100.f, 100.f ) ); - ImageActor control3 = CreateSolidColorActor( Color::RED ); + Actor control3 = CreateColorActor( Color::RED ); control3.SetSize( Vector2( 100.f, 100.f ) ); - ImageActor control4 = CreateSolidColorActor( Color::RED ); + Actor control4 = CreateColorActor( Color::RED ); control4.SetSize( Vector2( 100.f, 100.f ) ); - ImageActor control5 = CreateSolidColorActor( Color::RED ); + Actor control5 = CreateColorActor( Color::RED ); control5.SetSize( Vector2( 100.f, 100.f ) ); ToolBar toolbar = ToolBar::New(); @@ -113,11 +126,11 @@ int UtcDaliToolBarAddControl01(void) toolbar.AddControl( control4, 0.1f, Alignment::HorizontalCenter, Alignment::Padding( 1.f, 1.f, 1.f, 1.f ) ); toolbar.AddControl( control5, 0.1f, Alignment::HorizontalRight, Alignment::Padding( 1.f, 1.f, 1.f, 1.f ) ); - ImageActor control6 = CreateSolidColorActor( Color::RED ); + Actor control6 = CreateColorActor( Color::RED ); control6.SetSize( Vector2( 100.f, 100.f ) ); - ImageActor control7 = CreateSolidColorActor( Color::RED ); + Actor control7 = CreateColorActor( Color::RED ); control7.SetSize( Vector2( 100.f, 100.f ) ); - ImageActor control8 = CreateSolidColorActor( Color::RED ); + Actor control8 = CreateColorActor( Color::RED ); control8.SetSize( Vector2( 100.f, 100.f ) ); application.Render(); @@ -147,7 +160,7 @@ int UtcDaliToolBarAddControl02(void) try { - ImageActor control = CreateSolidColorActor( Color::RED ); + Actor control = CreateColorActor( Color::RED ); ToolBar toolbar = ToolBar::New(); @@ -177,7 +190,7 @@ int UtcDaliToolBarRemoveControl01(void) try { - ImageActor control = CreateSolidColorActor( Color::RED ); + Actor control = CreateColorActor( Color::RED ); ToolBar toolbar = ToolBar::New(); toolbar.AddControl( control, 0.1f, Alignment::HorizontalLeft ); @@ -200,8 +213,8 @@ int UtcDaliToolBarRemoveControl02(void) try { - ImageActor control01 = CreateSolidColorActor( Color::RED ); - ImageActor control02 = CreateSolidColorActor( Color::RED ); + Actor control01 = CreateColorActor( Color::RED ); + Actor control02 = CreateColorActor( Color::RED ); ToolBar toolbar01 = ToolBar::New(); ToolBar toolbar02 = ToolBar::New(); @@ -222,7 +235,7 @@ int UtcDaliToolBarRemoveControl02(void) try { - ImageActor control = CreateSolidColorActor( Color::RED ); + Actor control = CreateColorActor( Color::RED ); ToolBar toolbar = ToolBar::New(); toolbar.AddControl( control, 0.1f, Alignment::HorizontalLeft ); diff --git a/dali-toolkit/devel-api/controls/popup/confirmation-popup.cpp b/dali-toolkit/devel-api/controls/popup/confirmation-popup.cpp index de7e116..686e81a 100644 --- a/dali-toolkit/devel-api/controls/popup/confirmation-popup.cpp +++ b/dali-toolkit/devel-api/controls/popup/confirmation-popup.cpp @@ -22,7 +22,6 @@ // INTERNAL INCLUDES #include -#include using namespace Dali; diff --git a/dali-toolkit/devel-api/controls/shadow-view/shadow-view.h b/dali-toolkit/devel-api/controls/shadow-view/shadow-view.h index 9ddea7c..188c3c3 100644 --- a/dali-toolkit/devel-api/controls/shadow-view/shadow-view.h +++ b/dali-toolkit/devel-api/controls/shadow-view/shadow-view.h @@ -18,9 +18,6 @@ * */ -// EXTERNAL INCLUDES -#include - // INTERNAL INCLUDES #include diff --git a/dali-toolkit/devel-api/shader-effects/motion-blur-effect.h b/dali-toolkit/devel-api/shader-effects/motion-blur-effect.h index 2151444..310e3ce 100644 --- a/dali-toolkit/devel-api/shader-effects/motion-blur-effect.h +++ b/dali-toolkit/devel-api/shader-effects/motion-blur-effect.h @@ -19,7 +19,6 @@ */ // EXTERNAL INCLUDES -#include #include namespace Dali diff --git a/dali-toolkit/devel-api/shader-effects/motion-stretch-effect.h b/dali-toolkit/devel-api/shader-effects/motion-stretch-effect.h index 332fa48..326c7bd 100644 --- a/dali-toolkit/devel-api/shader-effects/motion-stretch-effect.h +++ b/dali-toolkit/devel-api/shader-effects/motion-stretch-effect.h @@ -19,7 +19,6 @@ */ // EXTERNAL INCLUDES -#include #include namespace Dali diff --git a/dali-toolkit/internal/accessibility-manager/accessibility-manager-impl.cpp b/dali-toolkit/internal/accessibility-manager/accessibility-manager-impl.cpp index 7a5ad48..a3eac2c 100644 --- a/dali-toolkit/internal/accessibility-manager/accessibility-manager-impl.cpp +++ b/dali-toolkit/internal/accessibility-manager/accessibility-manager-impl.cpp @@ -31,6 +31,7 @@ // INTERNAL INCLUDES #include #include +#include namespace Dali { @@ -57,8 +58,7 @@ Debug::Filter* gLogFilter = Debug::Filter::New(Debug::NoLogging, false, "LOG_FOC const char* const ACTOR_FOCUSABLE("focusable"); const char* const IS_FOCUS_GROUP("isFocusGroup"); -const char* FOCUS_BORDER_IMAGE_PATH = DALI_IMAGE_DIR "B16-8_TTS_focus.png"; -const Vector4 FOCUS_BORDER_IMAGE_BORDER = Vector4(7.0f, 7.0f, 7.0f, 7.0f); +const char* FOCUS_BORDER_IMAGE_PATH = DALI_IMAGE_DIR "B16-8_TTS_focus.9.png"; const char* FOCUS_SOUND_FILE = DALI_SOUND_DIR "Focus.ogg"; const char* FOCUS_CHAIN_END_SOUND_FILE = DALI_SOUND_DIR "End_of_List.ogg"; @@ -663,12 +663,8 @@ void AccessibilityManager::SetFocusable(Actor actor, bool focusable) void AccessibilityManager::CreateDefaultFocusIndicatorActor() { // Create a focus indicator actor shared by all the focusable actors - Image borderImage = ResourceImage::New(FOCUS_BORDER_IMAGE_PATH); - - ImageActor focusIndicator = ImageActor::New(borderImage); + Toolkit::ImageView focusIndicator = Toolkit::ImageView::New(FOCUS_BORDER_IMAGE_PATH); focusIndicator.SetParentOrigin( ParentOrigin::CENTER ); - focusIndicator.SetStyle( ImageActor::STYLE_NINE_PATCH ); - focusIndicator.SetNinePatchBorder(FOCUS_BORDER_IMAGE_BORDER); focusIndicator.SetPosition(Vector3(0.0f, 0.0f, 1.0f)); // Apply size constraint to the focus indicator diff --git a/dali-toolkit/internal/controls/bloom-view/bloom-view-impl.h b/dali-toolkit/internal/controls/bloom-view/bloom-view-impl.h index cc42f64..ea3f7e5 100644 --- a/dali-toolkit/internal/controls/bloom-view/bloom-view-impl.h +++ b/dali-toolkit/internal/controls/bloom-view/bloom-view-impl.h @@ -22,7 +22,6 @@ #include #include #include -#include #include // INTERNAL INCLUDES diff --git a/dali-toolkit/internal/controls/bubble-effect/bubble-emitter-impl.cpp b/dali-toolkit/internal/controls/bubble-effect/bubble-emitter-impl.cpp index 1f5b966..392fa9c 100644 --- a/dali-toolkit/internal/controls/bubble-effect/bubble-emitter-impl.cpp +++ b/dali-toolkit/internal/controls/bubble-effect/bubble-emitter-impl.cpp @@ -27,6 +27,8 @@ #include #include #include +#include + namespace { @@ -174,13 +176,15 @@ void BubbleEmitter::SetBackground( Image bgImage, const Vector3& hsvDelta ) mBackgroundImage = bgImage; mHSVDelta = hsvDelta; - ImageActor sourceActor = ImageActor::New( bgImage ); + Toolkit::ImageView sourceActor = Toolkit::ImageView::New( bgImage ); sourceActor.SetSize( mMovementArea ); sourceActor.SetParentOrigin(ParentOrigin::CENTER); - Stage::GetCurrent().Add( sourceActor ); - ShaderEffect colorAdjuster = CreateColorAdjuster( hsvDelta, true /*ignore alpha to make bubble color always*/ ); - sourceActor.SetShaderEffect( colorAdjuster ); + Property::Map colorAdjuster = CreateColorAdjuster(); + sourceActor.SetProperty( Toolkit::ImageView::Property::IMAGE, colorAdjuster); + SetColorAdjusterProperties( sourceActor, hsvDelta, true /*ignore alpha to make bubble color always*/ ); + + Stage::GetCurrent().Add( sourceActor ); RenderTaskList taskList = Stage::GetCurrent().GetRenderTaskList(); RenderTask task = taskList.CreateTask(); @@ -231,15 +235,6 @@ void BubbleEmitter::OnRenderFinished(RenderTask& source) { mRenderTaskRunning = false; Actor sourceActor = source.GetSourceActor(); - if( sourceActor ) - { - ImageActor renderable = ImageActor::DownCast( sourceActor ); - if( renderable ) - { - renderable.RemoveShaderEffect(); - } - } - Stage stage = Stage::GetCurrent(); stage.Remove(sourceActor); stage.GetRenderTaskList().RemoveTask(source); diff --git a/dali-toolkit/internal/controls/bubble-effect/bubble-emitter-impl.h b/dali-toolkit/internal/controls/bubble-effect/bubble-emitter-impl.h index 37cbbb9..1509248 100644 --- a/dali-toolkit/internal/controls/bubble-effect/bubble-emitter-impl.h +++ b/dali-toolkit/internal/controls/bubble-effect/bubble-emitter-impl.h @@ -20,7 +20,6 @@ // EXTERNAL INCLUDES #include -#include #include #include #include diff --git a/dali-toolkit/internal/controls/bubble-effect/color-adjuster.h b/dali-toolkit/internal/controls/bubble-effect/color-adjuster.h index 8e24326..c48dfe7 100644 --- a/dali-toolkit/internal/controls/bubble-effect/color-adjuster.h +++ b/dali-toolkit/internal/controls/bubble-effect/color-adjuster.h @@ -18,7 +18,9 @@ * */ #include -#include +#include + +#define DALI_COMPOSE_SHADER(STR) #STR namespace Dali { @@ -29,6 +31,12 @@ namespace Toolkit namespace Internal { +inline void SetColorAdjusterProperties( Actor& actor, const Vector3& hsvDelta, bool ignoreAlpha = false ) +{ + actor.RegisterProperty( "uHSVDelta", hsvDelta ); + actor.RegisterProperty( "uIgnoreAlpha", ignoreAlpha ? 1.f : 0.f ); +} + /** * Creates a new ColorAdjuster effect. * ColorAdjuster is a custom shader effect to adjust the image color in HSV space. @@ -36,12 +44,14 @@ namespace Internal * @param[in] ignoreAlpha If true, the result color will be opaque even though source has alpha value * @return A handle to a newly allocated Dali resource. */ -inline ShaderEffect CreateColorAdjuster( const Vector3& hsvDelta, bool ignoreAlpha = false ) +inline Property::Map CreateColorAdjuster() { std::string fragmentShader = DALI_COMPOSE_SHADER( precision highp float;\n uniform vec3 uHSVDelta;\n uniform float uIgnoreAlpha;\n + varying mediump vec2 vTexCoord;\n + uniform sampler2D sTexture;\n float rand(vec2 co) \n {\n return fract(sin(dot(co.xy ,vec2(12.9898,78.233))) * 43758.5453); \n} @@ -78,11 +88,13 @@ inline ShaderEffect CreateColorAdjuster( const Vector3& hsvDelta, bool ignoreAlp }\n ); - ShaderEffect shaderEffect = ShaderEffect::New("", fragmentShader); - shaderEffect.SetUniform( "uHSVDelta", hsvDelta ); - shaderEffect.SetUniform( "uIgnoreAlpha", ignoreAlpha?1.0f:0.0f ); + Property::Map customShader; + customShader[ "fragmentShader" ] = fragmentShader; + + Property::Map map; + map[ "shader" ] = customShader; - return shaderEffect; + return map; } } // namespace Internal diff --git a/dali-toolkit/internal/controls/buttons/button-impl.cpp b/dali-toolkit/internal/controls/buttons/button-impl.cpp index f8b0fb2..3132b20 100644 --- a/dali-toolkit/internal/controls/buttons/button-impl.cpp +++ b/dali-toolkit/internal/controls/buttons/button-impl.cpp @@ -24,11 +24,9 @@ #include #include #include -#include #include // INTERNAL INCLUDES -#include #include #include @@ -541,7 +539,9 @@ void Button::SetUnselectedColor( const Vector4& color ) else { // If there is no existing content, create a new actor to use for flat color. - SetupContent( mUnselectedContent, CreateSolidColorActor( mUnselectedColor ) ); + Toolkit::Control unselectedContentActor = Toolkit::Control::New(); + unselectedContentActor.SetBackgroundColor( mUnselectedColor ); + SetupContent( mUnselectedContent, unselectedContentActor ); mUnselectedContent.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS ); } } @@ -563,7 +563,9 @@ void Button::SetSelectedColor( const Vector4& color ) else { // If there is no existing content, create a new actor to use for flat color. - SetupContent( mSelectedContent, CreateSolidColorActor( mSelectedColor ) ); + Toolkit::Control selectedContentActor = Toolkit::Control::New(); + selectedContentActor.SetBackgroundColor( mSelectedColor ); + SetupContent( mSelectedContent, selectedContentActor ); mSelectedContent.SetResizePolicy( ResizePolicy::FILL_TO_PARENT, Dimension::ALL_DIMENSIONS ); } } diff --git a/dali-toolkit/internal/controls/buttons/push-button-impl.cpp b/dali-toolkit/internal/controls/buttons/push-button-impl.cpp index 49d84fb..50d85e5 100644 --- a/dali-toolkit/internal/controls/buttons/push-button-impl.cpp +++ b/dali-toolkit/internal/controls/buttons/push-button-impl.cpp @@ -19,7 +19,6 @@ #include "push-button-impl.h" // EXTERNAL INCLUDES -#include #include #include #include diff --git a/dali-toolkit/internal/controls/buttons/radio-button-impl.h b/dali-toolkit/internal/controls/buttons/radio-button-impl.h index 039a2f0..34130ae 100644 --- a/dali-toolkit/internal/controls/buttons/radio-button-impl.h +++ b/dali-toolkit/internal/controls/buttons/radio-button-impl.h @@ -19,7 +19,6 @@ */ // EXTERNAL INCLUDES -#include #include // INTERNAL INCLUDES diff --git a/dali-toolkit/internal/controls/magnifier/magnifier-impl.h b/dali-toolkit/internal/controls/magnifier/magnifier-impl.h index 63d0a43..df095b0 100644 --- a/dali-toolkit/internal/controls/magnifier/magnifier-impl.h +++ b/dali-toolkit/internal/controls/magnifier/magnifier-impl.h @@ -22,7 +22,6 @@ #include #include #include -#include // INTERNAL INCLUDES #include diff --git a/dali-toolkit/internal/controls/page-turn-view/page-turn-view-impl.h b/dali-toolkit/internal/controls/page-turn-view/page-turn-view-impl.h index 5be63cf..91a714f 100644 --- a/dali-toolkit/internal/controls/page-turn-view/page-turn-view-impl.h +++ b/dali-toolkit/internal/controls/page-turn-view/page-turn-view-impl.h @@ -22,6 +22,7 @@ #include #include #include +#include #include #include diff --git a/dali-toolkit/internal/controls/popup/confirmation-popup-impl.cpp b/dali-toolkit/internal/controls/popup/confirmation-popup-impl.cpp index 183c613..b521cff 100644 --- a/dali-toolkit/internal/controls/popup/confirmation-popup-impl.cpp +++ b/dali-toolkit/internal/controls/popup/confirmation-popup-impl.cpp @@ -19,7 +19,6 @@ #include "confirmation-popup-impl.h" // EXTERNAL INCLUDES -#include #include #include #include diff --git a/dali-toolkit/internal/controls/popup/popup-impl.cpp b/dali-toolkit/internal/controls/popup/popup-impl.cpp index bbdb9a1..4a260c5 100755 --- a/dali-toolkit/internal/controls/popup/popup-impl.cpp +++ b/dali-toolkit/internal/controls/popup/popup-impl.cpp @@ -36,7 +36,6 @@ // INTERNAL INCLUDES #include #include -#include #include #include #include diff --git a/dali-toolkit/internal/controls/popup/popup-impl.h b/dali-toolkit/internal/controls/popup/popup-impl.h index f01d498..6893716 100755 --- a/dali-toolkit/internal/controls/popup/popup-impl.h +++ b/dali-toolkit/internal/controls/popup/popup-impl.h @@ -19,7 +19,6 @@ */ // EXTERNAL INCLUDES -#include #include #include #include diff --git a/dali-toolkit/internal/controls/slider/slider-impl.h b/dali-toolkit/internal/controls/slider/slider-impl.h index 9e25fcc..c9fdc60 100755 --- a/dali-toolkit/internal/controls/slider/slider-impl.h +++ b/dali-toolkit/internal/controls/slider/slider-impl.h @@ -19,7 +19,6 @@ */ // EXTERNAL INCLUDES -#include #include #include diff --git a/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.cpp b/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.cpp index 61388ac..742e111 100644 --- a/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.cpp +++ b/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.cpp @@ -31,7 +31,6 @@ #include // INTERNAL INCLUDES -#include #include #include #include diff --git a/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.h b/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.h index 4444d0c..e2a9497 100644 --- a/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.h +++ b/dali-toolkit/internal/controls/text-controls/text-selection-popup-impl.h @@ -26,7 +26,6 @@ #include // EXTERNAL INCLUDES -#include #include namespace Dali diff --git a/dali-toolkit/internal/controls/text-controls/text-selection-toolbar-impl.cpp b/dali-toolkit/internal/controls/text-controls/text-selection-toolbar-impl.cpp index 81ec840..b010199 100644 --- a/dali-toolkit/internal/controls/text-controls/text-selection-toolbar-impl.cpp +++ b/dali-toolkit/internal/controls/text-controls/text-selection-toolbar-impl.cpp @@ -27,7 +27,6 @@ #include // INTERNAL INCLUDES -#include #include #include diff --git a/dali-toolkit/internal/controls/tool-bar/tool-bar-impl.cpp b/dali-toolkit/internal/controls/tool-bar/tool-bar-impl.cpp index 5ce8db6..a3e4d00 100644 --- a/dali-toolkit/internal/controls/tool-bar/tool-bar-impl.cpp +++ b/dali-toolkit/internal/controls/tool-bar/tool-bar-impl.cpp @@ -19,7 +19,6 @@ #include "tool-bar-impl.h" // EXTERNAL INCLUDES -#include #include #include #include diff --git a/dali-toolkit/internal/text/clipping/text-clipper.cpp b/dali-toolkit/internal/text/clipping/text-clipper.cpp index 826ee4f..c4d9a87 100644 --- a/dali-toolkit/internal/text/clipping/text-clipper.cpp +++ b/dali-toolkit/internal/text/clipping/text-clipper.cpp @@ -21,6 +21,7 @@ // EXTERNAL INCLUDES #include #include +#include namespace { @@ -55,7 +56,7 @@ Actor Clipper::GetRootActor() const return mOffscreenRootActor; } -ImageActor Clipper::GetImageActor() const +Actor Clipper::GetImageActor() const { return mImageActor; } @@ -103,10 +104,8 @@ void Clipper::Initialize( const Vector2& size ) mOffscreenRootActor.SetDepthTestDisabled( true ); mOffscreenRootActor.SetSize( offscreenSize ); - mImageActor = ImageActor::New(); + mImageActor = ImageView::New(); mImageActor.SetParentOrigin( ParentOrigin::CENTER ); - mImageActor.SetBlendFunc( BlendingFactor::ONE, BlendingFactor::ONE_MINUS_SRC_ALPHA, - BlendingFactor::ONE, BlendingFactor::ONE ); mImageActor.SetScale( Vector3( 1.0f, -1.0f, 1.0f ) ); mImageActor.SetSize( offscreenSize ); @@ -130,11 +129,19 @@ void Clipper::Initialize( const Vector2& size ) Pixel::RGBA8888 ); mImageActor.SetImage( frameBufferImage ); mRenderTask.SetTargetFrameBuffer( frameBufferImage ); + mImageActor.OnStageSignal().Connect(this, &Clipper::OnStageConnect); // Stores current size to avoid create new Dali resources if text changes. mCurrentOffscreenSize = offscreenSize; } +void Clipper::OnStageConnect( Dali::Actor actor ) +{ + Renderer renderer = mImageActor.GetRendererAt(0); + renderer.SetBlendFunc(BlendingFactor::ONE, BlendingFactor::ONE_MINUS_SRC_ALPHA, + BlendingFactor::ONE, BlendingFactor::ONE); +} + Clipper::Clipper() { } diff --git a/dali-toolkit/internal/text/clipping/text-clipper.h b/dali-toolkit/internal/text/clipping/text-clipper.h index 26bff0b..a05855c 100644 --- a/dali-toolkit/internal/text/clipping/text-clipper.h +++ b/dali-toolkit/internal/text/clipping/text-clipper.h @@ -20,9 +20,10 @@ // EXTERNAL INCLUDES #include -#include #include #include +#include +#include namespace Dali { @@ -39,7 +40,7 @@ typedef IntrusivePtr ClipperPtr; /** * @brief A helper class for clipping actors using a FrameBufferImage. */ -class Clipper : public RefObject +class Clipper : public RefObject, public ConnectionTracker { public: @@ -63,7 +64,7 @@ public: * * @return The image actor. */ - ImageActor GetImageActor() const; + Actor GetImageActor() const; /** * @brief Refresh the contents of the FrameBufferImage. @@ -82,6 +83,13 @@ private: // Implementation void Initialize( const Vector2& size ); /** + * The renderer is not created until the clipper actor is set on stage, only by then the blend function could be set. + * + * @param[in] actor The actor connected to stage. + */ + void OnStageConnect( Dali::Actor actor ); + + /** * Construct a new Clipper. */ Clipper(); @@ -101,7 +109,7 @@ private: // Data Layer mOffscreenRootActor; CameraActor mOffscreenCameraActor; - ImageActor mImageActor; + ImageView mImageActor; RenderTask mRenderTask; Vector2 mCurrentOffscreenSize; }; diff --git a/dali-toolkit/internal/text/decorator/text-decorator.cpp b/dali-toolkit/internal/text/decorator/text-decorator.cpp index 1791a8d..43ccb78 100644 --- a/dali-toolkit/internal/text/decorator/text-decorator.cpp +++ b/dali-toolkit/internal/text/decorator/text-decorator.cpp @@ -33,7 +33,6 @@ #include // INTERNAL INCLUDES -#include #include #include #include @@ -529,7 +528,7 @@ struct Decorator::Impl : public ConnectionTracker { cursor = Control::New(); cursor.SetBackgroundColor( color ); - cursor.SetParentOrigin( ParentOrigin::TOP_LEFT ); // Need to set the default parent origin as CreateSolidColorActor() sets a different one. + cursor.SetParentOrigin( ParentOrigin::TOP_LEFT ); cursor.SetAnchorPoint( AnchorPoint::TOP_LEFT ); } diff --git a/dali-toolkit/public-api/accessibility-manager/accessibility-manager.h b/dali-toolkit/public-api/accessibility-manager/accessibility-manager.h index 8cfd434..ac61e9e 100644 --- a/dali-toolkit/public-api/accessibility-manager/accessibility-manager.h +++ b/dali-toolkit/public-api/accessibility-manager/accessibility-manager.h @@ -20,7 +20,6 @@ // EXTERNAL INCLUDES #include -#include namespace Dali { diff --git a/dali-toolkit/public-api/controls/buttons/button.cpp b/dali-toolkit/public-api/controls/buttons/button.cpp index f472375..56cd667 100644 --- a/dali-toolkit/public-api/controls/buttons/button.cpp +++ b/dali-toolkit/public-api/controls/buttons/button.cpp @@ -22,9 +22,7 @@ // INTERNAL INCLUDES #include - -// EXTERNAL INCLUDES -#include +#include namespace Dali { @@ -202,14 +200,14 @@ void Button::SetLabel( Actor label ) void Button::SetButtonImage( Image image ) { - Actor imageActor = ImageActor::New( image ); + Actor imageActor = Toolkit::ImageView::New( image ); imageActor.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS ); Dali::Toolkit::GetImplementation( *this ).SetButtonImage( imageActor ); } void Button::SetSelectedImage( Image image ) { - Actor imageActor = ImageActor::New( image ); + Actor imageActor = Toolkit::ImageView::New( image ); imageActor.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS ); Dali::Toolkit::GetImplementation( *this ).SetSelectedImage( imageActor ); } diff --git a/dali-toolkit/public-api/controls/buttons/push-button.cpp b/dali-toolkit/public-api/controls/buttons/push-button.cpp index 24b98b5..90fcefd 100644 --- a/dali-toolkit/public-api/controls/buttons/push-button.cpp +++ b/dali-toolkit/public-api/controls/buttons/push-button.cpp @@ -22,7 +22,6 @@ // INTERNAL INCLUDES #include -#include namespace Dali { diff --git a/dali-toolkit/public-api/controls/default-controls/solid-color-actor.cpp b/dali-toolkit/public-api/controls/default-controls/solid-color-actor.cpp index 2f849bb..84b37a6 100644 --- a/dali-toolkit/public-api/controls/default-controls/solid-color-actor.cpp +++ b/dali-toolkit/public-api/controls/default-controls/solid-color-actor.cpp @@ -21,7 +21,6 @@ // INTERNAL INCLUDES #include - namespace Dali { diff --git a/dali-toolkit/public-api/controls/default-controls/solid-color-actor.h b/dali-toolkit/public-api/controls/default-controls/solid-color-actor.h index ec5b118..f433553 100644 --- a/dali-toolkit/public-api/controls/default-controls/solid-color-actor.h +++ b/dali-toolkit/public-api/controls/default-controls/solid-color-actor.h @@ -22,6 +22,7 @@ #include #include + namespace Dali { diff --git a/dali-toolkit/styles/images-common/B16-8_TTS_focus.9.png b/dali-toolkit/styles/images-common/B16-8_TTS_focus.9.png new file mode 100644 index 0000000..535d0e9 Binary files /dev/null and b/dali-toolkit/styles/images-common/B16-8_TTS_focus.9.png differ diff --git a/dali-toolkit/styles/images-common/B16-8_TTS_focus.png b/dali-toolkit/styles/images-common/B16-8_TTS_focus.png deleted file mode 100644 index c03deba..0000000 Binary files a/dali-toolkit/styles/images-common/B16-8_TTS_focus.png and /dev/null differ