2 * Copyright(c) 2019 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.
18 extern alias TizenSystemSettings;
19 using TizenSystemSettings.Tizen.System;
21 using System.Globalization;
22 using System.ComponentModel;
23 using Tizen.NUI.Binding;
25 namespace Tizen.NUI.BaseComponents
29 /// A control which renders a short text string.<br />
30 /// Text labels are lightweight, non-editable, and do not respond to the user input.<br />
32 /// <since_tizen> 3 </since_tizen>
33 public class TextLabel : View
35 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
36 [EditorBrowsable(EditorBrowsableState.Never)]
37 public static readonly BindableProperty TextProperty = BindableProperty.Create(nameof(Text), typeof(string), typeof(TextLabel), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
39 var textLabel = (TextLabel)bindable;
42 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT, new Tizen.NUI.PropertyValue((string)newValue));
45 defaultValueCreator: (bindable) =>
47 var textLabel = (TextLabel)bindable;
49 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT).Get(out temp);
52 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
53 [EditorBrowsable(EditorBrowsableState.Never)]
54 public static readonly BindableProperty FontFamilyProperty = BindableProperty.Create(nameof(FontFamily), typeof(string), typeof(TextLabel), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
56 var textLabel = (TextLabel)bindable;
59 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.FONT_FAMILY, new Tizen.NUI.PropertyValue((string)newValue));
62 defaultValueCreator: (bindable) =>
64 var textLabel = (TextLabel)bindable;
66 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.FONT_FAMILY).Get(out temp);
69 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
70 [EditorBrowsable(EditorBrowsableState.Never)]
71 public static readonly BindableProperty FontStyleProperty = BindableProperty.Create(nameof(FontStyle), typeof(PropertyMap), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
73 var textLabel = (TextLabel)bindable;
76 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.FONT_STYLE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
79 defaultValueCreator: (bindable) =>
81 var textLabel = (TextLabel)bindable;
82 PropertyMap temp = new PropertyMap();
83 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.FONT_STYLE).Get(temp);
86 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
87 [EditorBrowsable(EditorBrowsableState.Never)]
88 public static readonly BindableProperty PointSizeProperty = BindableProperty.Create(nameof(PointSize), typeof(float), typeof(TextLabel), default(float), propertyChanged: (bindable, oldValue, newValue) =>
90 var textLabel = (TextLabel)bindable;
93 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.POINT_SIZE, new Tizen.NUI.PropertyValue((float)newValue));
96 defaultValueCreator: (bindable) =>
98 var textLabel = (TextLabel)bindable;
100 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.POINT_SIZE).Get(out temp);
103 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
104 [EditorBrowsable(EditorBrowsableState.Never)]
105 public static readonly BindableProperty MultiLineProperty = BindableProperty.Create(nameof(MultiLine), typeof(bool), typeof(TextLabel), false, propertyChanged: (bindable, oldValue, newValue) =>
107 var textLabel = (TextLabel)bindable;
108 if (newValue != null)
110 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.MULTI_LINE, new Tizen.NUI.PropertyValue((bool)newValue));
113 defaultValueCreator: (bindable) =>
115 var textLabel = (TextLabel)bindable;
117 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.MULTI_LINE).Get(out temp);
120 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
121 [EditorBrowsable(EditorBrowsableState.Never)]
122 public static readonly BindableProperty HorizontalAlignmentProperty = BindableProperty.Create(nameof(HorizontalAlignment), typeof(HorizontalAlignment), typeof(TextLabel), HorizontalAlignment.Begin, propertyChanged: (bindable, oldValue, newValue) =>
124 var textLabel = (TextLabel)bindable;
125 string valueToString = "";
126 if (newValue != null)
128 switch ((HorizontalAlignment)newValue)
130 case HorizontalAlignment.Begin: { valueToString = "BEGIN"; break; }
131 case HorizontalAlignment.Center: { valueToString = "CENTER"; break; }
132 case HorizontalAlignment.End: { valueToString = "END"; break; }
133 default: { valueToString = "BEGIN"; break; }
135 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.HORIZONTAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
138 defaultValueCreator: (bindable) =>
140 var textLabel = (TextLabel)bindable;
142 if (Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.HORIZONTAL_ALIGNMENT).Get(out temp) == false)
144 NUILog.Error("HorizontalAlignment get error!");
148 case "BEGIN": return HorizontalAlignment.Begin;
149 case "CENTER": return HorizontalAlignment.Center;
150 case "END": return HorizontalAlignment.End;
151 default: return HorizontalAlignment.Begin;
154 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
155 [EditorBrowsable(EditorBrowsableState.Never)]
156 public static readonly BindableProperty VerticalAlignmentProperty = BindableProperty.Create(nameof(VerticalAlignment), typeof(VerticalAlignment), typeof(TextLabel), VerticalAlignment.Bottom, propertyChanged: (bindable, oldValue, newValue) =>
158 var textLabel = (TextLabel)bindable;
159 string valueToString = "";
160 if (newValue != null)
162 switch ((VerticalAlignment)newValue)
164 case VerticalAlignment.Top: { valueToString = "TOP"; break; }
165 case VerticalAlignment.Center: { valueToString = "CENTER"; break; }
166 case VerticalAlignment.Bottom: { valueToString = "BOTTOM"; break; }
167 default: { valueToString = "BOTTOM"; break; }
169 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.VERTICAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
172 defaultValueCreator: (bindable) =>
174 var textLabel = (TextLabel)bindable;
176 if (Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.VERTICAL_ALIGNMENT).Get(out temp) == false)
178 NUILog.Error("VerticalAlignment get error!");
183 case "TOP": return VerticalAlignment.Top;
184 case "CENTER": return VerticalAlignment.Center;
185 case "BOTTOM": return VerticalAlignment.Bottom;
186 default: return VerticalAlignment.Bottom;
189 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
190 [EditorBrowsable(EditorBrowsableState.Never)]
191 public static readonly BindableProperty TextColorProperty = BindableProperty.Create(nameof(TextColor), typeof(Color), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
193 var textLabel = (TextLabel)bindable;
194 if (newValue != null)
196 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT_COLOR, new Tizen.NUI.PropertyValue((Color)newValue));
199 defaultValueCreator: (bindable) =>
201 var textLabel = (TextLabel)bindable;
202 Color temp = new Color(0.0f, 0.0f, 0.0f, 0.0f);
203 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT_COLOR).Get(temp);
207 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
208 [EditorBrowsable(EditorBrowsableState.Never)]
209 public static readonly BindableProperty EnableMarkupProperty = BindableProperty.Create(nameof(EnableMarkup), typeof(bool), typeof(TextLabel), false, propertyChanged: (bindable, oldValue, newValue) =>
211 var textLabel = (TextLabel)bindable;
212 if (newValue != null)
214 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.ENABLE_MARKUP, new Tizen.NUI.PropertyValue((bool)newValue));
217 defaultValueCreator: (bindable) =>
219 var textLabel = (TextLabel)bindable;
221 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.ENABLE_MARKUP).Get(out temp);
224 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
225 [EditorBrowsable(EditorBrowsableState.Never)]
226 public static readonly BindableProperty EnableAutoScrollProperty = BindableProperty.Create(nameof(EnableAutoScroll), typeof(bool), typeof(TextLabel), false, propertyChanged: (bindable, oldValue, newValue) =>
228 var textLabel = (TextLabel)bindable;
229 if (newValue != null)
231 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.ENABLE_AUTO_SCROLL, new Tizen.NUI.PropertyValue((bool)newValue));
234 defaultValueCreator: (bindable) =>
236 var textLabel = (TextLabel)bindable;
238 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.ENABLE_AUTO_SCROLL).Get(out temp);
241 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
242 [EditorBrowsable(EditorBrowsableState.Never)]
243 public static readonly BindableProperty AutoScrollSpeedProperty = BindableProperty.Create(nameof(AutoScrollSpeed), typeof(int), typeof(TextLabel), default(int), propertyChanged: (bindable, oldValue, newValue) =>
245 var textLabel = (TextLabel)bindable;
246 if (newValue != null)
248 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_SPEED, new Tizen.NUI.PropertyValue((int)newValue));
251 defaultValueCreator: (bindable) =>
253 var textLabel = (TextLabel)bindable;
255 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_SPEED).Get(out temp);
258 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
259 [EditorBrowsable(EditorBrowsableState.Never)]
260 public static readonly BindableProperty AutoScrollLoopCountProperty = BindableProperty.Create(nameof(AutoScrollLoopCount), typeof(int), typeof(TextLabel), default(int), propertyChanged: (bindable, oldValue, newValue) =>
262 var textLabel = (TextLabel)bindable;
263 if (newValue != null)
265 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_LOOP_COUNT, new Tizen.NUI.PropertyValue((int)newValue));
268 defaultValueCreator: (bindable) =>
270 var textLabel = (TextLabel)bindable;
272 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_LOOP_COUNT).Get(out temp);
275 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
276 [EditorBrowsable(EditorBrowsableState.Never)]
277 public static readonly BindableProperty AutoScrollGapProperty = BindableProperty.Create(nameof(AutoScrollGap), typeof(float), typeof(TextLabel), default(float), propertyChanged: (bindable, oldValue, newValue) =>
279 var textLabel = (TextLabel)bindable;
280 if (newValue != null)
282 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_GAP, new Tizen.NUI.PropertyValue((float)newValue));
285 defaultValueCreator: (bindable) =>
287 var textLabel = (TextLabel)bindable;
289 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_GAP).Get(out temp);
292 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
293 [EditorBrowsable(EditorBrowsableState.Never)]
294 public static readonly BindableProperty LineSpacingProperty = BindableProperty.Create(nameof(LineSpacing), typeof(float), typeof(TextLabel), default(float), propertyChanged: (bindable, oldValue, newValue) =>
296 var textLabel = (TextLabel)bindable;
297 if (newValue != null)
299 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.LINE_SPACING, new Tizen.NUI.PropertyValue((float)newValue));
302 defaultValueCreator: (bindable) =>
304 var textLabel = (TextLabel)bindable;
306 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.LINE_SPACING).Get(out temp);
309 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
310 [EditorBrowsable(EditorBrowsableState.Never)]
311 public static readonly BindableProperty UnderlineProperty = BindableProperty.Create(nameof(Underline), typeof(PropertyMap), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
313 var textLabel = (TextLabel)bindable;
314 if (newValue != null)
316 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.UNDERLINE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
319 defaultValueCreator: (bindable) =>
321 var textLabel = (TextLabel)bindable;
322 PropertyMap temp = new PropertyMap();
323 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.UNDERLINE).Get(temp);
326 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
327 [EditorBrowsable(EditorBrowsableState.Never)]
328 public static readonly BindableProperty ShadowProperty = BindableProperty.Create(nameof(Shadow), typeof(PropertyMap), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
330 var textLabel = (TextLabel)bindable;
331 if (newValue != null)
333 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.SHADOW, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
336 defaultValueCreator: (bindable) =>
338 var textLabel = (TextLabel)bindable;
339 PropertyMap temp = new PropertyMap();
340 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.SHADOW).Get(temp);
343 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
344 [EditorBrowsable(EditorBrowsableState.Never)]
345 public static readonly BindableProperty EmbossProperty = BindableProperty.Create(nameof(Emboss), typeof(string), typeof(TextLabel), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
347 var textLabel = (TextLabel)bindable;
348 if (newValue != null)
350 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.EMBOSS, new Tizen.NUI.PropertyValue((string)newValue));
353 defaultValueCreator: (bindable) =>
355 var textLabel = (TextLabel)bindable;
357 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.EMBOSS).Get(out temp);
360 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
361 [EditorBrowsable(EditorBrowsableState.Never)]
362 public static readonly BindableProperty OutlineProperty = BindableProperty.Create(nameof(Outline), typeof(PropertyMap), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
364 var textLabel = (TextLabel)bindable;
365 if (newValue != null)
367 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.OUTLINE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
370 defaultValueCreator: (bindable) =>
372 var textLabel = (TextLabel)bindable;
373 PropertyMap temp = new PropertyMap();
374 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.OUTLINE).Get(temp);
377 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
378 [EditorBrowsable(EditorBrowsableState.Never)]
379 public static readonly BindableProperty PixelSizeProperty = BindableProperty.Create(nameof(PixelSize), typeof(float), typeof(TextLabel), default(float), propertyChanged: (bindable, oldValue, newValue) =>
381 var textLabel = (TextLabel)bindable;
382 if (newValue != null)
384 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.PIXEL_SIZE, new Tizen.NUI.PropertyValue((float)newValue));
387 defaultValueCreator: (bindable) =>
389 var textLabel = (TextLabel)bindable;
391 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.PIXEL_SIZE).Get(out temp);
394 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
395 [EditorBrowsable(EditorBrowsableState.Never)]
396 public static readonly BindableProperty EllipsisProperty = BindableProperty.Create(nameof(Ellipsis), typeof(bool), typeof(TextLabel), false, propertyChanged: (bindable, oldValue, newValue) =>
398 var textLabel = (TextLabel)bindable;
399 if (newValue != null)
401 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.ELLIPSIS, new Tizen.NUI.PropertyValue((bool)newValue));
404 defaultValueCreator: (bindable) =>
406 var textLabel = (TextLabel)bindable;
408 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.ELLIPSIS).Get(out temp);
411 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
412 [EditorBrowsable(EditorBrowsableState.Never)]
413 public static readonly BindableProperty AutoScrollLoopDelayProperty = BindableProperty.Create(nameof(AutoScrollLoopDelay), typeof(float), typeof(TextLabel), default(float), propertyChanged: (bindable, oldValue, newValue) =>
415 var textLabel = (TextLabel)bindable;
416 if (newValue != null)
418 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_LOOP_DELAY, new Tizen.NUI.PropertyValue((float)newValue));
421 defaultValueCreator: (bindable) =>
423 var textLabel = (TextLabel)bindable;
425 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_LOOP_DELAY).Get(out temp);
428 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
429 [EditorBrowsable(EditorBrowsableState.Never)]
430 public static readonly BindableProperty AutoScrollStopModeProperty = BindableProperty.Create(nameof(AutoScrollStopMode), typeof(AutoScrollStopMode), typeof(TextLabel), AutoScrollStopMode.FinishLoop, propertyChanged: (bindable, oldValue, newValue) =>
432 var textLabel = (TextLabel)bindable;
433 if (newValue != null)
435 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_STOP_MODE, new Tizen.NUI.PropertyValue((int)newValue));
438 defaultValueCreator: (bindable) =>
440 var textLabel = (TextLabel)bindable;
442 if (Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.AUTO_SCROLL_STOP_MODE).Get(out temp) == false)
444 NUILog.Error("AutoScrollStopMode get error!");
448 case "FINISH_LOOP": return AutoScrollStopMode.FinishLoop;
449 case "IMMEDIATE": return AutoScrollStopMode.Immediate;
450 default: return AutoScrollStopMode.FinishLoop;
453 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
454 [EditorBrowsable(EditorBrowsableState.Never)]
455 public static readonly BindableProperty LineWrapModeProperty = BindableProperty.Create(nameof(LineWrapMode), typeof(LineWrapMode), typeof(TextLabel), LineWrapMode.Word, propertyChanged: (bindable, oldValue, newValue) =>
457 var textLabel = (TextLabel)bindable;
458 if (newValue != null)
460 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.LINE_WRAP_MODE, new Tizen.NUI.PropertyValue((int)newValue));
463 defaultValueCreator: (bindable) =>
465 var textLabel = (TextLabel)bindable;
467 if (false == Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.LINE_WRAP_MODE).Get(out temp))
469 NUILog.Error("LineWrapMode get error!");
471 return (LineWrapMode)temp;
473 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
474 [EditorBrowsable(EditorBrowsableState.Never)]
475 public static readonly BindableProperty VerticalLineAlignmentProperty = BindableProperty.Create(nameof(VerticalLineAlignment), typeof(VerticalLineAlignment), typeof(TextLabel), VerticalLineAlignment.Bottom, propertyChanged: (bindable, oldValue, newValue) =>
477 var textLabel = (TextLabel)bindable;
478 if (newValue != null)
480 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.VERTICAL_LINE_ALIGNMENT, new Tizen.NUI.PropertyValue((int)newValue));
483 defaultValueCreator: (bindable) =>
485 var textLabel = (TextLabel)bindable;
487 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.VERTICAL_LINE_ALIGNMENT).Get(out temp);
488 return (VerticalLineAlignment)temp;
490 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
491 [EditorBrowsable(EditorBrowsableState.Never)]
492 public static readonly BindableProperty MatchSystemLanguageDirectionProperty = BindableProperty.Create(nameof(MatchSystemLanguageDirection), typeof(bool), typeof(TextLabel), false, propertyChanged: (bindable, oldValue, newValue) =>
494 var textLabel = (TextLabel)bindable;
495 if (newValue != null)
497 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.MATCH_SYSTEM_LANGUAGE_DIRECTION, new Tizen.NUI.PropertyValue((bool)newValue));
500 defaultValueCreator: (bindable) =>
502 var textLabel = (TextLabel)bindable;
504 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.MATCH_SYSTEM_LANGUAGE_DIRECTION).Get(out temp);
508 /// Only for XAML. No need of public API. Make hidden as inhouse API.
509 [EditorBrowsable(EditorBrowsableState.Never)]
510 public static readonly BindableProperty TextFitProperty = BindableProperty.Create(nameof(TextFit), typeof(PropertyMap), typeof(TextLabel), null, propertyChanged: (bindable, oldValue, newValue) =>
512 var textLabel = (TextLabel)bindable;
513 if (newValue != null)
515 Tizen.NUI.Object.SetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT_FIT, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
518 defaultValueCreator: (bindable) =>
520 var textLabel = (TextLabel)bindable;
521 PropertyMap temp = new PropertyMap();
522 Tizen.NUI.Object.GetProperty(textLabel.swigCPtr, TextLabel.Property.TEXT_FIT).Get(temp);
526 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
527 private string textLabelSid = null;
528 private bool systemlangTextFlag = false;
531 /// Creates the TextLabel control.
533 /// <since_tizen> 3 </since_tizen>
534 public TextLabel() : this(Interop.TextLabel.TextLabel_New__SWIG_0(), true)
536 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
540 /// Creates the TextLabel with setting the status of shown or hidden.
542 /// <param name="shown">false : Not displayed (hidden), true : displayed (shown)</param>
543 /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI).
544 [EditorBrowsable(EditorBrowsableState.Never)]
545 public TextLabel(bool shown) : this(Interop.TextLabel.TextLabel_New__SWIG_0(), true)
547 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
552 /// Creates the TextLabel control.
554 /// <param name="text">The text to display</param>
555 /// <since_tizen> 3 </since_tizen>
556 public TextLabel(string text) : this(Interop.TextLabel.TextLabel_New__SWIG_1(text), true)
558 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
562 /// Creates the TextLabel with setting the status of shown or hidden.
564 /// <param name="text">The text to display</param>
565 /// <param name="shown">false : Not displayed (hidden), true : displayed (shown)</param>
566 /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI).
567 [EditorBrowsable(EditorBrowsableState.Never)]
568 public TextLabel(string text, bool shown) : this(Interop.TextLabel.TextLabel_New__SWIG_1(text), true)
570 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
574 internal TextLabel(TextLabel handle, bool shown = true) : this(Interop.TextLabel.new_TextLabel__SWIG_1(TextLabel.getCPtr(handle)), true)
576 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
584 internal TextLabel(global::System.IntPtr cPtr, bool cMemoryOwn, bool shown = true) : base(Interop.TextLabel.TextLabel_SWIGUpcast(cPtr), cMemoryOwn)
586 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
595 /// The TranslatableText property.<br />
596 /// The text can set the SID value.<br />
598 /// <exception cref='ArgumentNullException'>
599 /// ResourceManager about multilingual is null.
601 /// <since_tizen> 4 </since_tizen>
602 public string TranslatableText
610 if (NUIApplication.MultilingualResourceManager == null)
612 throw new ArgumentNullException("ResourceManager about multilingual is null");
614 string translatableText = null;
615 textLabelSid = value;
616 translatableText = NUIApplication.MultilingualResourceManager?.GetString(textLabelSid, new CultureInfo(SystemSettings.LocaleLanguage.Replace("_", "-")));
617 if (translatableText != null)
619 Text = translatableText;
620 if (systemlangTextFlag == false)
622 SystemSettings.LocaleLanguageChanged += new WeakEventHandler<LocaleLanguageChangedEventArgs>(SystemSettings_LocaleLanguageChanged).Handler;
623 systemlangTextFlag = true;
630 NotifyPropertyChanged();
635 /// The Text property.<br />
636 /// The text to display in the UTF-8 format.<br />
638 /// <since_tizen> 3 </since_tizen>
643 return (string)GetValue(TextProperty);
647 SetValue(TextProperty, value);
648 NotifyPropertyChangedAndRequestLayout();
653 /// The FontFamily property.<br />
654 /// The requested font family to use.<br />
656 /// <since_tizen> 3 </since_tizen>
657 public string FontFamily
661 return (string)GetValue(FontFamilyProperty);
665 SetValue(FontFamilyProperty, value);
666 NotifyPropertyChangedAndRequestLayout();
671 /// The FontStyle property.<br />
672 /// The requested font style to use.<br />
674 /// <since_tizen> 3 </since_tizen>
675 public PropertyMap FontStyle
679 return (PropertyMap)GetValue(FontStyleProperty);
683 SetValue(FontStyleProperty, value);
684 NotifyPropertyChangedAndRequestLayout();
689 /// The PointSize property.<br />
690 /// The size of font in points.<br />
692 /// <since_tizen> 3 </since_tizen>
693 public float PointSize
697 return (float)GetValue(PointSizeProperty);
701 SetValue(PointSizeProperty, value);
702 NotifyPropertyChangedAndRequestLayout();
707 /// The MultiLine property.<br />
708 /// The single-line or multi-line layout option.<br />
710 /// <since_tizen> 3 </since_tizen>
711 public bool MultiLine
715 return (bool)GetValue(MultiLineProperty);
719 SetValue(MultiLineProperty, value);
720 NotifyPropertyChangedAndRequestLayout();
725 /// The HorizontalAlignment property.<br />
726 /// The line horizontal alignment.<br />
728 /// <since_tizen> 3 </since_tizen>
729 public HorizontalAlignment HorizontalAlignment
733 return (HorizontalAlignment)GetValue(HorizontalAlignmentProperty);
737 SetValue(HorizontalAlignmentProperty, value);
738 NotifyPropertyChanged();
743 /// The VerticalAlignment property.<br />
744 /// The line vertical alignment.<br />
746 /// <since_tizen> 3 </since_tizen>
747 public VerticalAlignment VerticalAlignment
751 return (VerticalAlignment)GetValue(VerticalAlignmentProperty);
755 SetValue(VerticalAlignmentProperty, value);
756 NotifyPropertyChanged();
761 /// The TextColor property.<br />
762 /// The color of the text.<br />
763 /// Animation framework can be used to change the color of the text when not using mark up.<br />
764 /// Cannot animate the color when text is auto scrolling.<br />
767 /// The property cascade chaining set is possible. For example, this (textLabel.TextColor.X = 0.1f;) is possible.
769 /// <since_tizen> 3 </since_tizen>
770 public Color TextColor
774 Color temp = (Color)GetValue(TextColorProperty);
775 return new Color(OnTextColorChanged, temp.R, temp.G, temp.B, temp.A);
779 SetValue(TextColorProperty, value);
780 NotifyPropertyChanged();
785 /// The ShadowOffset property.<br />
786 /// The drop shadow offset 0 indicates no shadow.<br />
788 /// <since_tizen> 3 </since_tizen>
790 /// Deprecated.(API Level 6) Use Shadow instead.
791 /// The property cascade chaining set is possible. For example, this (textLabel.ShadowOffset.X = 0.1f;) is possible.
793 [Obsolete("Please do not use this ShadowOffset(Deprecated). Please use Shadow instead.")]
794 public Vector2 ShadowOffset
798 Vector2 shadowOffset = new Vector2();
799 Shadow.Find(TextLabel.Property.SHADOW, "offset")?.Get(shadowOffset);
800 return new Vector2(OnShadowOffsetChanged, shadowOffset.X, shadowOffset.Y);
804 PropertyMap temp = new PropertyMap();
805 temp.Insert("offset", new PropertyValue(value));
807 PropertyMap shadowMap = Shadow;
808 shadowMap.Merge(temp);
810 SetValue(ShadowProperty, shadowMap);
811 NotifyPropertyChanged();
816 /// The ShadowColor property.<br />
817 /// The color of a drop shadow.<br />
819 /// <since_tizen> 3 </since_tizen>
821 /// Deprecated.(API Level 6) Use Shadow instead.
822 /// The property cascade chaining set is possible. For example, this (textLabel.ShadowColor.X = 0.1f;) is possible.
824 [Obsolete("Please do not use this ShadowColor(Deprecated). Please use Shadow instead.")]
825 public Vector4 ShadowColor
829 Vector4 shadowColor = new Vector4();
830 Shadow.Find(TextLabel.Property.SHADOW, "color")?.Get(shadowColor);
831 return new Vector4(OnShadowColorChanged, shadowColor.X, shadowColor.Y, shadowColor.Z, shadowColor.W);
835 PropertyMap temp = new PropertyMap();
836 temp.Insert("color", new PropertyValue(value));
838 PropertyMap shadowMap = Shadow;
839 shadowMap.Merge(temp);
841 SetValue(ShadowProperty, shadowMap);
842 NotifyPropertyChanged();
847 /// The UnderlineEnabled property.<br />
848 /// The underline enabled flag.<br />
850 /// <since_tizen> 3 </since_tizen>
852 /// Deprecated.(API Level 6) Use Underline instead.
854 [Obsolete("Please do not use this UnderlineEnabled(Deprecated). Please use Underline instead.")]
855 public bool UnderlineEnabled
859 bool underlineEnabled = false;
860 Underline.Find(TextLabel.Property.UNDERLINE, "enable")?.Get(out underlineEnabled);
861 return underlineEnabled;
865 PropertyMap temp = new PropertyMap();
866 temp.Add("enable", new PropertyValue(value));
868 PropertyMap undelineMap = Underline;
869 undelineMap.Merge(temp);
871 SetValue(UnderlineProperty, undelineMap);
872 NotifyPropertyChanged();
878 /// The UnderlineColor property.<br />
879 /// Overrides the underline height from font metrics.<br />
881 /// <since_tizen> 3 </since_tizen>
883 /// Deprecated.(API Level 6) Use Underline instead.
884 /// The property cascade chaining set is possible. For example, this (textLabel.UnderlineColor.X = 0.1f;) is possible.
886 [Obsolete("Please do not use this UnderlineColor(Deprecated). Please use Underline instead.")]
887 public Vector4 UnderlineColor
891 Vector4 underlineColor = new Vector4();
892 Underline.Find(TextLabel.Property.UNDERLINE, "color")?.Get(underlineColor);
893 return new Vector4(OnUnderlineColorChanged, underlineColor.X, underlineColor.Y, underlineColor.Z, underlineColor.W);
897 PropertyMap temp = new PropertyMap();
898 temp.Insert("color", new PropertyValue(value));
900 PropertyMap undelineMap = Underline;
901 undelineMap.Merge(temp);
903 SetValue(UnderlineProperty, undelineMap);
904 NotifyPropertyChanged();
909 /// The UnderlineHeight property.<br />
910 /// Overrides the underline height from font metrics.<br />
912 /// <since_tizen> 3 </since_tizen>
914 /// Deprecated.(API Level 6) Use Underline instead.
916 [Obsolete("Please do not use this UnderlineHeight(Deprecated). Please use Underline instead.")]
917 public float UnderlineHeight
921 float underlineHeight = 0.0f;
922 Underline.Find(TextLabel.Property.UNDERLINE, "height")?.Get(out underlineHeight);
923 return underlineHeight;
927 PropertyMap temp = new PropertyMap();
928 temp.Insert("height", new PropertyValue(value));
930 PropertyMap undelineMap = Underline;
931 undelineMap.Merge(temp);
933 SetValue(UnderlineProperty, undelineMap);
934 NotifyPropertyChanged();
939 /// The EnableMarkup property.<br />
940 /// Whether the mark-up processing is enabled.<br />
942 /// <since_tizen> 3 </since_tizen>
943 public bool EnableMarkup
947 return (bool)GetValue(EnableMarkupProperty);
951 SetValue(EnableMarkupProperty, value);
952 NotifyPropertyChanged();
957 /// The EnableAutoScroll property.<br />
958 /// Starts or stops auto scrolling.<br />
960 /// <since_tizen> 3 </since_tizen>
961 public bool EnableAutoScroll
965 return (bool)GetValue(EnableAutoScrollProperty);
969 SetValue(EnableAutoScrollProperty, value);
970 NotifyPropertyChanged();
975 /// The AutoScrollSpeed property.<br />
976 /// Sets the speed of scrolling in pixels per second.<br />
978 /// <since_tizen> 3 </since_tizen>
979 public int AutoScrollSpeed
983 return (int)GetValue(AutoScrollSpeedProperty);
987 SetValue(AutoScrollSpeedProperty, value);
988 NotifyPropertyChanged();
993 /// The AutoScrollLoopCount property.<br />
994 /// Number of complete loops when scrolling enabled.<br />
996 /// <since_tizen> 3 </since_tizen>
997 public int AutoScrollLoopCount
1001 return (int)GetValue(AutoScrollLoopCountProperty);
1005 SetValue(AutoScrollLoopCountProperty, value);
1006 NotifyPropertyChanged();
1011 /// The AutoScrollGap property.<br />
1012 /// Gap before scrolling wraps.<br />
1014 /// <since_tizen> 3 </since_tizen>
1015 public float AutoScrollGap
1019 return (float)GetValue(AutoScrollGapProperty);
1023 SetValue(AutoScrollGapProperty, value);
1024 NotifyPropertyChanged();
1029 /// The LineSpacing property.<br />
1030 /// The default extra space between lines in points.<br />
1032 /// <since_tizen> 3 </since_tizen>
1033 public float LineSpacing
1037 return (float)GetValue(LineSpacingProperty);
1041 SetValue(LineSpacingProperty, value);
1042 NotifyPropertyChangedAndRequestLayout();
1047 /// The Underline property.<br />
1048 /// The default underline parameters.<br />
1050 /// <since_tizen> 3 </since_tizen>
1051 public PropertyMap Underline
1055 return (PropertyMap)GetValue(UnderlineProperty);
1059 SetValue(UnderlineProperty, value);
1060 NotifyPropertyChanged();
1065 /// The Shadow property.<br />
1066 /// The default shadow parameters.<br />
1068 /// <since_tizen> 3 </since_tizen>
1069 public PropertyMap Shadow
1073 return (PropertyMap)GetValue(ShadowProperty);
1077 SetValue(ShadowProperty, value);
1078 NotifyPropertyChanged();
1083 /// The Emboss property.<br />
1084 /// The default emboss parameters.<br />
1086 /// <since_tizen> 3 </since_tizen>
1087 public string Emboss
1091 return (string)GetValue(EmbossProperty);
1095 SetValue(EmbossProperty, value);
1096 NotifyPropertyChanged();
1101 /// The Outline property.<br />
1102 /// The default outline parameters.<br />
1104 /// <since_tizen> 3 </since_tizen>
1105 public PropertyMap Outline
1109 return (PropertyMap)GetValue(OutlineProperty);
1113 SetValue(OutlineProperty, value);
1114 NotifyPropertyChanged();
1119 /// The PixelSize property.<br />
1120 /// The size of font in pixels.<br />
1122 /// <since_tizen> 3 </since_tizen>
1123 public float PixelSize
1127 return (float)GetValue(PixelSizeProperty);
1131 SetValue(PixelSizeProperty, value);
1132 NotifyPropertyChangedAndRequestLayout();
1137 /// The Ellipsis property.<br />
1138 /// Enable or disable the ellipsis.<br />
1140 /// <since_tizen> 3 </since_tizen>
1141 public bool Ellipsis
1145 return (bool)GetValue(EllipsisProperty);
1149 SetValue(EllipsisProperty, value);
1150 NotifyPropertyChanged();
1155 /// The AutoScrollLoopDelay property.<br />
1156 /// Do something.<br />
1158 /// <since_tizen> 3 </since_tizen>
1159 public float AutoScrollLoopDelay
1163 return (float)GetValue(AutoScrollLoopDelayProperty);
1167 SetValue(AutoScrollLoopDelayProperty, value);
1168 NotifyPropertyChanged();
1173 /// The AutoScrollStopMode property.<br />
1174 /// Do something.<br />
1176 /// <since_tizen> 3 </since_tizen>
1177 public AutoScrollStopMode AutoScrollStopMode
1181 return (AutoScrollStopMode)GetValue(AutoScrollStopModeProperty);
1185 SetValue(AutoScrollStopModeProperty, value);
1186 NotifyPropertyChanged();
1191 /// The line count of the text.
1193 /// <since_tizen> 3 </since_tizen>
1194 public int LineCount
1199 GetProperty(TextLabel.Property.LINE_COUNT).Get(out temp);
1205 /// The LineWrapMode property.<br />
1206 /// line wrap mode when the text lines over layout width.<br />
1208 /// <since_tizen> 4 </since_tizen>
1209 public LineWrapMode LineWrapMode
1213 return (LineWrapMode)GetValue(LineWrapModeProperty);
1217 SetValue(LineWrapModeProperty, value);
1218 NotifyPropertyChanged();
1223 /// The direction of the text such as left to right or right to left.
1225 /// <since_tizen> 5 </since_tizen>
1226 /// This will be released at Tizen.NET API Level 5, so currently this would be used as inhouse API.
1227 [EditorBrowsable(EditorBrowsableState.Never)]
1228 public TextDirection TextDirection
1233 GetProperty(TextLabel.Property.TEXT_DIRECTION).Get(out temp);
1234 return (TextDirection)temp;
1239 /// The vertical line alignment of the text.
1241 /// <since_tizen> 5 </since_tizen>
1242 /// This will be released at Tizen.NET API Level 5, so currently this would be used as inhouse API.
1243 [EditorBrowsable(EditorBrowsableState.Never)]
1244 public VerticalLineAlignment VerticalLineAlignment
1248 return (VerticalLineAlignment)GetValue(VerticalLineAlignmentProperty);
1252 SetValue(VerticalLineAlignmentProperty, value);
1253 NotifyPropertyChanged();
1258 /// The text alignment to match the direction of the system language.
1260 /// <since_tizen> 6 </since_tizen>
1261 public bool MatchSystemLanguageDirection
1265 return (bool)GetValue(MatchSystemLanguageDirectionProperty);
1269 SetValue(MatchSystemLanguageDirectionProperty, value);
1270 NotifyPropertyChanged();
1275 /// The text fit parameters.<br />
1276 /// The textFit map contains the following keys :<br />
1277 /// - enable (bool type) : True to enable the text fit or false to disable(the default value is false)<br />
1278 /// - minSize (float type) : Minimum Size for text fit(the default value is 10.f)<br />
1279 /// - maxSize (float type) : Maximum Size for text fit(the default value is 100.f)<br />
1280 /// - stepSize (float type) : Step Size for font increase(the default value is 1.f)<br />
1281 /// - fontSize (string type) : The size type of font, You can choose between "pointSize" or "pixelSize". (the default value is "pointSize")<br />
1283 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
1284 [EditorBrowsable(EditorBrowsableState.Never)]
1285 public PropertyMap TextFit
1289 return (PropertyMap)GetValue(TextFitProperty);
1293 SetValue(TextFitProperty, value);
1294 NotifyPropertyChanged();
1299 /// Downcasts a handle to textLabel handle
1301 /// <param name="handle"></param>
1302 /// <returns></returns>
1303 /// <since_tizen> 3 </since_tizen>
1304 /// Please do not use! this will be deprecated!
1305 /// Instead please use as keyword.
1306 [Obsolete("Please do not use! This will be deprecated! Please use as keyword instead! " +
1308 "BaseHandle handle = new TextLabel(\"Hello World!\"); " +
1309 "TextLabel label = handle as TextLabel")]
1310 [EditorBrowsable(EditorBrowsableState.Never)]
1311 public static TextLabel DownCast(BaseHandle handle)
1313 TextLabel ret = Registry.GetManagedBaseHandleFromNativePtr(handle) as TextLabel;
1315 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1319 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(TextLabel obj)
1321 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
1327 /// <since_tizen> 3 </since_tizen>
1328 protected override void Dispose(DisposeTypes type)
1335 //Release your own unmanaged resources here.
1336 //You should not access any managed member here except static instance.
1337 //because the execution order of Finalizes is non-deterministic.
1339 if (swigCPtr.Handle != global::System.IntPtr.Zero)
1343 swigCMemOwn = false;
1344 Interop.TextLabel.delete_TextLabel(swigCPtr);
1346 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
1353 /// Invoked whenever the binding context of the textlabel changes. Implement this method to add class handling for this event.
1355 protected override void OnBindingContextChanged()
1357 base.OnBindingContextChanged();
1360 private void SystemSettings_LocaleLanguageChanged(object sender, LocaleLanguageChangedEventArgs e)
1362 Text = NUIApplication.MultilingualResourceManager?.GetString(textLabelSid, new CultureInfo(e.Value.Replace("_", "-")));
1365 private void NotifyPropertyChangedAndRequestLayout()
1367 NotifyPropertyChanged();
1368 Layout?.RequestLayout();
1371 internal new class Property
1373 internal static readonly int RENDERING_BACKEND = Interop.TextLabel.TextLabel_Property_RENDERING_BACKEND_get();
1374 internal static readonly int TEXT = Interop.TextLabel.TextLabel_Property_TEXT_get();
1375 internal static readonly int FONT_FAMILY = Interop.TextLabel.TextLabel_Property_FONT_FAMILY_get();
1376 internal static readonly int FONT_STYLE = Interop.TextLabel.TextLabel_Property_FONT_STYLE_get();
1377 internal static readonly int POINT_SIZE = Interop.TextLabel.TextLabel_Property_POINT_SIZE_get();
1378 internal static readonly int MULTI_LINE = Interop.TextLabel.TextLabel_Property_MULTI_LINE_get();
1379 internal static readonly int HORIZONTAL_ALIGNMENT = Interop.TextLabel.TextLabel_Property_HORIZONTAL_ALIGNMENT_get();
1380 internal static readonly int VERTICAL_ALIGNMENT = Interop.TextLabel.TextLabel_Property_VERTICAL_ALIGNMENT_get();
1381 internal static readonly int TEXT_COLOR = Interop.TextLabel.TextLabel_Property_TEXT_COLOR_get();
1382 internal static readonly int ENABLE_MARKUP = Interop.TextLabel.TextLabel_Property_ENABLE_MARKUP_get();
1383 internal static readonly int ENABLE_AUTO_SCROLL = Interop.TextLabel.TextLabel_Property_ENABLE_AUTO_SCROLL_get();
1384 internal static readonly int AUTO_SCROLL_SPEED = Interop.TextLabel.TextLabel_Property_AUTO_SCROLL_SPEED_get();
1385 internal static readonly int AUTO_SCROLL_LOOP_COUNT = Interop.TextLabel.TextLabel_Property_AUTO_SCROLL_LOOP_COUNT_get();
1386 internal static readonly int AUTO_SCROLL_GAP = Interop.TextLabel.TextLabel_Property_AUTO_SCROLL_GAP_get();
1387 internal static readonly int LINE_SPACING = Interop.TextLabel.TextLabel_Property_LINE_SPACING_get();
1388 internal static readonly int UNDERLINE = Interop.TextLabel.TextLabel_Property_UNDERLINE_get();
1389 internal static readonly int SHADOW = Interop.TextLabel.TextLabel_Property_SHADOW_get();
1390 internal static readonly int EMBOSS = Interop.TextLabel.TextLabel_Property_EMBOSS_get();
1391 internal static readonly int OUTLINE = Interop.TextLabel.TextLabel_Property_OUTLINE_get();
1392 internal static readonly int PIXEL_SIZE = Interop.TextLabel.TextLabel_Property_PIXEL_SIZE_get();
1393 internal static readonly int ELLIPSIS = Interop.TextLabel.TextLabel_Property_ELLIPSIS_get();
1394 internal static readonly int AUTO_SCROLL_STOP_MODE = Interop.TextLabel.TextLabel_Property_AUTO_SCROLL_STOP_MODE_get();
1395 internal static readonly int AUTO_SCROLL_LOOP_DELAY = Interop.TextLabel.TextLabel_Property_AUTO_SCROLL_LOOP_DELAY_get();
1396 internal static readonly int LINE_COUNT = Interop.TextLabel.TextLabel_Property_LINE_COUNT_get();
1397 internal static readonly int LINE_WRAP_MODE = Interop.TextLabel.TextLabel_Property_LINE_WRAP_MODE_get();
1398 internal static readonly int TEXT_DIRECTION = Interop.TextLabel.TextLabel_Property_TEXT_DIRECTION_get();
1399 internal static readonly int VERTICAL_LINE_ALIGNMENT = Interop.TextLabel.TextLabel_Property_VERTICAL_LINE_ALIGNMENT_get();
1400 internal static readonly int MATCH_SYSTEM_LANGUAGE_DIRECTION = Interop.TextLabel.TextLabel_Property_MATCH_SYSTEM_LANGUAGE_DIRECTION_get();
1401 internal static readonly int TEXT_FIT = Interop.TextLabel.TextLabel_Property_TEXT_FIT_get();
1404 private void OnShadowColorChanged(float x, float y, float z, float w)
1406 ShadowColor = new Vector4(x, y, z, w);
1408 private void OnShadowOffsetChanged(float x, float y)
1410 ShadowOffset = new Vector2(x, y);
1412 private void OnTextColorChanged(float r, float g, float b, float a)
1414 TextColor = new Color(r, g, b, a);
1416 private void OnUnderlineColorChanged(float x, float y, float z, float w)
1418 UnderlineColor = new Vector4(x, y, z, w);