From: Adeel Kazmi Date: Fri, 9 Dec 2016 16:41:14 +0000 (-0800) Subject: Merge changes I7066e6c1,I3f0c228e into devel/master X-Git-Tag: dali_1.2.19~23 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=commitdiff_plain;h=6fac6c064c9002b166b6292d0814fea8f16d7467;hp=-c Merge changes I7066e6c1,I3f0c228e into devel/master * changes: Implement default height for width and width for height for visuals and remove obsolete code from ImageView Stop unnecessary copying of property maps in ImageView::SetImage --- 6fac6c064c9002b166b6292d0814fea8f16d7467 diff --combined dali-toolkit/internal/visuals/visual-base-impl.cpp index 92cadd7,a8ae21c..0958afa --- a/dali-toolkit/internal/visuals/visual-base-impl.cpp +++ b/dali-toolkit/internal/visuals/visual-base-impl.cpp @@@ -90,7 -90,7 +90,7 @@@ void Visual::Base::SetProperties( cons case DevelVisual::Property::PREMULTIPLIED_ALPHA: { - bool premultipliedAlpha( premultipliedAlpha ); + bool premultipliedAlpha = false; if( value.Get( premultipliedAlpha ) ) { EnablePreMultipliedAlpha( premultipliedAlpha ); @@@ -120,9 -120,28 +120,28 @@@ const std::string& Visual::Base::GetNam return mImpl->mName; } - float Visual::Base::GetHeightForWidth( float width ) const + float Visual::Base::GetHeightForWidth( float width ) { - return 0.f; + float aspectCorrectedHeight = 0.f; + Vector2 naturalSize; + GetNaturalSize( naturalSize ); + if( naturalSize.width ) + { + aspectCorrectedHeight = naturalSize.height * width / naturalSize.width; + } + return aspectCorrectedHeight; + } + + float Visual::Base::GetWidthForHeight( float height ) + { + float aspectCorrectedWidth = 0.f; + Vector2 naturalSize; + GetNaturalSize( naturalSize ); + if( naturalSize.height > 0.0f ) + { + aspectCorrectedWidth = naturalSize.width * height / naturalSize.height; + } + return aspectCorrectedWidth; } void Visual::Base::GetNaturalSize( Vector2& naturalSize )