[dali_2.3.27] Merge branch 'devel/master'
[platform/core/uifw/dali-csharp-binder.git] / dali-csharp-binder / dali-toolkit / text-label-wrap.cpp
1 /*
2  * Copyright (c) 2021 Samsung Electronics Co., Ltd.
3  *
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
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
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.
15  *
16  */
17
18 // EXTERNAL INCLUDES
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>
21
22 // INTERNAL INCLUDES
23 #include <dali-csharp-binder/common/common.h>
24
25 SWIGINTERN bool Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Empty(Dali::Signal< void (Dali::Toolkit::TextLabel) > const *self){
26   return self->Empty();
27 }
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();
30 }
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 );
33 }
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 );
36 }
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){
38   self->Emit( arg );
39 }
40
41 #ifdef __cplusplus
42 extern "C" {
43 #endif
44
45 SWIGEXPORT int SWIGSTDCALL CSharp_TextLabel_Property_TEXT_FIT_get()
46 {
47   int jresult;
48   int result;
49
50   result = (int)Dali::Toolkit::DevelTextLabel::Property::TEXT_FIT;
51   jresult = (int)result;
52   return jresult;
53 }
54
55 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_FONT_SIZE_SCALE_get()
56 {
57   int jresult;
58   int result;
59
60   result = (int)Dali::Toolkit::DevelTextLabel::Property::FONT_SIZE_SCALE;
61   jresult = (int)result;
62   return jresult;
63 }
64
65 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_ENABLE_FONT_SIZE_SCALE_get()
66 {
67   return (int)Dali::Toolkit::DevelTextLabel::Property::ENABLE_FONT_SIZE_SCALE;
68 }
69
70 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_RELATIVE_LINE_SIZE_get()
71 {
72   return (int)Dali::Toolkit::DevelTextLabel::Property::RELATIVE_LINE_SIZE;
73 }
74
75 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_ANCHOR_COLOR_get()
76 {
77   return (int)Dali::Toolkit::DevelTextLabel::Property::ANCHOR_COLOR;
78 }
79
80 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_ANCHOR_CLICKED_COLOR_get()
81 {
82   return (int)Dali::Toolkit::DevelTextLabel::Property::ANCHOR_CLICKED_COLOR;
83 }
84
85 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_REMOVE_FRONT_INSET_get()
86 {
87   return (int)Dali::Toolkit::DevelTextLabel::Property::REMOVE_FRONT_INSET;
88 }
89
90 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_REMOVE_BACK_INSET_get()
91 {
92   return (int)Dali::Toolkit::DevelTextLabel::Property::REMOVE_BACK_INSET;
93 }
94
95 SWIGEXPORT int SWIGSTDCALL CSharp_Dali_TextLabel_Property_CUTOUT_get()
96 {
97   return (int)Dali::Toolkit::DevelTextLabel::Property::CUTOUT;
98 }
99
100 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_GetTextSize(void * pTextLabel, unsigned int start, unsigned int end)
101 {
102   Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0;
103   void* sizeList;
104
105   textLabel = (Dali::Toolkit::TextLabel *)pTextLabel;
106   {
107     try {
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 )));
110     }
111     CALL_CATCH_EXCEPTION(0);
112   }
113
114   return sizeList;
115 }
116
117 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_GetTextPosition(void * pTextLabel, unsigned int start, unsigned int end)
118 {
119   Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0;
120   void* sizeList;
121
122   textLabel = (Dali::Toolkit::TextLabel *)pTextLabel;
123   {
124     try {
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 )));
127     }
128     CALL_CATCH_EXCEPTION(0);
129   }
130
131   return sizeList;
132 }
133
134 SWIGEXPORT void * SWIGSTDCALL CSharp_TextGeometry_TextLabel_GetTextBoundingRectangle(void * pTextLabel, uint32_t startIndex, uint32_t endIndex)
135 {
136   Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0;
137   void* boundingRect;
138
139   textLabel = (Dali::Toolkit::TextLabel *)pTextLabel;
140   {
141     try {
142       boundingRect = new Dali::Rect<>
143       ((const Dali::Rect<> &)(Dali::Toolkit::DevelTextLabel::GetTextBoundingRectangle( *textLabel,  startIndex, endIndex)));
144     }
145     CALL_CATCH_EXCEPTION(0);
146   }
147
148   return boundingRect;
149 }
150
151 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_TextLabel_SetTextFitArray(void * argTextLabel, bool argEnable, uint32_t argArraySize, float * argPointSizeArray, float * argMinLineSizeArray)
152 {
153   Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0;
154   textLabel = (Dali::Toolkit::TextLabel *)argTextLabel;
155   {
156     try
157     {
158       std::vector<Dali::Toolkit::DevelTextLabel::FitOption> fitOptions;
159       for(size_t i = 0u; i < argArraySize; i++)
160       {
161         fitOptions.push_back(Dali::Toolkit::DevelTextLabel::FitOption(argPointSizeArray[i], argMinLineSizeArray[i]));
162       }
163       Dali::Toolkit::DevelTextLabel::SetTextFitArray(*textLabel, argEnable, fitOptions);
164     } CALL_CATCH_EXCEPTION();
165   }
166 }
167
168 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_GetTextFitArray(void * argTextLabel)
169 {
170   void* result;
171   Dali::Property::Map *map = 0;
172   Dali::Toolkit::TextLabel *textLabel = (Dali::Toolkit::TextLabel *) 0;
173   textLabel = (Dali::Toolkit::TextLabel *)argTextLabel;
174   {
175     try
176     {
177       Dali::Property::Map textFitArray;
178       bool enable = Dali::Toolkit::DevelTextLabel::IsTextFitArrayEnabled(*textLabel);
179       textFitArray.Add("enable", enable);
180
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)
185       {
186         pointSizeArray.PushBack(option.GetPointSize());
187         minLineSizeArray.PushBack(option.GetMinLineSize());
188       }
189
190       textFitArray.Add("pointSizeArray", pointSizeArray);
191       textFitArray.Add("minLineSizeArray", minLineSizeArray);
192
193       map = (Dali::Property::Map *)new Dali::Property::Map((Dali::Property::Map const &)textFitArray);
194     } CALL_CATCH_EXCEPTION(0);
195   }
196   result = (void *)map;
197   return result;
198 }
199
200 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_AnchorClickedSignal(void * jarg1) {
201   void * jresult ;
202   Dali::Toolkit::TextLabel *arg1 = (Dali::Toolkit::TextLabel *) 0 ;
203   Dali::Toolkit::DevelTextLabel::AnchorClickedSignalType *result = 0 ;
204
205   arg1 = (Dali::Toolkit::TextLabel *)jarg1;
206   {
207     try {
208       result = (Dali::Toolkit::DevelTextLabel::AnchorClickedSignalType *)&Dali::Toolkit::DevelTextLabel::AnchorClickedSignal(*arg1);
209     } CALL_CATCH_EXCEPTION(0);
210   }
211
212   jresult = (void *)result;
213   return jresult;
214 }
215
216 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_TextLabel_TextFitChangedSignal(void * jarg1) {
217   void * jresult ;
218   Dali::Toolkit::TextLabel *arg1 = (Dali::Toolkit::TextLabel *) 0 ;
219   Dali::Toolkit::DevelTextLabel::TextFitChangedSignalType *result = 0 ;
220
221   arg1 = (Dali::Toolkit::TextLabel *)jarg1;
222   {
223     try {
224       result = (Dali::Toolkit::DevelTextLabel::TextFitChangedSignalType *) &Dali::Toolkit::DevelTextLabel::TextFitChangedSignal(*arg1);
225     } CALL_CATCH_EXCEPTION(0);
226   }
227
228   jresult = (void *)result;
229   return jresult;
230 }
231
232
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 ;
236   bool result;
237
238   arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
239   {
240     try {
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);
243   }
244
245   jresult = result;
246   return jresult;
247 }
248
249
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 ;
253   std::size_t result;
254
255   arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
256   {
257     try {
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);
260   }
261
262   jresult = (unsigned long)result;
263   return jresult;
264 }
265
266
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 ;
270
271   arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
272   arg2 = (void (*)(Dali::Toolkit::TextLabel))jarg2;
273   {
274     try {
275       Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Connect(arg1,arg2);
276     } CALL_CATCH_EXCEPTION();
277   }
278
279 }
280
281
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 ;
285
286   arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
287   arg2 = (void (*)(Dali::Toolkit::TextLabel))jarg2;
288   {
289     try {
290       Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Disconnect(arg1,arg2);
291     } CALL_CATCH_EXCEPTION();
292   }
293
294 }
295
296
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 ;
301
302   arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
303   argp2 = (Dali::Toolkit::TextLabel *)jarg2;
304   if (!argp2) {
305     SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Toolkit::TextLabel", 0);
306     return ;
307   }
308   arg2 = *argp2;
309   {
310     try {
311       Dali_Signal_Sl_void_Sp_Dali_Toolkit_TextLabel_SP__Sg__Emit(arg1,arg2);
312     } CALL_CATCH_EXCEPTION();
313   }
314
315 }
316
317
318 SWIGEXPORT void * SWIGSTDCALL CSharp_Dali_new_TextLabelSignal() {
319   void * jresult ;
320   Dali::Signal< void (Dali::Toolkit::TextLabel) > *result = 0 ;
321
322   {
323     try {
324       result = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)new Dali::Signal< void (Dali::Toolkit::TextLabel) >();
325     } CALL_CATCH_EXCEPTION(0);
326   }
327
328   jresult = (void *)result;
329   return jresult;
330 }
331
332
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 ;
335
336   arg1 = (Dali::Signal< void (Dali::Toolkit::TextLabel) > *)jarg1;
337   {
338     try {
339       delete arg1;
340     } CALL_CATCH_EXCEPTION();
341   }
342
343 }
344
345
346 #ifdef __cplusplus
347 }
348 #endif
349