From: Adeel Kazmi Date: Tue, 22 Sep 2020 18:12:06 +0000 (+0000) Subject: Merge "Make MeasureCallback signature .NET friendly" into devel/master X-Git-Tag: dali_1.9.31~2 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=commitdiff_plain;h=8bb92d7d1170f2ddf59da60bd3588be601ef8cd2;hp=bb764a75b719ea839f4c255ab015b8fa54fd8039 Merge "Make MeasureCallback signature .NET friendly" into devel/master --- diff --git a/automated-tests/src/dali-toolkit/utc-Dali-FlexNode.cpp b/automated-tests/src/dali-toolkit/utc-Dali-FlexNode.cpp index 93a3ac5..307c149 100644 --- a/automated-tests/src/dali-toolkit/utc-Dali-FlexNode.cpp +++ b/automated-tests/src/dali-toolkit/utc-Dali-FlexNode.cpp @@ -41,15 +41,14 @@ namespace const Flex::SizeTuple ITEM_SIZE = Flex::SizeTuple{ 10.0f, 10.0f }; const Flex::SizeTuple ITEM_SIZE_CALLBACK_TEST = Flex::SizeTuple{ 15.0f, 15.0f }; -Flex::SizeTuple MeasureChild( Actor child, float width, int measureModeWidth, float height, int measureModeHeight) +void MeasureChild( Actor child, float width, int measureModeWidth, float height, int measureModeHeight, Flex::SizeTuple *childSize) { - Flex::SizeTuple childSize = ITEM_SIZE; + *childSize = ITEM_SIZE; if (child.GetProperty< std::string >( Dali::Actor::Property::NAME ) == "callbackTest") { - childSize = ITEM_SIZE_CALLBACK_TEST; + *childSize = ITEM_SIZE_CALLBACK_TEST; } - tet_printf(" MeasureChild test callback executed (%f,%f)\n", childSize.width, childSize.height ); - return childSize; + tet_printf(" MeasureChild test callback executed (%f,%f)\n", childSize->width, childSize->height ); } } diff --git a/dali-toolkit/devel-api/layouting/flex-node.cpp b/dali-toolkit/devel-api/layouting/flex-node.cpp index bdc520a..aa46e6f 100644 --- a/dali-toolkit/devel-api/layouting/flex-node.cpp +++ b/dali-toolkit/devel-api/layouting/flex-node.cpp @@ -162,8 +162,8 @@ SizeTuple Node::MeasureNode(float width, int widthMode, float height, int height Toolkit::Flex::SizeTuple nodeSize{8, 8}; // Default size set to 8,8 to aid bug detection. if(mImpl->mMeasureCallback && mImpl->mActor.GetHandle()) { - DALI_LOG_INFO(gLogFilter, Debug::Verbose, "MeasureNode MeasureCallback executing on %s\n", mImpl->mActor.GetHandle().GetProperty(Dali::Actor::Property::NAME).c_str()); - nodeSize = mImpl->mMeasureCallback(mImpl->mActor.GetHandle(), width, widthMode, height, heightMode); + DALI_LOG_INFO(gLogFilter, Debug::Verbose, "MeasureNode MeasureCallback executing on %s\n", mImpl->mActor.GetHandle().GetProperty< std::string >( Dali::Actor::Property::NAME ).c_str()); + mImpl->mMeasureCallback(mImpl->mActor.GetHandle(), width, widthMode, height, heightMode, &nodeSize); } DALI_LOG_INFO(gLogFilter, Debug::Verbose, "MeasureNode nodeSize width:%f height:%f\n", nodeSize.width, nodeSize.height); return nodeSize; diff --git a/dali-toolkit/devel-api/layouting/flex-node.h b/dali-toolkit/devel-api/layouting/flex-node.h index 677fab0..5a73458 100644 --- a/dali-toolkit/devel-api/layouting/flex-node.h +++ b/dali-toolkit/devel-api/layouting/flex-node.h @@ -113,8 +113,9 @@ struct SizeTuple * @note int, width measure specifcation mode * @note float, available height for child * @note int, height measure specification mode + * @note SizeTuple, return value */ -using MeasureCallback = SizeTuple (*)(Dali::Actor, float, int, float, int); +using MeasureCallback = void (*)(Dali::Actor, float , int , float , int, SizeTuple *); /** * This class provides the API for calling into the Flex layout implementation.