From: Bowon Ryu Date: Fri, 6 Oct 2023 10:11:03 +0000 (+0900) Subject: Add binding for TextFitArray X-Git-Tag: dali_2.2.48~1^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e0f4219497c934cdd39071614d1b230c712cf94d;p=platform%2Fcore%2Fuifw%2Fdali-csharp-binder.git Add binding for TextFitArray https://review.tizen.org/gerrit/#/c/platform/core/uifw/dali-toolkit/+/299557/ Change-Id: Icdd77d4af532e6562be7e13a9c154d4e20855e20 Signed-off-by: Bowon Ryu --- diff --git a/dali-csharp-binder/dali-toolkit/text-label-wrap.cpp b/dali-csharp-binder/dali-toolkit/text-label-wrap.cpp index 879bdadd..8d38a8c1 100755 --- a/dali-csharp-binder/dali-toolkit/text-label-wrap.cpp +++ b/dali-csharp-binder/dali-toolkit/text-label-wrap.cpp @@ -123,6 +123,55 @@ SWIGEXPORT void * SWIGSTDCALL CSharp_TextGeometry_TextLabel_GetTextBoundingRecta return boundingRect; } +SWIGEXPORT void SWIGSTDCALL CSharp_Dali_TextLabel_SetTextFitArray(void * argTextLabel, bool argEnable, uint32_t argArraySize, float * argPointSizeArray, float * argMinLineSizeArray) +{ + Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0; + textLabel = (Dali::Toolkit::TextLabel *)argTextLabel; + { + try + { + std::vector fitOptions; + for(size_t i = 0u; i < argArraySize; i++) + { + fitOptions.push_back(Dali::Toolkit::DevelTextLabel::FitOption(argPointSizeArray[i], argMinLineSizeArray[i])); + } + Dali::Toolkit::DevelTextLabel::SetTextFitArray(*textLabel, argEnable, fitOptions); + } CALL_CATCH_EXCEPTION(); + } +} + +SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_GetTextFitArray(void * argTextLabel) +{ + void* result; + Dali::Property::Map *map = 0; + Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0; + textLabel = (Dali::Toolkit::TextLabel *)argTextLabel; + { + try + { + Dali::Property::Map textFitArray; + bool enable = Dali::Toolkit::DevelTextLabel::IsTextFitArrayEnabled(*textLabel); + textFitArray.Add("enable", enable); + + std::vector fitOptions = Dali::Toolkit::DevelTextLabel::GetTextFitArray(*textLabel); + Dali::Property::Array pointSizeArray; + Dali::Property::Array minLineSizeArray; + for(Dali::Toolkit::DevelTextLabel::FitOption& option : fitOptions) + { + pointSizeArray.PushBack(option.GetPointSize()); + minLineSizeArray.PushBack(option.GetMinLineSize()); + } + + textFitArray.Add("pointSizeArray", pointSizeArray); + textFitArray.Add("minLineSizeArray", minLineSizeArray); + + map = (Dali::Property::Map *)new Dali::Property::Map((Dali::Property::Map const &)textFitArray); + } CALL_CATCH_EXCEPTION(0); + } + result = (void *)map; + return result; +} + SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_AnchorClickedSignal(void * jarg1) { void * jresult ; Dali::Toolkit::TextLabel *arg1 = (Dali::Toolkit::TextLabel *) 0 ;