From 2bb866335dd821778de0b7245b6d04c814f82efc Mon Sep 17 00:00:00 2001 From: Agnelo Vaz Date: Fri, 18 Nov 2016 11:33:02 +0000 Subject: [PATCH] Implemented Deprecated GetSelectedImage and GetButtonImage Previously just returned an empty Actor but now returns a ImageView created from the Visual url. SetSelectedImage and SetButtonImage fixed to return an Actor and parameter as Image to now break API. Removed commented out code Change-Id: I39edfc5200a8617fb3a2fc8a8576595ae7593dcd --- .../src/dali-toolkit/utc-Dali-Button.cpp | 25 +++++++++-- .../internal/controls/buttons/button-impl.cpp | 52 ++++++++++++++++++---- .../internal/controls/buttons/button-impl.h | 39 +++------------- .../public-api/controls/buttons/button.cpp | 22 +-------- .../styles/480x800/dali-toolkit-default-theme.json | 4 +- .../720x1280/dali-toolkit-default-theme.json | 4 +- 6 files changed, 76 insertions(+), 70 deletions(-) diff --git a/automated-tests/src/dali-toolkit/utc-Dali-Button.cpp b/automated-tests/src/dali-toolkit/utc-Dali-Button.cpp index 60df0f4..8ffc0bf 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-Button.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-Button.cpp @@ -987,17 +987,26 @@ int UtcDaliButtonSetButtonImageP(void) try { - ResourceImage image1 = ResourceImage::New( "TestImage.jpg"); + ResourceImage image1 = ResourceImage::New( TEST_IMAGE_ONE ); button.SetButtonImage( image1 ); Property::Value value = button.GetProperty(Button::Property::UNSELECTED_STATE_IMAGE ); - DALI_TEST_CHECK( value.Get() == "TestImage.jpg" ); + DALI_TEST_CHECK( value.Get() == TEST_IMAGE_ONE ); } catch(...) { DALI_TEST_CHECK( false ); } + std::string imageUrl; + + Dali::Actor actor = button.GetButtonImage(); + + Toolkit::ImageView imageView = Toolkit::ImageView ::DownCast( actor ); + + tet_infoline(" UtcDaliButtonSetButtonImageP Ensure an ImageView is returned\n"); + DALI_TEST_CHECK ( imageView ) + END_TEST; } @@ -1009,7 +1018,7 @@ int UtcDaliButtonSetButtonImageN(void) try { - ResourceImage image1 = ResourceImage::New( "TestImage.jpg"); + ResourceImage image1 = ResourceImage::New( TEST_IMAGE_ONE ); button.SetButtonImage( image1 ); DALI_TEST_CHECK( false ); @@ -1033,7 +1042,7 @@ int UtcDaliButtonSetSelectedImageWithImageP(void) try { button.SetSelectedImage( image1 ); - Property::Value value = button.GetProperty(Button::Property::SELECTED_STATE_IMAGE ); + Property::Value value = button.GetProperty( Button::Property::SELECTED_STATE_IMAGE ); DALI_TEST_CHECK( value.Get() == TEST_IMAGE_ONE ); } catch(...) @@ -1041,6 +1050,14 @@ int UtcDaliButtonSetSelectedImageWithImageP(void) DALI_TEST_CHECK( false ); } + std::string imageUrl; + + Dali::Actor actor = button.GetSelectedImage(); + + Toolkit::ImageView imageView = Toolkit::ImageView::DownCast( actor ); + + tet_infoline(" UtcDaliButtonSetSelectedImageWithImageP Ensure an ImageView is returned\n"); + END_TEST; } diff --git a/dali-toolkit/internal/controls/buttons/button-impl.cpp b/dali-toolkit/internal/controls/buttons/button-impl.cpp index 61a5705..148484d 100644 --- a/dali-toolkit/internal/controls/buttons/button-impl.cpp +++ b/dali-toolkit/internal/controls/buttons/button-impl.cpp @@ -519,7 +519,7 @@ void Button::ButtonUp() if( mTogglableButton ) // Button up will change state { - OnToggleReleased(); // Derived toggle buttons can override this to provide custom behaviour + validButtonAction = OnToggleReleased(); // Derived toggle buttons can override this to provide custom behaviour } else { @@ -826,6 +826,8 @@ void Button::OnRelayout( const Vector2& size, RelayoutContainer& container ) { DALI_LOG_INFO( gLogButtonFilter, Debug::General, "OnRelayout targetSize(%f,%f) ptr(%p) state[%d]\n", size.width, size.height, this, mButtonState ); + PerformFunctionOnVisualsInState( &Button::SelectRequiredVisual, mButtonState ); + Toolkit::Visual::Base currentVisual = GetVisual( GET_VISUAL_INDEX_FOR_STATE[mButtonState][FOREGROUND] ); Toolkit::Visual::Base currentBackGroundVisual = GetVisual( GET_VISUAL_INDEX_FOR_STATE[mButtonState][BACKGROUND] ); @@ -1339,13 +1341,13 @@ const Vector4 Button::GetSelectedColor() const void Button::SetAnimationTime( float animationTime ) { - // Used by depreciated API + // Used by deprecated API mAnimationTime = animationTime; } float Button::GetAnimationTime() const { - // Used by depreciated API + // Used by deprecated API return mAnimationTime; } @@ -1416,7 +1418,7 @@ void Button::SetDisabledSelectedImage( const std::string& filename ) } } -std::string Button::GetUrlForImageVisual( Property::Index index ) +std::string Button::GetUrlForImageVisual( const Property::Index index ) const { Toolkit::Visual::Base visual = GetVisual( index ); std::string result; @@ -1437,16 +1439,50 @@ std::string Button::GetUrlForImageVisual( Property::Index index ) // Below functions DEPRECATED_1_0.50 - Return empty Actors +namespace +{ +std::string GetUrlFromImage( Image& image ) +{ + ResourceImage resourceImage = ResourceImage::DownCast( image ); + + std::string imageUrl; + + if ( resourceImage ) + { + imageUrl = resourceImage.GetUrl(); + } + return imageUrl; +} + +} // namespace + + +void Button::SetButtonImage( Image image ) +{ + DALI_LOG_WARNING("Button::SetButtonImage @DEPRECATED_1_0.50\n"); + SetUnselectedImage( GetUrlFromImage( image ) ); +} + +void Button::SetSelectedImage( Image image ) +{ + DALI_LOG_WARNING("Button::SetSelectedImage @DEPRECATED_1_0.50\n"); + SetSelectedImage( GetUrlFromImage( image ) ); +} + Actor Button::GetButtonImage() const { - DALI_LOG_WARNING("Button::GetButtonImage @DEPRECATED_1_0.50 Returning empty Actor \n"); - return Actor();; + DALI_LOG_WARNING("Button::GetButtonImage @DEPRECATED_1_0.50\n"); + Actor imageView = Toolkit::ImageView::New( GetUrlForImageVisual( Toolkit::Button::Property::UNSELECTED_VISUAL ) ); + + return imageView; } Actor Button::GetSelectedImage() const { - DALI_LOG_WARNING("Button::GetSelectedImage @DEPRECATED_1_0.50 Returning empty Actor \n"); - return Actor(); + DALI_LOG_WARNING("Button::GetSelectedImage @DEPRECATED_1_0.50\n"); + Actor imageView = Toolkit::ImageView::New( GetUrlForImageVisual( Toolkit::Button::Property::SELECTED_VISUAL ) ); + + return imageView; } } // namespace Internal diff --git a/dali-toolkit/internal/controls/buttons/button-impl.h b/dali-toolkit/internal/controls/buttons/button-impl.h index e5854d7..b3488ea 100644 --- a/dali-toolkit/internal/controls/buttons/button-impl.h +++ b/dali-toolkit/internal/controls/buttons/button-impl.h @@ -27,10 +27,6 @@ #include #include -//#if defined(DEBUG_ENABLED) -// Debug::Filter* gLogButtonFilter = Debug::Filter::New(Debug::NoLogging, true, "LOG_BUTTON_CONTROL"); -//#endif - namespace Dali { @@ -220,47 +216,22 @@ public: // Deprecated API /** * @deprecated Sets the unselected image with an Actor. - * @param[in] image The Actor to use. + * @param[in] image The Image to use. */ - void SetUnselectedImage( Actor image ); + void SetButtonImage( Image image ); /** * @deprecated Sets the selected image with an Actor. - * @param[in] image The Actor to use. - */ - void SetSelectedImage( Actor image ); - - /** - * @deprecated Sets the selected background image with an Actor. - * @param[in] image The Actor to use. - */ - void SetSelectedBackgroundImage( Actor image ); - - /** - * @deprecated Sets the disabled image with an Actor. - * @param[in] image The Actor to use. - */ - void SetDisabledImage( Actor image ); - - /** - * @deprecated Sets the disabled selected image with an Actor. - * @param[in] image The Actor to use. + * @param[in] image The Image to use. */ - void SetDisabledSelectedImage( Actor image ); - - /** - * @deprecated Sets the disabled background image with an Actor. - * @param[in] image The Actor to use. - */ - void SetDisabledBackgroundImage( Actor image ); + void SetSelectedImage( Image image ); /** * @Gets url of a image visual, used by GetProperty but for deprecated Properties * @param[in] index Visual index of url required * @return filename for the corresponding visual */ - std::string GetUrlForImageVisual( Property::Index index ); - + std::string GetUrlForImageVisual( const Property::Index index ) const; /** * @copydoc Dali::Toolkit::Button::GetButtonImage diff --git a/dali-toolkit/public-api/controls/buttons/button.cpp b/dali-toolkit/public-api/controls/buttons/button.cpp index 9f02049..f1ee9ad 100644 --- a/dali-toolkit/public-api/controls/buttons/button.cpp +++ b/dali-toolkit/public-api/controls/buttons/button.cpp @@ -253,32 +253,14 @@ void Button::SetButtonImage( Image image ) { DALI_LOG_WARNING_NOFN("DEPRECATION WARNING: SetButtonImage() is deprecated and will be removed from next release. Use Styling file instead.\n" ); - Dali::ResourceImage resourceImage = Dali::ResourceImage::DownCast( image ); - - std::string imageUrl; - - if ( resourceImage ) - { - imageUrl = resourceImage.GetUrl(); - } - - Dali::Toolkit::GetImplementation( *this ).SetUnselectedImage( imageUrl ); + Dali::Toolkit::GetImplementation( *this ).SetButtonImage( image ); } void Button::SetSelectedImage( Image image ) { DALI_LOG_WARNING_NOFN("DEPRECATION WARNING: SetSelectedImage() is deprecated and will be removed from next release. Use Styling file instead.\n" ); - Dali::ResourceImage resourceImage = Dali::ResourceImage::DownCast( image ); - - std::string imageUrl; - - if ( resourceImage ) - { - imageUrl = resourceImage.GetUrl(); - } - - Dali::Toolkit::GetImplementation( *this ).SetSelectedImage( imageUrl ); + Dali::Toolkit::GetImplementation( *this ).SetSelectedImage( image ); } Actor Button::GetButtonImage() const diff --git a/dali-toolkit/styles/480x800/dali-toolkit-default-theme.json b/dali-toolkit/styles/480x800/dali-toolkit-default-theme.json index 7ee4416..039a5df 100644 --- a/dali-toolkit/styles/480x800/dali-toolkit-default-theme.json +++ b/dali-toolkit/styles/480x800/dali-toolkit-default-theme.json @@ -107,8 +107,8 @@ { "label": { - "pointSize":8, - "fontStyle":{"weight":"light"} + "visualType":"TEXT", + "pointSize":8 } }, "TextSelectionToolbar": diff --git a/dali-toolkit/styles/720x1280/dali-toolkit-default-theme.json b/dali-toolkit/styles/720x1280/dali-toolkit-default-theme.json index a57d641..d4598f9 100644 --- a/dali-toolkit/styles/720x1280/dali-toolkit-default-theme.json +++ b/dali-toolkit/styles/720x1280/dali-toolkit-default-theme.json @@ -115,8 +115,8 @@ { "label": { - "pointSize":8, - "fontStyle":{"weight":"light"} + "visualType": "TEXT", + "pointSize":8 } }, "TextSelectionToolbar": -- 2.7.4