a5a9aa5f79939b83b9af4cea107b1186c22fad92
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / BaseComponents / Style / TextLabelStyle.cs
1 /*
2  * Copyright(c) 2019 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 using System;
18 using System.ComponentModel;
19 using Tizen.NUI.Binding;
20
21 namespace Tizen.NUI.BaseComponents
22 {
23     /// <summary>
24     /// The base class for Children attributes in Components.
25     /// </summary>
26     /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
27     [EditorBrowsable(EditorBrowsableState.Never)]
28     public class TextLabelStyle : ViewStyle
29     {
30         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
31         [EditorBrowsable(EditorBrowsableState.Never)]
32         public static readonly BindableProperty TranslatableTextSelectorProperty = BindableProperty.Create("TranslatableTextSelector", typeof(Selector<string>), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
33         {
34             var textFieldStyle = (TextLabelStyle)bindable;
35             if (null == textFieldStyle.translatableTextSelector) textFieldStyle.translatableTextSelector = new Selector<string>();
36             textFieldStyle.translatableTextSelector.Clone(null == newValue ? new Selector<string>() : (Selector<string>)newValue);
37         },
38         defaultValueCreator: (bindable) =>
39         {
40             var textFieldStyle = (TextLabelStyle)bindable;
41             return textFieldStyle.translatableTextSelector;
42         });
43         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
44         [EditorBrowsable(EditorBrowsableState.Never)]
45         public static readonly BindableProperty TextSelectorProperty = BindableProperty.Create("TextSelector", typeof(Selector<string>), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
46         {
47             var textFieldStyle = (TextLabelStyle)bindable;
48             if (null == textFieldStyle.textSelector) textFieldStyle.textSelector = new Selector<string>();
49             textFieldStyle.textSelector.Clone(null == newValue ? new Selector<string>() : (Selector<string>)newValue);
50         },
51         defaultValueCreator: (bindable) =>
52         {
53             var textFieldStyle = (TextLabelStyle)bindable;
54             return textFieldStyle.textSelector;
55         });
56         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
57         [EditorBrowsable(EditorBrowsableState.Never)]
58         public static readonly BindableProperty FontFamilySelectorProperty = BindableProperty.Create("FontFamilySelector", typeof(Selector<string>), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
59         {
60             var textFieldStyle = (TextLabelStyle)bindable;
61             if (null == textFieldStyle.fontFamilySelector) textFieldStyle.fontFamilySelector = new Selector<string>();
62             textFieldStyle.fontFamilySelector.Clone(null == newValue ? new Selector<string>() : (Selector<string>)newValue);
63         },
64         defaultValueCreator: (bindable) =>
65         {
66             var textFieldStyle = (TextLabelStyle)bindable;
67             return textFieldStyle.fontFamilySelector;
68         });
69         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
70         [EditorBrowsable(EditorBrowsableState.Never)]
71         public static readonly BindableProperty PointSizeSelectorProperty = BindableProperty.Create("PointSizeSelector", typeof(Selector<float?>), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
72         {
73             var textFieldStyle = (TextLabelStyle)bindable;
74             if (null == textFieldStyle.pointSizeSelector) textFieldStyle.pointSizeSelector = new Selector<float?>();
75             textFieldStyle.pointSizeSelector.Clone(null == newValue ? new Selector<float?>() : (Selector<float?>)newValue);
76         },
77         defaultValueCreator: (bindable) =>
78         {
79             var textFieldStyle = (TextLabelStyle)bindable;
80             return textFieldStyle.pointSizeSelector;
81         });
82         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
83         [EditorBrowsable(EditorBrowsableState.Never)]
84         public static readonly BindableProperty TextColorSelectorProperty = BindableProperty.Create("TextColorSelector", typeof(Selector<Color>), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
85         {
86             var textFieldStyle = (TextLabelStyle)bindable;
87             if (null == textFieldStyle.textColorSelector) textFieldStyle.textColorSelector = new Selector<Color>();
88             textFieldStyle.textColorSelector.Clone(null == newValue ? new Selector<Color>() : (Selector<Color>)newValue);
89         },
90         defaultValueCreator: (bindable) =>
91         {
92             var textFieldStyle = (TextLabelStyle)bindable;
93             return textFieldStyle.textColorSelector;
94         });
95
96         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
97         [EditorBrowsable(EditorBrowsableState.Never)]
98         public static readonly BindableProperty MultiLineProperty = BindableProperty.Create(nameof(MultiLine), typeof(bool?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
99         {
100             var textLabelStyle = (TextLabelStyle)bindable;
101             textLabelStyle.multiLine = (bool?)newValue;
102         },
103         defaultValueCreator: (bindable) =>
104         {
105             var textLabelStyle = (TextLabelStyle)bindable;
106             return textLabelStyle.multiLine;
107         });
108         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
109         [EditorBrowsable(EditorBrowsableState.Never)]
110         public static readonly BindableProperty HorizontalAlignmentProperty = BindableProperty.Create(nameof(HorizontalAlignment), typeof(HorizontalAlignment?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
111         {
112             var textLabelStyle = (TextLabelStyle)bindable;
113             textLabelStyle.horizontalAlignment = (HorizontalAlignment?)newValue;
114         },
115         defaultValueCreator: (bindable) =>
116         {
117             var textLabelStyle = (TextLabelStyle)bindable;
118             return textLabelStyle.horizontalAlignment;
119         });
120         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
121         [EditorBrowsable(EditorBrowsableState.Never)]
122         public static readonly BindableProperty VerticalAlignmentProperty = BindableProperty.Create(nameof(VerticalAlignment), typeof(VerticalAlignment?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
123         {
124             var textLabelStyle = (TextLabelStyle)bindable;
125             textLabelStyle.verticalAlignment = (VerticalAlignment?)newValue;
126         },
127         defaultValueCreator: (bindable) =>
128         {
129             var textLabelStyle = (TextLabelStyle)bindable;
130             return textLabelStyle.verticalAlignment;
131         });
132         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
133         [EditorBrowsable(EditorBrowsableState.Never)]
134         public static readonly BindableProperty EnableMarkupProperty = BindableProperty.Create(nameof(EnableMarkup), typeof(bool?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
135         {
136             var textLabelStyle = (TextLabelStyle)bindable;
137             textLabelStyle.enableMarkup = (bool?)newValue;
138         },
139         defaultValueCreator: (bindable) =>
140         {
141             var textLabelStyle = (TextLabelStyle)bindable;
142             return textLabelStyle.enableMarkup;
143         });
144         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
145         [EditorBrowsable(EditorBrowsableState.Never)]
146         public static readonly BindableProperty EnableAutoScrollProperty = BindableProperty.Create(nameof(EnableAutoScroll), typeof(bool?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
147         {
148             var textLabelStyle = (TextLabelStyle)bindable;
149             textLabelStyle.enableAutoScroll = (bool?)newValue;
150         },
151         defaultValueCreator: (bindable) =>
152         {
153             var textLabelStyle = (TextLabelStyle)bindable;
154             return textLabelStyle.enableAutoScroll;
155         });
156         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
157         [EditorBrowsable(EditorBrowsableState.Never)]
158         public static readonly BindableProperty AutoScrollSpeedProperty = BindableProperty.Create(nameof(AutoScrollSpeed), typeof(int?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
159         {
160             var textLabelStyle = (TextLabelStyle)bindable;
161             textLabelStyle.autoScrollSpeed = (int?)newValue;
162         },
163         defaultValueCreator: (bindable) =>
164         {
165             var textLabelStyle = (TextLabelStyle)bindable;
166             return textLabelStyle.autoScrollSpeed;
167         });
168         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
169         [EditorBrowsable(EditorBrowsableState.Never)]
170         public static readonly BindableProperty AutoScrollLoopCountProperty = BindableProperty.Create(nameof(AutoScrollLoopCount), typeof(int?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
171         {
172             var textLabelStyle = (TextLabelStyle)bindable;
173             textLabelStyle.autoScrollLoopCount = (int?)newValue;
174         },
175         defaultValueCreator: (bindable) =>
176         {
177             var textLabelStyle = (TextLabelStyle)bindable;
178             return textLabelStyle.autoScrollLoopCount;
179         });
180         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
181         [EditorBrowsable(EditorBrowsableState.Never)]
182         public static readonly BindableProperty AutoScrollGapProperty = BindableProperty.Create(nameof(AutoScrollGap), typeof(float?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
183         {
184             var textLabelStyle = (TextLabelStyle)bindable;
185             textLabelStyle.autoScrollGap = (float?)newValue;
186         },
187         defaultValueCreator: (bindable) =>
188         {
189             var textLabelStyle = (TextLabelStyle)bindable;
190             return textLabelStyle.autoScrollGap;
191         });
192         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
193         [EditorBrowsable(EditorBrowsableState.Never)]
194         public static readonly BindableProperty LineSpacingProperty = BindableProperty.Create(nameof(LineSpacing), typeof(float?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
195         {
196             var textLabelStyle = (TextLabelStyle)bindable;
197             textLabelStyle.lineSpacing = (float?)newValue;
198         },
199         defaultValueCreator: (bindable) =>
200         {
201             var textLabelStyle = (TextLabelStyle)bindable;
202             return textLabelStyle.lineSpacing;
203         });
204         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
205         [EditorBrowsable(EditorBrowsableState.Never)]
206         public static readonly BindableProperty EmbossProperty = BindableProperty.Create(nameof(Emboss), typeof(string), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
207         {
208             var textLabelStyle = (TextLabelStyle)bindable;
209             textLabelStyle.emboss = (string)newValue;
210         },
211         defaultValueCreator: (bindable) =>
212         {
213             var textLabelStyle = (TextLabelStyle)bindable;
214             return textLabelStyle.emboss;
215         });
216         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
217         [EditorBrowsable(EditorBrowsableState.Never)]
218         public static readonly BindableProperty PixelSizeProperty = BindableProperty.Create(nameof(PixelSize), typeof(float?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
219         {
220             var textLabelStyle = (TextLabelStyle)bindable;
221             textLabelStyle.pixelSize = (float?)newValue;
222         },
223         defaultValueCreator: (bindable) =>
224         {
225             var textLabelStyle = (TextLabelStyle)bindable;
226             return textLabelStyle.pixelSize;
227         });
228         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
229         [EditorBrowsable(EditorBrowsableState.Never)]
230         public static readonly BindableProperty EllipsisProperty = BindableProperty.Create(nameof(Ellipsis), typeof(bool?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
231         {
232             var textLabelStyle = (TextLabelStyle)bindable;
233             textLabelStyle.ellipsis = (bool?)newValue;
234         },
235         defaultValueCreator: (bindable) =>
236         {
237             var textLabelStyle = (TextLabelStyle)bindable;
238             return textLabelStyle.ellipsis;
239         });
240         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
241         [EditorBrowsable(EditorBrowsableState.Never)]
242         public static readonly BindableProperty AutoScrollLoopDelayProperty = BindableProperty.Create(nameof(AutoScrollLoopDelay), typeof(float?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
243         {
244             var textLabelStyle = (TextLabelStyle)bindable;
245             textLabelStyle.autoScrollLoopDelay = (float?)newValue;
246         },
247         defaultValueCreator: (bindable) =>
248         {
249             var textLabelStyle = (TextLabelStyle)bindable;
250             return textLabelStyle.autoScrollLoopDelay;
251         });
252         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
253         [EditorBrowsable(EditorBrowsableState.Never)]
254         public static readonly BindableProperty AutoScrollStopModeProperty = BindableProperty.Create(nameof(AutoScrollStopMode), typeof(AutoScrollStopMode?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
255         {
256             var textLabelStyle = (TextLabelStyle)bindable;
257             textLabelStyle.autoScrollStopMode = (AutoScrollStopMode?)newValue;
258         },
259         defaultValueCreator: (bindable) =>
260         {
261             var textLabelStyle = (TextLabelStyle)bindable;
262             return textLabelStyle.autoScrollStopMode;
263         });
264         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
265         [EditorBrowsable(EditorBrowsableState.Never)]
266         public static readonly BindableProperty LineWrapModeProperty = BindableProperty.Create(nameof(LineWrapMode), typeof(LineWrapMode?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
267         {
268             var textLabelStyle = (TextLabelStyle)bindable;
269             textLabelStyle.lineWrapMode = (LineWrapMode?)newValue;
270         },
271         defaultValueCreator: (bindable) =>
272         {
273             var textLabelStyle = (TextLabelStyle)bindable;
274             return textLabelStyle.lineWrapMode;
275         });
276         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
277         [EditorBrowsable(EditorBrowsableState.Never)]
278         public static readonly BindableProperty VerticalLineAlignmentProperty = BindableProperty.Create(nameof(VerticalLineAlignment), typeof(VerticalLineAlignment?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
279         {
280             var textLabelStyle = (TextLabelStyle)bindable;
281             textLabelStyle.verticalLineAlignment = (VerticalLineAlignment?)newValue;
282         },
283         defaultValueCreator: (bindable) =>
284         {
285             var textLabelStyle = (TextLabelStyle)bindable;
286             return textLabelStyle.verticalLineAlignment;
287         });
288         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
289         [EditorBrowsable(EditorBrowsableState.Never)]
290         public static readonly BindableProperty MatchSystemLanguageDirectionProperty = BindableProperty.Create(nameof(MatchSystemLanguageDirection), typeof(bool?), typeof(TextLabelStyle), null, propertyChanged: (bindable, oldValue, newValue) =>
291         {
292             var textLabelStyle = (TextLabelStyle)bindable;
293             textLabelStyle.matchSystemLanguageDirection = (bool?)newValue;
294         },
295         defaultValueCreator: (bindable) =>
296         {
297             var textLabelStyle = (TextLabelStyle)bindable;
298             return textLabelStyle.matchSystemLanguageDirection;
299         });
300
301         private bool? multiLine;
302         private HorizontalAlignment? horizontalAlignment;
303         private VerticalAlignment? verticalAlignment;
304         private bool? enableMarkup;
305         private bool? enableAutoScroll;
306         private int? autoScrollSpeed;
307         private int? autoScrollLoopCount;
308         private float? autoScrollGap;
309         private float? lineSpacing;
310         private string emboss;
311         private float? pixelSize;
312         private bool? ellipsis;
313         private float? autoScrollLoopDelay;
314         private AutoScrollStopMode? autoScrollStopMode;
315         private LineWrapMode? lineWrapMode;
316         private VerticalLineAlignment? verticalLineAlignment;
317         private bool? matchSystemLanguageDirection;
318         private Selector<string> translatableTextSelector;
319         private Selector<string> fontFamilySelector;
320         private Selector<string> textSelector;
321         private Selector<Color> textColorSelector;
322         private Selector<float?> pointSizeSelector;
323
324         static TextLabelStyle() { }
325
326         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
327         [EditorBrowsable(EditorBrowsableState.Never)]
328         public Selector<string> TranslatableText
329         {
330             get
331             {
332                 Selector<string> tmp = (Selector<string>)GetValue(TranslatableTextSelectorProperty);
333                 return (null != tmp) ? tmp : translatableTextSelector = new Selector<string>();
334             }
335             set => SetValue(TranslatableTextSelectorProperty, value);
336         }
337
338         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
339         [EditorBrowsable(EditorBrowsableState.Never)]
340         public Selector<string> FontFamily
341         {
342             get
343             {
344                 Selector<string> tmp = (Selector<string>)GetValue(FontFamilySelectorProperty);
345                 return (null != tmp) ? tmp : fontFamilySelector = new Selector<string>();
346             }
347             set => SetValue(FontFamilySelectorProperty, value);
348         }
349
350         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
351         [EditorBrowsable(EditorBrowsableState.Never)]
352         public bool? MultiLine
353         {
354             get => (bool?)GetValue(MultiLineProperty);
355             set => SetValue(MultiLineProperty, value);
356         }
357
358         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
359         [EditorBrowsable(EditorBrowsableState.Never)]
360         public HorizontalAlignment? HorizontalAlignment
361         {
362             get => (HorizontalAlignment?)GetValue(HorizontalAlignmentProperty);
363             set => SetValue(HorizontalAlignmentProperty, value);
364         }
365
366         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
367         [EditorBrowsable(EditorBrowsableState.Never)]
368         public VerticalAlignment? VerticalAlignment
369         {
370             get => (VerticalAlignment?)GetValue(VerticalAlignmentProperty);
371             set => SetValue(VerticalAlignmentProperty, value);
372         }
373
374         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
375         [EditorBrowsable(EditorBrowsableState.Never)]
376         public bool? EnableMarkup
377         {
378             get => (bool?)GetValue(EnableMarkupProperty);
379             set => SetValue(EnableMarkupProperty, value);
380         }
381
382         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
383         [EditorBrowsable(EditorBrowsableState.Never)]
384         public bool? EnableAutoScroll
385         {
386             get => (bool?)GetValue(EnableAutoScrollProperty);
387             set => SetValue(EnableAutoScrollProperty, value);
388         }
389
390         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
391         [EditorBrowsable(EditorBrowsableState.Never)]
392         public int? AutoScrollSpeed
393         {
394             get => (int?)GetValue(AutoScrollSpeedProperty);
395             set => SetValue(AutoScrollSpeedProperty, value);
396         }
397
398         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
399         [EditorBrowsable(EditorBrowsableState.Never)]
400         public int? AutoScrollLoopCount
401         {
402             get => (int?)GetValue(AutoScrollLoopCountProperty);
403             set => SetValue(AutoScrollLoopCountProperty, value);
404         }
405
406         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
407         [EditorBrowsable(EditorBrowsableState.Never)]
408         public float? AutoScrollGap
409         {
410             get => (float?)GetValue(AutoScrollGapProperty);
411             set => SetValue(AutoScrollGapProperty, value);
412         }
413
414         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
415         [EditorBrowsable(EditorBrowsableState.Never)]
416         public float? LineSpacing
417         {
418             get => (float?)GetValue(LineSpacingProperty);
419             set => SetValue(LineSpacingProperty, value);
420         }
421
422         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
423         [EditorBrowsable(EditorBrowsableState.Never)]
424         public string Emboss
425         {
426             get => (string)GetValue(EmbossProperty);
427             set => SetValue(EmbossProperty, value);
428         }
429
430         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
431         [EditorBrowsable(EditorBrowsableState.Never)]
432         public float? PixelSize
433         {
434             get => (float?)GetValue(PixelSizeProperty);
435             set => SetValue(PixelSizeProperty, value);
436         }
437
438         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
439         [EditorBrowsable(EditorBrowsableState.Never)]
440         public bool? Ellipsis
441         {
442             get => (bool?)GetValue(EllipsisProperty);
443             set => SetValue(EllipsisProperty, value);
444         }
445
446         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
447         [EditorBrowsable(EditorBrowsableState.Never)]
448         public float? AutoScrollLoopDelay
449         {
450             get => (float?)GetValue(AutoScrollLoopDelayProperty);
451             set => SetValue(AutoScrollLoopDelayProperty, value);
452         }
453
454         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
455         [EditorBrowsable(EditorBrowsableState.Never)]
456         public AutoScrollStopMode? AutoScrollStopMode
457         {
458             get => (AutoScrollStopMode?)GetValue(AutoScrollStopModeProperty);
459             set => SetValue(AutoScrollStopModeProperty, value);
460         }
461
462         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
463         [EditorBrowsable(EditorBrowsableState.Never)]
464         public LineWrapMode? LineWrapMode
465         {
466             get => (LineWrapMode?)GetValue(LineWrapModeProperty);
467             set => SetValue(LineWrapModeProperty, value);
468         }
469
470         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
471         [EditorBrowsable(EditorBrowsableState.Never)]
472         public VerticalLineAlignment? VerticalLineAlignment
473         {
474             get => (VerticalLineAlignment?)GetValue(VerticalLineAlignmentProperty);
475             set => SetValue(VerticalLineAlignmentProperty, value);
476         }
477
478         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
479         [EditorBrowsable(EditorBrowsableState.Never)]
480         public bool? MatchSystemLanguageDirection
481         {
482             get => (bool?)GetValue(MatchSystemLanguageDirectionProperty);
483             set => SetValue(MatchSystemLanguageDirectionProperty, value);
484         }
485
486         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
487         [EditorBrowsable(EditorBrowsableState.Never)]
488         public Selector<string> Text
489         {
490             get
491             {
492                 Selector<string> tmp = (Selector<string>)GetValue(TextSelectorProperty);
493                 return (null != tmp) ? tmp : textSelector = new Selector<string>();
494             }
495             set => SetValue(TextSelectorProperty, value);
496         }
497
498         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
499         [EditorBrowsable(EditorBrowsableState.Never)]
500         public Selector<Color> TextColor
501         {
502             get
503             {
504                 Selector<Color> tmp = (Selector<Color>)GetValue(TextColorSelectorProperty);
505                 return (null != tmp) ? tmp : textColorSelector = new Selector<Color>();
506             }
507             set => SetValue(TextColorSelectorProperty, value);
508         }
509
510         /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
511         [EditorBrowsable(EditorBrowsableState.Never)]
512         public Selector<float?> PointSize
513         {
514             get
515             {
516                 Selector<float?> tmp = (Selector<float?>)GetValue(PointSizeSelectorProperty);
517                 return (null != tmp) ? tmp : pointSizeSelector = new Selector<float?>();
518             }
519             set => SetValue(PointSizeSelectorProperty, value);
520         }
521     }
522 }