nui 0.2.32 manual merge, mapping to dali 1.2.32
[platform/core/csapi/tizenfx.git] / NUISamples / Tizen.NUI / src / public / TextLabel.cs
1 /** Copyright (c) 2017 Samsung Electronics Co., Ltd.
2 *
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 *
15 */
16 // This File has been auto-generated by SWIG and then modified using DALi Ruby Scripts
17 //------------------------------------------------------------------------------
18 // <auto-generated />
19 //
20 // This file was automatically generated by SWIG (http://www.swig.org).
21 // Version 3.0.9
22 //
23 // Do not make changes to this file unless you know what you are doing--modify
24 // the SWIG interface file instead.
25 //------------------------------------------------------------------------------
26
27 namespace Tizen.NUI
28 {
29
30     /// <summary>
31     /// A control which renders a short text string.
32     /// Text labels are lightweight, non-editable and do not respond to user input.
33     /// </summary>
34     public class TextLabel : View
35     {
36         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
37
38         internal TextLabel(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.TextLabel_SWIGUpcast(cPtr), cMemoryOwn)
39         {
40             swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
41         }
42
43         internal static global::System.Runtime.InteropServices.HandleRef getCPtr(TextLabel obj)
44         {
45             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
46         }
47
48         ~TextLabel()
49         {
50             DisposeQueue.Instance.Add(this);
51         }
52
53         /// <summary>
54         /// Dispose
55         /// </summary>
56         public override void Dispose()
57         {
58             if (!Stage.IsInstalled())
59             {
60                 DisposeQueue.Instance.Add(this);
61                 return;
62             }
63
64             lock (this)
65             {
66                 if (swigCPtr.Handle != global::System.IntPtr.Zero)
67                 {
68                     if (swigCMemOwn)
69                     {
70                         swigCMemOwn = false;
71                         NDalicPINVOKE.delete_TextLabel(swigCPtr);
72                     }
73                     swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
74                 }
75                 global::System.GC.SuppressFinalize(this);
76                 base.Dispose();
77             }
78         }
79
80
81         internal class Property : global::System.IDisposable
82         {
83             private global::System.Runtime.InteropServices.HandleRef swigCPtr;
84             protected bool swigCMemOwn;
85
86             internal Property(global::System.IntPtr cPtr, bool cMemoryOwn)
87             {
88                 swigCMemOwn = cMemoryOwn;
89                 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
90             }
91
92             internal static global::System.Runtime.InteropServices.HandleRef getCPtr(Property obj)
93             {
94                 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
95             }
96
97             ~Property()
98             {
99                 Dispose();
100             }
101
102             public virtual void Dispose()
103             {
104                 lock (this)
105                 {
106                     if (swigCPtr.Handle != global::System.IntPtr.Zero)
107                     {
108                         if (swigCMemOwn)
109                         {
110                             swigCMemOwn = false;
111                             NDalicPINVOKE.delete_TextLabel_Property(swigCPtr);
112                         }
113                         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
114                     }
115                     global::System.GC.SuppressFinalize(this);
116                 }
117             }
118
119             internal Property() : this(NDalicPINVOKE.new_TextLabel_Property(), true)
120             {
121                 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
122             }
123
124             internal static readonly int RENDERING_BACKEND = NDalicPINVOKE.TextLabel_Property_RENDERING_BACKEND_get();
125             internal static readonly int TEXT = NDalicPINVOKE.TextLabel_Property_TEXT_get();
126             internal static readonly int FONT_FAMILY = NDalicPINVOKE.TextLabel_Property_FONT_FAMILY_get();
127             internal static readonly int FONT_STYLE = NDalicPINVOKE.TextLabel_Property_FONT_STYLE_get();
128             internal static readonly int POINT_SIZE = NDalicPINVOKE.TextLabel_Property_POINT_SIZE_get();
129             internal static readonly int MULTI_LINE = NDalicPINVOKE.TextLabel_Property_MULTI_LINE_get();
130             internal static readonly int HORIZONTAL_ALIGNMENT = NDalicPINVOKE.TextLabel_Property_HORIZONTAL_ALIGNMENT_get();
131             internal static readonly int VERTICAL_ALIGNMENT = NDalicPINVOKE.TextLabel_Property_VERTICAL_ALIGNMENT_get();
132             internal static readonly int TEXT_COLOR = NDalicPINVOKE.TextLabel_Property_TEXT_COLOR_get();
133             internal static readonly int SHADOW_OFFSET = NDalicPINVOKE.TextLabel_Property_SHADOW_OFFSET_get();
134             internal static readonly int SHADOW_COLOR = NDalicPINVOKE.TextLabel_Property_SHADOW_COLOR_get();
135             internal static readonly int UNDERLINE_ENABLED = NDalicPINVOKE.TextLabel_Property_UNDERLINE_ENABLED_get();
136             internal static readonly int UNDERLINE_COLOR = NDalicPINVOKE.TextLabel_Property_UNDERLINE_COLOR_get();
137             internal static readonly int UNDERLINE_HEIGHT = NDalicPINVOKE.TextLabel_Property_UNDERLINE_HEIGHT_get();
138             internal static readonly int ENABLE_MARKUP = NDalicPINVOKE.TextLabel_Property_ENABLE_MARKUP_get();
139             internal static readonly int ENABLE_AUTO_SCROLL = NDalicPINVOKE.TextLabel_Property_ENABLE_AUTO_SCROLL_get();
140             internal static readonly int AUTO_SCROLL_SPEED = NDalicPINVOKE.TextLabel_Property_AUTO_SCROLL_SPEED_get();
141             internal static readonly int AUTO_SCROLL_LOOP_COUNT = NDalicPINVOKE.TextLabel_Property_AUTO_SCROLL_LOOP_COUNT_get();
142             internal static readonly int AUTO_SCROLL_GAP = NDalicPINVOKE.TextLabel_Property_AUTO_SCROLL_GAP_get();
143             internal static readonly int LINE_SPACING = NDalicPINVOKE.TextLabel_Property_LINE_SPACING_get();
144             internal static readonly int UNDERLINE = NDalicPINVOKE.TextLabel_Property_UNDERLINE_get();
145             internal static readonly int SHADOW = NDalicPINVOKE.TextLabel_Property_SHADOW_get();
146             internal static readonly int EMBOSS = NDalicPINVOKE.TextLabel_Property_EMBOSS_get();
147             internal static readonly int OUTLINE = NDalicPINVOKE.TextLabel_Property_OUTLINE_get();
148
149         }
150
151         /// <summary>
152         /// Creates the TextLabel control.
153         /// </summary>
154         public TextLabel() : this(NDalicPINVOKE.TextLabel_New__SWIG_0(), true)
155         {
156             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
157
158         }
159
160         /// <summary>
161         /// Creates the TextLabel control.
162         /// </summary>
163         /// <param name="text">The text to display</param>
164         public TextLabel(string text) : this(NDalicPINVOKE.TextLabel_New__SWIG_1(text), true)
165         {
166             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
167
168         }
169         internal TextLabel(TextLabel handle) : this(NDalicPINVOKE.new_TextLabel__SWIG_1(TextLabel.getCPtr(handle)), true)
170         {
171             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
172         }
173
174         internal TextLabel Assign(TextLabel handle)
175         {
176             TextLabel ret = new TextLabel(NDalicPINVOKE.TextLabel_Assign(swigCPtr, TextLabel.getCPtr(handle)), false);
177             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
178             return ret;
179         }
180
181         /// <summary>
182         /// Downcasts a handle to TextLabel.
183         /// </summary>
184         /// <param name="handle">Handle to an object</param>
185         public new static TextLabel DownCast(BaseHandle handle)
186         {
187             TextLabel ret = new TextLabel(NDalicPINVOKE.TextLabel_DownCast(BaseHandle.getCPtr(handle)), true);
188             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
189             return ret;
190         }
191
192         internal enum PropertyRange
193         {
194             PROPERTY_START_INDEX = PropertyRanges.PROPERTY_REGISTRATION_START_INDEX,
195             PROPERTY_END_INDEX = View.PropertyRange.PROPERTY_START_INDEX + 1000
196         }
197
198         /// <summary>
199         /// RenderingBackend property
200         /// The type of rendering e.g. bitmap-based.
201         /// </summary>
202         public int RenderingBackend
203         {
204             get
205             {
206                 int temp = 0;
207                 GetProperty(TextLabel.Property.RENDERING_BACKEND).Get(ref temp);
208                 return temp;
209             }
210             set
211             {
212                 SetProperty(TextLabel.Property.RENDERING_BACKEND, new Tizen.NUI.PropertyValue(value));
213             }
214         }
215
216         /// <summary>
217         /// Text property
218         /// The text to display in UTF-8 format.
219         /// </summary>
220         public string Text
221         {
222             get
223             {
224                 string temp;
225                 GetProperty(TextLabel.Property.TEXT).Get(out temp);
226                 return temp;
227             }
228             set
229             {
230                 SetProperty(TextLabel.Property.TEXT, new Tizen.NUI.PropertyValue(value));
231             }
232         }
233
234         /// <summary>
235         /// FontFamily property
236         /// The requested font family to use.
237         /// </summary>
238         public string FontFamily
239         {
240             get
241             {
242                 string temp;
243                 GetProperty(TextLabel.Property.FONT_FAMILY).Get(out temp);
244                 return temp;
245             }
246             set
247             {
248                 SetProperty(TextLabel.Property.FONT_FAMILY, new Tizen.NUI.PropertyValue(value));
249             }
250         }
251
252         /// <summary>
253         /// FontStyle property
254         /// The requested font style to use.
255         /// </summary>
256         public PropertyMap FontStyle
257         {
258             get
259             {
260                 PropertyMap temp = new PropertyMap();
261                 GetProperty(TextLabel.Property.FONT_STYLE).Get(temp);
262                 return temp;
263             }
264             set
265             {
266                 SetProperty(TextLabel.Property.FONT_STYLE, new Tizen.NUI.PropertyValue(value));
267             }
268         }
269
270         /// <summary>
271         /// PointSize property
272         /// The size of font in points.
273         /// </summary>
274         public float PointSize
275         {
276             get
277             {
278                 float temp = 0.0f;
279                 GetProperty(TextLabel.Property.POINT_SIZE).Get(ref temp);
280                 return temp;
281             }
282             set
283             {
284                 SetProperty(TextLabel.Property.POINT_SIZE, new Tizen.NUI.PropertyValue(value));
285             }
286         }
287
288         /// <summary>
289         /// MultiLine property
290         /// The single-line or multi-line layout option.
291         /// </summary>
292         public bool MultiLine
293         {
294             get
295             {
296                 bool temp = false;
297                 GetProperty(TextLabel.Property.MULTI_LINE).Get(ref temp);
298                 return temp;
299             }
300             set
301             {
302                 SetProperty(TextLabel.Property.MULTI_LINE, new Tizen.NUI.PropertyValue(value));
303             }
304         }
305
306         /// <summary>
307         /// HorizontalAlignment property
308         /// The line horizontal alignment.
309         /// </summary>
310         public string HorizontalAlignment
311         {
312             get
313             {
314                 string temp;
315                 GetProperty(TextLabel.Property.HORIZONTAL_ALIGNMENT).Get(out temp);
316                 return temp;
317             }
318             set
319             {
320                 SetProperty(TextLabel.Property.HORIZONTAL_ALIGNMENT, new Tizen.NUI.PropertyValue(value));
321             }
322         }
323
324         /// <summary>
325         /// VerticalAlignment property
326         /// The line vertical alignment.
327         /// </summary>
328         public string VerticalAlignment
329         {
330             get
331             {
332                 string temp;
333                 GetProperty(TextLabel.Property.VERTICAL_ALIGNMENT).Get(out temp);
334                 return temp;
335             }
336             set
337             {
338                 SetProperty(TextLabel.Property.VERTICAL_ALIGNMENT, new Tizen.NUI.PropertyValue(value));
339             }
340         }
341
342         /// <summary>
343         /// TextColor property
344         /// The color of the text.
345         /// </summary>
346         public Color TextColor
347         {
348             get
349             {
350                 Color temp = new Color(0.0f, 0.0f, 0.0f, 0.0f);
351                 GetProperty(TextLabel.Property.TEXT_COLOR).Get(temp);
352                 return temp;
353             }
354             set
355             {
356                 SetProperty(TextLabel.Property.TEXT_COLOR, new Tizen.NUI.PropertyValue(value));
357             }
358         }
359
360         /// <summary>
361         /// ShadowOffset property
362         /// The drop shadow offset 0 indicates no shadow.
363         /// </summary>
364         public Vector2 ShadowOffset
365         {
366             get
367             {
368                 Vector2 temp = new Vector2(0.0f, 0.0f);
369                 GetProperty(TextLabel.Property.SHADOW_OFFSET).Get(temp);
370                 return temp;
371             }
372             set
373             {
374                 SetProperty(TextLabel.Property.SHADOW_OFFSET, new Tizen.NUI.PropertyValue(value));
375             }
376         }
377
378         /// <summary>
379         /// ShadowColor property
380         /// The color of a drop shadow.
381         /// </summary>
382         public Vector4 ShadowColor
383         {
384             get
385             {
386                 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
387                 GetProperty(TextLabel.Property.SHADOW_COLOR).Get(temp);
388                 return temp;
389             }
390             set
391             {
392                 SetProperty(TextLabel.Property.SHADOW_COLOR, new Tizen.NUI.PropertyValue(value));
393             }
394         }
395
396         /// <summary>
397         /// UnderlineEnabled property
398         /// The underline enabled flag.
399         /// </summary>
400         public bool UnderlineEnabled
401         {
402             get
403             {
404                 bool temp = false;
405                 GetProperty(TextLabel.Property.UNDERLINE_ENABLED).Get(ref temp);
406                 return temp;
407             }
408             set
409             {
410                 SetProperty(TextLabel.Property.UNDERLINE_ENABLED, new Tizen.NUI.PropertyValue(value));
411             }
412         }
413
414         /// <summary>
415         /// UnderlineColor property
416         /// Overrides the underline height from font metrics.
417         /// </summary>
418         public Vector4 UnderlineColor
419         {
420             get
421             {
422                 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
423                 GetProperty(TextLabel.Property.UNDERLINE_COLOR).Get(temp);
424                 return temp;
425             }
426             set
427             {
428                 SetProperty(TextLabel.Property.UNDERLINE_COLOR, new Tizen.NUI.PropertyValue(value));
429             }
430         }
431
432         /// <summary>
433         /// UnderlineHeight property
434         /// Overrides the underline height from font metrics.
435         /// </summary>
436         public float UnderlineHeight
437         {
438             get
439             {
440                 float temp = 0.0f;
441                 GetProperty(TextLabel.Property.UNDERLINE_HEIGHT).Get(ref temp);
442                 return temp;
443             }
444             set
445             {
446                 SetProperty(TextLabel.Property.UNDERLINE_HEIGHT, new Tizen.NUI.PropertyValue(value));
447             }
448         }
449
450         /// <summary>
451         /// EnableMarkup property
452         /// Whether the mark-up processing is enabled.
453         /// </summary>
454         public bool EnableMarkup
455         {
456             get
457             {
458                 bool temp = false;
459                 GetProperty(TextLabel.Property.ENABLE_MARKUP).Get(ref temp);
460                 return temp;
461             }
462             set
463             {
464                 SetProperty(TextLabel.Property.ENABLE_MARKUP, new Tizen.NUI.PropertyValue(value));
465             }
466         }
467
468         /// <summary>
469         /// EnableAutoScroll property
470         /// Starts or stops auto scrolling.
471         /// </summary>
472         public bool EnableAutoScroll
473         {
474             get
475             {
476                 bool temp = false;
477                 GetProperty(TextLabel.Property.ENABLE_AUTO_SCROLL).Get(ref temp);
478                 return temp;
479             }
480             set
481             {
482                 SetProperty(TextLabel.Property.ENABLE_AUTO_SCROLL, new Tizen.NUI.PropertyValue(value));
483             }
484         }
485
486         /// <summary>
487         /// AutoScrollSpeed property
488         /// Sets the speed of scrolling in pixels per second.
489         /// </summary>
490         public int AutoScrollSpeed
491         {
492             get
493             {
494                 int temp = 0;
495                 GetProperty(TextLabel.Property.AUTO_SCROLL_SPEED).Get(ref temp);
496                 return temp;
497             }
498             set
499             {
500                 SetProperty(TextLabel.Property.AUTO_SCROLL_SPEED, new Tizen.NUI.PropertyValue(value));
501             }
502         }
503
504         /// <summary>
505         /// AutoScrollLoopCount property
506         /// Number of complete loops when scrolling enabled.
507         /// </summary>
508         public int AutoScrollLoopCount
509         {
510             get
511             {
512                 int temp = 0;
513                 GetProperty(TextLabel.Property.AUTO_SCROLL_LOOP_COUNT).Get(ref temp);
514                 return temp;
515             }
516             set
517             {
518                 SetProperty(TextLabel.Property.AUTO_SCROLL_LOOP_COUNT, new Tizen.NUI.PropertyValue(value));
519             }
520         }
521
522         /// <summary>
523         /// AutoScrollGap property
524         /// Gap before scrolling wraps.
525         /// </summary>
526         public float AutoScrollGap
527         {
528             get
529             {
530                 float temp = 0.0f;
531                 GetProperty(TextLabel.Property.AUTO_SCROLL_GAP).Get(ref temp);
532                 return temp;
533             }
534             set
535             {
536                 SetProperty(TextLabel.Property.AUTO_SCROLL_GAP, new Tizen.NUI.PropertyValue(value));
537             }
538         }
539
540         /// <summary>
541         /// LineSpacing property
542         /// The default extra space between lines in points.
543         /// </summary>
544         public float LineSpacing
545         {
546             get
547             {
548                 float temp = 0.0f;
549                 GetProperty(TextLabel.Property.LINE_SPACING).Get(ref temp);
550                 return temp;
551             }
552             set
553             {
554                 SetProperty(TextLabel.Property.LINE_SPACING, new Tizen.NUI.PropertyValue(value));
555             }
556         }
557
558         /// <summary>
559         /// Underline property
560         /// The default underline parameters.
561         /// </summary>
562         public PropertyMap Underline
563         {
564             get
565             {
566                 PropertyMap temp = new PropertyMap();
567                 GetProperty(TextLabel.Property.UNDERLINE).Get(temp);
568                 return temp;
569             }
570             set
571             {
572                 SetProperty(TextLabel.Property.UNDERLINE, new Tizen.NUI.PropertyValue(value));
573             }
574         }
575
576         /// <summary>
577         /// Shadow property
578         /// The default shadow parameters.
579         /// </summary>
580         public PropertyMap Shadow
581         {
582             get
583             {
584                 PropertyMap temp = new PropertyMap();
585                 GetProperty(TextLabel.Property.SHADOW).Get(temp);
586                 return temp;
587             }
588             set
589             {
590                 SetProperty(TextLabel.Property.SHADOW, new Tizen.NUI.PropertyValue(value));
591             }
592         }
593
594         /// <summary>
595         /// Emboss property
596         /// The default emboss parameters.
597         /// </summary>
598         public string Emboss
599         {
600             get
601             {
602                 string temp;
603                 GetProperty(TextLabel.Property.EMBOSS).Get( out temp);
604                 return temp;
605             }
606             set
607             {
608                 SetProperty(TextLabel.Property.EMBOSS, new Tizen.NUI.PropertyValue(value));
609             }
610         }
611
612         /// <summary>
613         /// Outline property
614         /// The default outline parameters.
615         /// </summary>
616         public string Outline
617         {
618             get
619             {
620                 string temp;
621                 GetProperty(TextLabel.Property.OUTLINE).Get(out temp);
622                 return temp;
623             }
624             set
625             {
626                 SetProperty(TextLabel.Property.OUTLINE, new Tizen.NUI.PropertyValue(value));
627             }
628         }
629
630     }
631
632 }