X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Finternal%2Flayouting%2Fflex-layout-impl.cpp;h=65b46c142852cab5115651c93578bb1d2c0803eb;hp=bf5d084aa4580e464efe6182392b8dd60182aea4;hb=118f87dfe57967bfed8ccdf9143a078eaef1b119;hpb=4d704bbcb7e9c4249f6f61b80308ad438ed57b4a diff --git a/dali-toolkit/internal/layouting/flex-layout-impl.cpp b/dali-toolkit/internal/layouting/flex-layout-impl.cpp index bf5d084..65b46c1 100644 --- a/dali-toolkit/internal/layouting/flex-layout-impl.cpp +++ b/dali-toolkit/internal/layouting/flex-layout-impl.cpp @@ -218,23 +218,23 @@ void FlexLayout::OnMeasure( MeasureSpec widthMeasureSpec, MeasureSpec heightMeas if( widthMeasureSpec.GetMode() == MeasureSpec::Mode::EXACTLY ) { - width = widthMeasureSpec.GetSize(); + width = widthMeasureSpec.GetSize().AsDecimal(); YGNodeStyleSetWidth( mRoot, width ); } else if( widthMeasureSpec.GetMode() == MeasureSpec::Mode::AT_MOST ) { - width = widthMeasureSpec.GetSize(); + width = widthMeasureSpec.GetSize().AsDecimal(); YGNodeStyleSetMaxWidth( mRoot, width ); } if ( heightMeasureSpec.GetMode() == MeasureSpec::Mode::EXACTLY ) { - height = heightMeasureSpec.GetSize(); + height = heightMeasureSpec.GetSize().AsDecimal(); YGNodeStyleSetHeight( mRoot, height ); } else if ( heightMeasureSpec.GetMode() == MeasureSpec::Mode::AT_MOST ) { - height = heightMeasureSpec.GetSize(); + height = heightMeasureSpec.GetSize().AsDecimal(); YGNodeStyleSetMaxHeight( mRoot, height ); } @@ -249,8 +249,8 @@ void FlexLayout::OnLayout( bool changed, LayoutLength left, LayoutLength top, La auto owner = GetOwner(); auto actor = Actor::DownCast(owner); bool isLayoutRtl = actor ? actor.GetProperty( Actor::Property::LAYOUT_DIRECTION ).Get() == LayoutDirection::RIGHT_TO_LEFT: false; - auto width = right - left; - auto height = bottom - top; + LayoutLength width = right - left; + LayoutLength height = bottom - top; #if defined(DEBUG_ENABLED) std::ostringstream oss; @@ -263,7 +263,7 @@ void FlexLayout::OnLayout( bool changed, LayoutLength left, LayoutLength top, La DALI_LOG_INFO( gLogFilter, Debug::Concise, oss.str().c_str() ); #endif - YGNodeCalculateLayout( mRoot, width, height, isLayoutRtl ? YGDirectionRTL : YGDirectionLTR ); + YGNodeCalculateLayout( mRoot, width.AsDecimal(), height.AsDecimal(), isLayoutRtl ? YGDirectionRTL : YGDirectionLTR ); auto count = GetChildCount(); for( unsigned int childIndex = 0; childIndex < count; childIndex++) @@ -272,10 +272,10 @@ void FlexLayout::OnLayout( bool changed, LayoutLength left, LayoutLength top, La if( childLayout != nullptr ) { YGNodeRef node = YGNodeGetChild(mRoot, childIndex); - auto childLeft = YGNodeLayoutGetLeft( node ) + left; - auto childTop = YGNodeLayoutGetTop( node ) + top; - auto childWidth = YGNodeLayoutGetWidth( node ); - auto childHeight = YGNodeLayoutGetHeight( node ); + LayoutLength childLeft = LayoutLength( YGNodeLayoutGetLeft( node ) )+ left; + LayoutLength childTop = LayoutLength( YGNodeLayoutGetTop( node ) ) + top; + LayoutLength childWidth = LayoutLength( YGNodeLayoutGetWidth( node ) ); + LayoutLength childHeight = LayoutLength( YGNodeLayoutGetHeight( node ) ); childLayout->Layout( childLeft, childTop, childLeft + childWidth, childTop + childHeight ); } } @@ -290,7 +290,7 @@ YGSize FlexLayout::OnChildMeasure( YGNodeRef node, auto childOwner = childLayout->GetOwner(); auto desiredWidth = childOwner.GetProperty( Toolkit::LayoutItem::ChildProperty::WIDTH_SPECIFICATION ); auto desiredHeight = childOwner.GetProperty( Toolkit::LayoutItem::ChildProperty::HEIGHT_SPECIFICATION ); - auto parentWidthMeasureSpec = MeasureSpec( 0 ); + MeasureSpec parentWidthMeasureSpec( 0 ); if ( innerWidth != YGUndefined ) { parentWidthMeasureSpec = MeasureSpec( innerWidth, static_cast(widthMode) ); @@ -332,12 +332,12 @@ YGSize FlexLayout::OnChildMeasure( YGNodeRef node, // Remove padding here since Yoga doesn't consider it as a part of the node size Extents padding = childLayout->GetPadding(); - auto measuredWidth = childLayout->GetMeasuredWidth() - padding.end - padding.start; - auto measuredHeight = childLayout->GetMeasuredHeight() - padding.bottom - padding.top; + LayoutLength measuredWidth = childLayout->GetMeasuredWidth() - padding.end - padding.start; + LayoutLength measuredHeight = childLayout->GetMeasuredHeight() - padding.bottom - padding.top; return YGSize{ - .width = measuredWidth, - .height = measuredHeight, + .width = measuredWidth.AsDecimal(), + .height = measuredHeight.AsDecimal(), }; }