2 * Copyright (c) 2021 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
19 #include <dali-toolkit/public-api/controls/text-controls/text-label.h>
20 #include <dali-toolkit/devel-api/controls/text-controls/text-label-devel.h>
23 #include <dali-csharp-binder/common/common.h>
25 SWIGINTERN bool Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Empty(Dali::Signal< void (Dali::Toolkit::TextLabel) > const *self){
28 SWIGINTERN std::size_t Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__GetConnectionCount(Dali::Signal< void (Dali::Toolkit::TextLabel) > const *self){
29 return self->GetConnectionCount();
31 SWIGINTERN void Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Connect(Dali::Signal< void (Dali::Toolkit::TextLabel) > *self,void (*func)(Dali::Toolkit::TextLabel)){
32 self->Connect( func );
34 SWIGINTERN void Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Disconnect(Dali::Signal< void (Dali::Toolkit::TextLabel) > *self,void (*func)(Dali::Toolkit::TextLabel)){
35 self->Disconnect( func );
37 SWIGINTERN void Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Emit(Dali::Signal< void (Dali::Toolkit::TextLabel) > *self,Dali::Toolkit::TextLabel arg){
45 SWIGEXPORT int SWIGSTDCALL CSharp_TextLabel_Property_TEXT_FIT_get()
50 result = (int)Dali::Toolkit::DevelTextLabel::Property::TEXT_FIT;
51 jresult = (int)result;
55 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_FONT_SIZE_SCALE_get()
60 result = (int)Dali::Toolkit::DevelTextLabel::Property::FONT_SIZE_SCALE;
61 jresult = (int)result;
65 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_ENABLE_FONT_SIZE_SCALE_get()
67 return (int)Dali::Toolkit::DevelTextLabel::Property::ENABLE_FONT_SIZE_SCALE;
70 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_RELATIVE_LINE_SIZE_get()
72 return (int)Dali::Toolkit::DevelTextLabel::Property::RELATIVE_LINE_SIZE;
75 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_ANCHOR_COLOR_get()
77 return (int)Dali::Toolkit::DevelTextLabel::Property::ANCHOR_COLOR;
80 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_ANCHOR_CLICKED_COLOR_get()
82 return (int)Dali::Toolkit::DevelTextLabel::Property::ANCHOR_CLICKED_COLOR;
85 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_REMOVE_FRONT_INSET_get()
87 return (int)Dali::Toolkit::DevelTextLabel::Property::REMOVE_FRONT_INSET;
90 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_REMOVE_BACK_INSET_get()
92 return (int)Dali::Toolkit::DevelTextLabel::Property::REMOVE_BACK_INSET;
95 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_CUTOUT_get()
97 return (int)Dali::Toolkit::DevelTextLabel::Property::CUTOUT;
100 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_GetTextSize(void * pTextLabel, unsigned int start, unsigned int end)
102 Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0;
105 textLabel = (Dali::Toolkit::TextLabel *)pTextLabel;
108 sizeList = new Dali::Vector< Dali::Vector2, Dali::TypeTraits< Dali::Vector2 >::IS_TRIVIAL_TYPE==true >
109 ((const Dali::Vector< Dali::Vector2, Dali::TypeTraits< Dali::Vector2 >::IS_TRIVIAL_TYPE==true > &)(Dali::Toolkit::DevelTextLabel::GetTextSize( *textLabel, start, end )));
111 CALL_CATCH_EXCEPTION(0);
117 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_GetTextPosition(void * pTextLabel, unsigned int start, unsigned int end)
119 Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0;
122 textLabel = (Dali::Toolkit::TextLabel *)pTextLabel;
125 sizeList = new Dali::Vector< Dali::Vector2, Dali::TypeTraits< Dali::Vector2 >::IS_TRIVIAL_TYPE==true >
126 ((const Dali::Vector< Dali::Vector2, Dali::TypeTraits< Dali::Vector2 >::IS_TRIVIAL_TYPE==true > &)(Dali::Toolkit::DevelTextLabel::GetTextPosition( *textLabel, start, end )));
128 CALL_CATCH_EXCEPTION(0);
134 SWIGEXPORT void * SWIGSTDCALL CSharp_TextGeometry_TextLabel_GetTextBoundingRectangle(void * pTextLabel, uint32_t startIndex, uint32_t endIndex)
136 Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0;
139 textLabel = (Dali::Toolkit::TextLabel *)pTextLabel;
142 boundingRect = new Dali::Rect<>
143 ((const Dali::Rect<> &)(Dali::Toolkit::DevelTextLabel::GetTextBoundingRectangle( *textLabel, startIndex, endIndex)));
145 CALL_CATCH_EXCEPTION(0);
151 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_TextLabel_SetTextFitArray(void * argTextLabel, bool argEnable, uint32_t argArraySize, float * argPointSizeArray, float * argMinLineSizeArray)
153 Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0;
154 textLabel = (Dali::Toolkit::TextLabel *)argTextLabel;
158 std::vector<Dali::Toolkit::DevelTextLabel::FitOption> fitOptions;
159 for(size_t i = 0u; i < argArraySize; i++)
161 fitOptions.push_back(Dali::Toolkit::DevelTextLabel::FitOption(argPointSizeArray[i], argMinLineSizeArray[i]));
163 Dali::Toolkit::DevelTextLabel::SetTextFitArray(*textLabel, argEnable, fitOptions);
164 } CALL_CATCH_EXCEPTION();
168 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_GetTextFitArray(void * argTextLabel)
171 Dali::Property::Map *map = 0;
172 Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0;
173 textLabel = (Dali::Toolkit::TextLabel *)argTextLabel;
177 Dali::Property::Map textFitArray;
178 bool enable = Dali::Toolkit::DevelTextLabel::IsTextFitArrayEnabled(*textLabel);
179 textFitArray.Add("enable", enable);
181 std::vector<Dali::Toolkit::DevelTextLabel::FitOption> fitOptions = Dali::Toolkit::DevelTextLabel::GetTextFitArray(*textLabel);
182 Dali::Property::Array pointSizeArray;
183 Dali::Property::Array minLineSizeArray;
184 for(Dali::Toolkit::DevelTextLabel::FitOption& option : fitOptions)
186 pointSizeArray.PushBack(option.GetPointSize());
187 minLineSizeArray.PushBack(option.GetMinLineSize());
190 textFitArray.Add("pointSizeArray", pointSizeArray);
191 textFitArray.Add("minLineSizeArray", minLineSizeArray);
193 map = (Dali::Property::Map *)new Dali::Property::Map((Dali::Property::Map const &)textFitArray);
194 } CALL_CATCH_EXCEPTION(0);
196 result = (void *)map;
200 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_AnchorClickedSignal(void * jarg1) {
202 Dali::Toolkit::TextLabel *arg1 = (Dali::Toolkit::TextLabel *) 0 ;
203 Dali::Toolkit::DevelTextLabel::AnchorClickedSignalType *result = 0 ;
205 arg1 = (Dali::Toolkit::TextLabel *)jarg1;
208 result = (Dali::Toolkit::DevelTextLabel::AnchorClickedSignalType *)&Dali::Toolkit::DevelTextLabel::AnchorClickedSignal(*arg1);
209 } CALL_CATCH_EXCEPTION(0);
212 jresult = (void *)result;
216 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_TextFitChangedSignal(void * jarg1) {
218 Dali::Toolkit::TextLabel *arg1 = (Dali::Toolkit::TextLabel *) 0 ;
219 Dali::Toolkit::DevelTextLabel::TextFitChangedSignalType *result = 0 ;
221 arg1 = (Dali::Toolkit::TextLabel *)jarg1;
224 result = (Dali::Toolkit::DevelTextLabel::TextFitChangedSignalType *) &Dali::Toolkit::DevelTextLabel::TextFitChangedSignal(*arg1);
225 } CALL_CATCH_EXCEPTION(0);
228 jresult = (void *)result;
233 SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_TextLabelSignal_Empty(void * jarg1) {
234 unsigned int jresult ;
235 Dali::Signal< void (Dali::Toolkit::TextLabel) > *arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *) 0 ;
238 arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
241 result = (bool)Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Empty((Dali::Signal< void (Dali::Toolkit::TextLabel) > const *)arg1);
242 } CALL_CATCH_EXCEPTION(0);
250 SWIGEXPORT unsigned long SWIGSTDCALL CSharp_Dali_TextLabelSignal_GetConnectionCount(void * jarg1) {
251 unsigned long jresult ;
252 Dali::Signal< void (Dali::Toolkit::TextLabel) > *arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *) 0 ;
255 arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
258 result = Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__GetConnectionCount((Dali::Signal< void (Dali::Toolkit::TextLabel) > const *)arg1);
259 } CALL_CATCH_EXCEPTION(0);
262 jresult = (unsigned long)result;
267 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_TextLabelSignal_Connect(void * jarg1, void * jarg2) {
268 Dali::Signal< void (Dali::Toolkit::TextLabel) > *arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *) 0 ;
269 void (*arg2)(Dali::Toolkit::TextLabel) = (void (*)(Dali::Toolkit::TextLabel)) 0 ;
271 arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
272 arg2 = (void (*)(Dali::Toolkit::TextLabel))jarg2;
275 Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Connect(arg1,arg2);
276 } CALL_CATCH_EXCEPTION();
282 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_TextLabelSignal_Disconnect(void * jarg1, void * jarg2) {
283 Dali::Signal< void (Dali::Toolkit::TextLabel) > *arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *) 0 ;
284 void (*arg2)(Dali::Toolkit::TextLabel) = (void (*)(Dali::Toolkit::TextLabel)) 0 ;
286 arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
287 arg2 = (void (*)(Dali::Toolkit::TextLabel))jarg2;
290 Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Disconnect(arg1,arg2);
291 } CALL_CATCH_EXCEPTION();
297 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_TextLabelSignal_Emit(void * jarg1, void * jarg2) {
298 Dali::Signal< void (Dali::Toolkit::TextLabel) > *arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *) 0 ;
299 Dali::Toolkit::TextLabel arg2 ;
300 Dali::Toolkit::TextLabel *argp2 ;
302 arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
303 argp2 = (Dali::Toolkit::TextLabel *)jarg2;
305 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::TextLabel", 0);
311 Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Emit(arg1,arg2);
312 } CALL_CATCH_EXCEPTION();
318 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_TextLabelSignal() {
320 Dali::Signal< void (Dali::Toolkit::TextLabel) > *result = 0 ;
324 result = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)new Dali::Signal< void (Dali::Toolkit::TextLabel) >();
325 } CALL_CATCH_EXCEPTION(0);
328 jresult = (void *)result;
333 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_TextLabelSignal(void * jarg1) {
334 Dali::Signal< void (Dali::Toolkit::TextLabel) > *arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *) 0 ;
336 arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
340 } CALL_CATCH_EXCEPTION();