[NUI] Split large files (#1728)
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / BaseComponents / TextLabelBindableProperty.cs
1 /*
2  * Copyright(c) 2020 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 extern alias TizenSystemSettings;
19 using TizenSystemSettings.Tizen.System;
20 using System.ComponentModel;
21 using Tizen.NUI.Binding;
22
23 namespace Tizen.NUI.BaseComponents
24 {
25     /// <summary>
26     /// A control which renders a short text string.<br />
27     /// Text labels are lightweight, non-editable, and do not respond to the user input.<br />
28     /// </summary>
29     /// <since_tizen> 3 </since_tizen>
30     public partial class TextLabel
31     {
32         /// <summary>
33         /// StyleNameProperty
34         /// </summary>
35         [EditorBrowsable(EditorBrowsableState.Never)]
36         public static readonly BindableProperty TranslatableTextProperty = BindableProperty.Create(nameof(TranslatableText), typeof(string), typeof(TextLabel), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
37         {
38             var textLabel = (TextLabel)bindable;
39             if (newValue != null)
40             {
41                 textLabel.translatableText = (string)newValue;
42             }
43         },
44         defaultValueCreator: (bindable) =>
45         {
46             var textLabel = (TextLabel)bindable;
47             return textLabel.translatableText;
48         });
49         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
50         [EditorBrowsable(EditorBrowsableState.Never)]
51         public static readonly BindableProperty TextProperty = BindableProperty.Create(nameof(Text), typeof(string), typeof(TextLabel), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
52         {
53             var textLabel = (TextLabel)bindable;
54             if (newValue != null)
55             {
56                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT, new Tizen.NUI.PropertyValue((string)newValue));
57             }
58         },
59         defaultValueCreator: (bindable) =>
60         {
61             var textLabel = (TextLabel)bindable;
62             string temp;
63             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT).Get(out temp);
64             return temp;
65         });
66         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
67         [EditorBrowsable(EditorBrowsableState.Never)]
68         public static readonly BindableProperty FontFamilyProperty = BindableProperty.Create(nameof(FontFamily), typeof(string), typeof(TextLabel), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
69         {
70             var textLabel = (TextLabel)bindable;
71             if (newValue != null)
72             {
73                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.FONT_FAMILY, new Tizen.NUI.PropertyValue((string)newValue));
74             }
75         },
76         defaultValueCreator: (bindable) =>
77         {
78             var textLabel = (TextLabel)bindable;
79             string temp;
80             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.FONT_FAMILY).Get(out temp);
81             return temp;
82         });
83         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
84         [EditorBrowsable(EditorBrowsableState.Never)]
85         public static readonly BindableProperty FontStyleProperty = BindableProperty.Create(nameof(FontStyle), typeof(PropertyMap), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
86         {
87             var textLabel = (TextLabel)bindable;
88             if (newValue != null)
89             {
90                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.FONT_STYLE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
91             }
92         },
93         defaultValueCreator: (bindable) =>
94         {
95             var textLabel = (TextLabel)bindable;
96             PropertyMap temp = new PropertyMap();
97             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.FONT_STYLE).Get(temp);
98             return temp;
99         });
100         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
101         [EditorBrowsable(EditorBrowsableState.Never)]
102         public static readonly BindableProperty PointSizeProperty = BindableProperty.Create(nameof(PointSize), typeof(float), typeof(TextLabel), default(float), propertyChanged: (bindable, oldValue, newValue) =>
103         {
104             var textLabel = (TextLabel)bindable;
105             if (newValue != null)
106             {
107                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.POINT_SIZE, new Tizen.NUI.PropertyValue((float)newValue));
108             }
109         },
110         defaultValueCreator: (bindable) =>
111         {
112             var textLabel = (TextLabel)bindable;
113             float temp = 0.0f;
114             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.POINT_SIZE).Get(out temp);
115             return temp;
116         });
117         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
118         [EditorBrowsable(EditorBrowsableState.Never)]
119         public static readonly BindableProperty MultiLineProperty = BindableProperty.Create(nameof(MultiLine), typeof(bool), typeof(TextLabel), false, propertyChanged: (bindable, oldValue, newValue) =>
120         {
121             var textLabel = (TextLabel)bindable;
122             if (newValue != null)
123             {
124                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.MULTI_LINE, new Tizen.NUI.PropertyValue((bool)newValue));
125             }
126         },
127         defaultValueCreator: (bindable) =>
128         {
129             var textLabel = (TextLabel)bindable;
130             bool temp = false;
131             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.MULTI_LINE).Get(out temp);
132             return temp;
133         });
134         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
135         [EditorBrowsable(EditorBrowsableState.Never)]
136         public static readonly BindableProperty HorizontalAlignmentProperty = BindableProperty.Create(nameof(HorizontalAlignment), typeof(HorizontalAlignment), typeof(TextLabel), HorizontalAlignment.Begin, propertyChanged: (bindable, oldValue, newValue) =>
137         {
138             var textLabel = (TextLabel)bindable;
139             string valueToString = "";
140             if (newValue != null)
141             {
142                 valueToString = ((HorizontalAlignment)newValue).GetDescription<HorizontalAlignment>();
143                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.HORIZONTAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
144             }
145         },
146         defaultValueCreator: (bindable) =>
147         {
148             var textLabel = (TextLabel)bindable;
149             string temp;
150             if (Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.HORIZONTAL_ALIGNMENT).Get(out temp) == false)
151             {
152                 NUILog.Error("HorizontalAlignment get error!");
153             }
154             return temp.GetValueByDescription<HorizontalAlignment>();
155         });
156         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
157         [EditorBrowsable(EditorBrowsableState.Never)]
158         public static readonly BindableProperty VerticalAlignmentProperty = BindableProperty.Create(nameof(VerticalAlignment), typeof(VerticalAlignment), typeof(TextLabel), VerticalAlignment.Bottom, propertyChanged: (bindable, oldValue, newValue) =>
159         {
160             var textLabel = (TextLabel)bindable;
161             string valueToString = "";
162             if (newValue != null)
163             {
164                 valueToString = ((VerticalAlignment)newValue).GetDescription<VerticalAlignment>();
165                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.VERTICAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
166             }
167         },
168         defaultValueCreator: (bindable) =>
169         {
170             var textLabel = (TextLabel)bindable;
171             string temp;
172             if (Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.VERTICAL_ALIGNMENT).Get(out temp) == false)
173             {
174                 NUILog.Error("VerticalAlignment get error!");
175             }
176
177             return temp.GetValueByDescription<VerticalAlignment>();
178         });
179         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
180         [EditorBrowsable(EditorBrowsableState.Never)]
181         public static readonly BindableProperty TextColorProperty = BindableProperty.Create(nameof(TextColor), typeof(Color), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
182         {
183             var textLabel = (TextLabel)bindable;
184             if (newValue != null)
185             {
186                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT_COLOR, new Tizen.NUI.PropertyValue((Color)newValue));
187             }
188         },
189         defaultValueCreator: (bindable) =>
190         {
191             var textLabel = (TextLabel)bindable;
192             Color temp = new Color(0.0f, 0.0f, 0.0f, 0.0f);
193             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT_COLOR).Get(temp);
194             return temp;
195         });
196
197         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
198         [EditorBrowsable(EditorBrowsableState.Never)]
199         public static readonly BindableProperty EnableMarkupProperty = BindableProperty.Create(nameof(EnableMarkup), typeof(bool), typeof(TextLabel), false, propertyChanged: (bindable, oldValue, newValue) =>
200         {
201             var textLabel = (TextLabel)bindable;
202             if (newValue != null)
203             {
204                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.ENABLE_MARKUP, new Tizen.NUI.PropertyValue((bool)newValue));
205             }
206         },
207         defaultValueCreator: (bindable) =>
208         {
209             var textLabel = (TextLabel)bindable;
210             bool temp = false;
211             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.ENABLE_MARKUP).Get(out temp);
212             return temp;
213         });
214         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
215         [EditorBrowsable(EditorBrowsableState.Never)]
216         public static readonly BindableProperty EnableAutoScrollProperty = BindableProperty.Create(nameof(EnableAutoScroll), typeof(bool), typeof(TextLabel), false, propertyChanged: (bindable, oldValue, newValue) =>
217         {
218             var textLabel = (TextLabel)bindable;
219             if (newValue != null)
220             {
221                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.ENABLE_AUTO_SCROLL, new Tizen.NUI.PropertyValue((bool)newValue));
222             }
223         },
224         defaultValueCreator: (bindable) =>
225         {
226             var textLabel = (TextLabel)bindable;
227             bool temp = false;
228             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.ENABLE_AUTO_SCROLL).Get(out temp);
229             return temp;
230         });
231         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
232         [EditorBrowsable(EditorBrowsableState.Never)]
233         public static readonly BindableProperty AutoScrollSpeedProperty = BindableProperty.Create(nameof(AutoScrollSpeed), typeof(int), typeof(TextLabel), default(int), propertyChanged: (bindable, oldValue, newValue) =>
234         {
235             var textLabel = (TextLabel)bindable;
236             if (newValue != null)
237             {
238                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_SPEED, new Tizen.NUI.PropertyValue((int)newValue));
239             }
240         },
241         defaultValueCreator: (bindable) =>
242         {
243             var textLabel = (TextLabel)bindable;
244             int temp = 0;
245             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_SPEED).Get(out temp);
246             return temp;
247         });
248         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
249         [EditorBrowsable(EditorBrowsableState.Never)]
250         public static readonly BindableProperty AutoScrollLoopCountProperty = BindableProperty.Create(nameof(AutoScrollLoopCount), typeof(int), typeof(TextLabel), default(int), propertyChanged: (bindable, oldValue, newValue) =>
251         {
252             var textLabel = (TextLabel)bindable;
253             if (newValue != null)
254             {
255                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_LOOP_COUNT, new Tizen.NUI.PropertyValue((int)newValue));
256             }
257         },
258         defaultValueCreator: (bindable) =>
259         {
260             var textLabel = (TextLabel)bindable;
261             int temp = 0;
262             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_LOOP_COUNT).Get(out temp);
263             return temp;
264         });
265         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
266         [EditorBrowsable(EditorBrowsableState.Never)]
267         public static readonly BindableProperty AutoScrollGapProperty = BindableProperty.Create(nameof(AutoScrollGap), typeof(float), typeof(TextLabel), default(float), propertyChanged: (bindable, oldValue, newValue) =>
268         {
269             var textLabel = (TextLabel)bindable;
270             if (newValue != null)
271             {
272                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_GAP, new Tizen.NUI.PropertyValue((float)newValue));
273             }
274         },
275         defaultValueCreator: (bindable) =>
276         {
277             var textLabel = (TextLabel)bindable;
278             float temp = 0.0f;
279             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_GAP).Get(out temp);
280             return temp;
281         });
282         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
283         [EditorBrowsable(EditorBrowsableState.Never)]
284         public static readonly BindableProperty LineSpacingProperty = BindableProperty.Create(nameof(LineSpacing), typeof(float), typeof(TextLabel), default(float), propertyChanged: (bindable, oldValue, newValue) =>
285         {
286             var textLabel = (TextLabel)bindable;
287             if (newValue != null)
288             {
289                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.LINE_SPACING, new Tizen.NUI.PropertyValue((float)newValue));
290             }
291         },
292         defaultValueCreator: (bindable) =>
293         {
294             var textLabel = (TextLabel)bindable;
295             float temp = 0.0f;
296             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.LINE_SPACING).Get(out temp);
297             return temp;
298         });
299         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
300         [EditorBrowsable(EditorBrowsableState.Never)]
301         public static readonly BindableProperty UnderlineProperty = BindableProperty.Create(nameof(Underline), typeof(PropertyMap), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
302         {
303             var textLabel = (TextLabel)bindable;
304             if (newValue != null)
305             {
306                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.UNDERLINE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
307             }
308         },
309         defaultValueCreator: (bindable) =>
310         {
311             var textLabel = (TextLabel)bindable;
312             PropertyMap temp = new PropertyMap();
313             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.UNDERLINE).Get(temp);
314             return temp;
315         });
316         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
317         [EditorBrowsable(EditorBrowsableState.Never)]
318         public static readonly BindableProperty ShadowProperty = BindableProperty.Create(nameof(Shadow), typeof(PropertyMap), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
319         {
320             var textLabel = (TextLabel)bindable;
321             if (newValue != null)
322             {
323                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.SHADOW, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
324             }
325         },
326         defaultValueCreator: (bindable) =>
327         {
328             var textLabel = (TextLabel)bindable;
329             PropertyMap temp = new PropertyMap();
330             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.SHADOW).Get(temp);
331             return temp;
332         });
333         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
334         [EditorBrowsable(EditorBrowsableState.Never)]
335         public static readonly BindableProperty TextShadowProperty = BindableProperty.Create(nameof(TextShadow), typeof(TextShadow), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
336         {
337             var textLabel = (TextLabel)bindable;
338             if (newValue != null)
339             {
340                 (textLabel.textShadow ?? (textLabel.textShadow = new CloneableViewSelector<TextShadow>(textLabel, textLabel.OnControlStateChangedForShadow))).Set(newValue);
341                 Object.SetProperty(textLabel.swigCPtr, Property.SHADOW, TextShadow.ToPropertyValue(textLabel.textShadow.GetValue()));
342             }
343         },
344         defaultValueCreator: (bindable) =>
345         {
346             var textLabel = (TextLabel)bindable;
347             return textLabel.textShadow?.GetValue();
348         });
349         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
350         [EditorBrowsable(EditorBrowsableState.Never)]
351         public static readonly BindableProperty EmbossProperty = BindableProperty.Create(nameof(Emboss), typeof(string), typeof(TextLabel), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
352         {
353             var textLabel = (TextLabel)bindable;
354             if (newValue != null)
355             {
356                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.EMBOSS, new Tizen.NUI.PropertyValue((string)newValue));
357             }
358         },
359         defaultValueCreator: (bindable) =>
360         {
361             var textLabel = (TextLabel)bindable;
362             string temp;
363             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.EMBOSS).Get(out temp);
364             return temp;
365         });
366         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
367         [EditorBrowsable(EditorBrowsableState.Never)]
368         public static readonly BindableProperty OutlineProperty = BindableProperty.Create(nameof(Outline), typeof(PropertyMap), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
369         {
370             var textLabel = (TextLabel)bindable;
371             if (newValue != null)
372             {
373                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.OUTLINE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
374             }
375         },
376         defaultValueCreator: (bindable) =>
377         {
378             var textLabel = (TextLabel)bindable;
379             PropertyMap temp = new PropertyMap();
380             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.OUTLINE).Get(temp);
381             return temp;
382         });
383         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
384         [EditorBrowsable(EditorBrowsableState.Never)]
385         public static readonly BindableProperty PixelSizeProperty = BindableProperty.Create(nameof(PixelSize), typeof(float), typeof(TextLabel), default(float), propertyChanged: (bindable, oldValue, newValue) =>
386         {
387             var textLabel = (TextLabel)bindable;
388             if (newValue != null)
389             {
390                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.PIXEL_SIZE, new Tizen.NUI.PropertyValue((float)newValue));
391             }
392         },
393         defaultValueCreator: (bindable) =>
394         {
395             var textLabel = (TextLabel)bindable;
396             float temp = 0.0f;
397             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.PIXEL_SIZE).Get(out temp);
398             return temp;
399         });
400         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
401         [EditorBrowsable(EditorBrowsableState.Never)]
402         public static readonly BindableProperty EllipsisProperty = BindableProperty.Create(nameof(Ellipsis), typeof(bool), typeof(TextLabel), false, propertyChanged: (bindable, oldValue, newValue) =>
403         {
404             var textLabel = (TextLabel)bindable;
405             if (newValue != null)
406             {
407                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.ELLIPSIS, new Tizen.NUI.PropertyValue((bool)newValue));
408             }
409         },
410         defaultValueCreator: (bindable) =>
411         {
412             var textLabel = (TextLabel)bindable;
413             bool temp = false;
414             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.ELLIPSIS).Get(out temp);
415             return temp;
416         });
417         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
418         [EditorBrowsable(EditorBrowsableState.Never)]
419         public static readonly BindableProperty AutoScrollLoopDelayProperty = BindableProperty.Create(nameof(AutoScrollLoopDelay), typeof(float), typeof(TextLabel), default(float), propertyChanged: (bindable, oldValue, newValue) =>
420         {
421             var textLabel = (TextLabel)bindable;
422             if (newValue != null)
423             {
424                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_LOOP_DELAY, new Tizen.NUI.PropertyValue((float)newValue));
425             }
426         },
427         defaultValueCreator: (bindable) =>
428         {
429             var textLabel = (TextLabel)bindable;
430             float temp = 0.0f;
431             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_LOOP_DELAY).Get(out temp);
432             return temp;
433         });
434         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
435         [EditorBrowsable(EditorBrowsableState.Never)]
436         public static readonly BindableProperty AutoScrollStopModeProperty = BindableProperty.Create(nameof(AutoScrollStopMode), typeof(AutoScrollStopMode), typeof(TextLabel), AutoScrollStopMode.FinishLoop, propertyChanged: (bindable, oldValue, newValue) =>
437         {
438             var textLabel = (TextLabel)bindable;
439             if (newValue != null)
440             {
441                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_STOP_MODE, new Tizen.NUI.PropertyValue((int)newValue));
442             }
443         },
444         defaultValueCreator: (bindable) =>
445         {
446             var textLabel = (TextLabel)bindable;
447             string temp;
448             if (Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_STOP_MODE).Get(out temp) == false)
449             {
450                 NUILog.Error("AutoScrollStopMode get error!");
451             }
452             return temp.GetValueByDescription<AutoScrollStopMode>();
453         });
454         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
455         [EditorBrowsable(EditorBrowsableState.Never)]
456         public static readonly BindableProperty LineWrapModeProperty = BindableProperty.Create(nameof(LineWrapMode), typeof(LineWrapMode), typeof(TextLabel), LineWrapMode.Word, propertyChanged: (bindable, oldValue, newValue) =>
457         {
458             var textLabel = (TextLabel)bindable;
459             if (newValue != null)
460             {
461                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.LINE_WRAP_MODE, new Tizen.NUI.PropertyValue((int)newValue));
462             }
463         },
464         defaultValueCreator: (bindable) =>
465         {
466             var textLabel = (TextLabel)bindable;
467             int temp;
468             if (false == Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.LINE_WRAP_MODE).Get(out temp))
469             {
470                 NUILog.Error("LineWrapMode get error!");
471             }
472             return (LineWrapMode)temp;
473         });
474         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
475         [EditorBrowsable(EditorBrowsableState.Never)]
476         public static readonly BindableProperty VerticalLineAlignmentProperty = BindableProperty.Create(nameof(VerticalLineAlignment), typeof(VerticalLineAlignment), typeof(TextLabel), VerticalLineAlignment.Bottom, propertyChanged: (bindable, oldValue, newValue) =>
477         {
478             var textLabel = (TextLabel)bindable;
479             if (newValue != null)
480             {
481                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.VERTICAL_LINE_ALIGNMENT, new Tizen.NUI.PropertyValue((int)newValue));
482             }
483         },
484         defaultValueCreator: (bindable) =>
485         {
486             var textLabel = (TextLabel)bindable;
487             int temp = 0;
488             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.VERTICAL_LINE_ALIGNMENT).Get(out temp);
489             return (VerticalLineAlignment)temp;
490         });
491         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
492         [EditorBrowsable(EditorBrowsableState.Never)]
493         public static readonly BindableProperty MatchSystemLanguageDirectionProperty = BindableProperty.Create(nameof(MatchSystemLanguageDirection), typeof(bool), typeof(TextLabel), false, propertyChanged: (bindable, oldValue, newValue) =>
494         {
495             var textLabel = (TextLabel)bindable;
496             if (newValue != null)
497             {
498                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.MATCH_SYSTEM_LANGUAGE_DIRECTION, new Tizen.NUI.PropertyValue((bool)newValue));
499             }
500         },
501         defaultValueCreator: (bindable) =>
502         {
503             var textLabel = (TextLabel)bindable;
504             bool temp = false;
505             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.MATCH_SYSTEM_LANGUAGE_DIRECTION).Get(out temp);
506             return temp;
507         });
508
509         /// Only for XAML. No need of public API. Make hidden as inhouse API.
510         [EditorBrowsable(EditorBrowsableState.Never)]
511         public static readonly BindableProperty TextFitProperty = BindableProperty.Create(nameof(TextFit), typeof(PropertyMap), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
512         {
513             var textLabel = (TextLabel)bindable;
514             if (newValue != null)
515             {
516                 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT_FIT, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
517             }
518         },
519         defaultValueCreator: (bindable) =>
520         {
521             var textLabel = (TextLabel)bindable;
522             PropertyMap temp = new PropertyMap();
523             Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT_FIT).Get(temp);
524             return temp;
525         });
526     }
527 }