Fix TextField GetInputMethodContext issue (#252)
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / BaseComponents / TextField.cs
1 /*
2  * Copyright(c) 2018 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 extern alias TizenSystemSettings;
18 using TizenSystemSettings.Tizen.System;
19
20 using System;
21 using System.Runtime.InteropServices;
22 using System.Globalization;
23 using System.ComponentModel;
24
25 namespace Tizen.NUI.BaseComponents
26 {
27     /// <summary>
28     /// A control which provides a single line editable text field.
29     /// </summary>
30     /// <since_tizen> 3 </since_tizen>
31     public class TextField : View
32     {
33         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
34         private string textFieldTextSid = null;
35         private string textFieldPlaceHolderTextSid = null;
36         private bool systemlangTextFlag = false;
37
38         internal TextField(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.TextField_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(TextField obj)
44         {
45             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
46         }
47
48         /// <summary>
49         /// Dispose.
50         /// </summary>
51         /// <since_tizen> 3 </since_tizen>
52         protected override void Dispose(DisposeTypes type)
53         {
54             if (disposed)
55             {
56                 DisposeQueue.Instance.Add(this);
57                 return;
58             }
59
60             if (type == DisposeTypes.Explicit)
61             {
62                 //Called by User
63                 //Release your own managed resources here.
64                 //You should release all of your own disposable objects here.
65             }
66
67             //Release your own unmanaged resources here.
68             //You should not access any managed member here except static instance.
69             //because the execution order of Finalizes is non-deterministic.
70             if (this != null)
71             {
72                 if (_textFieldMaxLengthReachedCallbackDelegate != null)
73                 {
74                     this.MaxLengthReachedSignal().Disconnect(_textFieldMaxLengthReachedCallbackDelegate);
75                 }
76
77                 if (_textFieldTextChangedCallbackDelegate != null)
78                 {
79                     TextChangedSignal().Disconnect(_textFieldTextChangedCallbackDelegate);
80                 }
81             }
82
83             if (swigCPtr.Handle != global::System.IntPtr.Zero)
84             {
85                 if (swigCMemOwn)
86                 {
87                     swigCMemOwn = false;
88                     NDalicPINVOKE.delete_TextField(swigCPtr);
89                 }
90                 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
91             }
92
93             base.Dispose(type);
94         }
95
96         /// <summary>
97         /// The TextChanged event arguments.
98         /// </summary>
99         /// <since_tizen> 3 </since_tizen>
100         public class TextChangedEventArgs : EventArgs
101         {
102             private TextField _textField;
103
104             /// <summary>
105             /// TextField.
106             /// </summary>
107             /// <since_tizen> 3 </since_tizen>
108             public TextField TextField
109             {
110                 get
111                 {
112                     return _textField;
113                 }
114                 set
115                 {
116                     _textField = value;
117                 }
118             }
119         }
120
121         /// <summary>
122         /// The MaxLengthReached event arguments.
123         /// </summary>
124         /// <since_tizen> 3 </since_tizen>
125         public class MaxLengthReachedEventArgs : EventArgs
126         {
127             private TextField _textField;
128
129             /// <summary>
130             /// TextField.
131             /// </summary>
132             /// <since_tizen> 3 </since_tizen>
133             public TextField TextField
134             {
135                 get
136                 {
137                     return _textField;
138                 }
139                 set
140                 {
141                     _textField = value;
142                 }
143             }
144         }
145
146
147         [UnmanagedFunctionPointer(CallingConvention.StdCall)]
148         private delegate void TextChangedCallbackDelegate(IntPtr textField);
149         private EventHandler<TextChangedEventArgs> _textFieldTextChangedEventHandler;
150         private TextChangedCallbackDelegate _textFieldTextChangedCallbackDelegate;
151
152         [UnmanagedFunctionPointer(CallingConvention.StdCall)]
153         private delegate void MaxLengthReachedCallbackDelegate(IntPtr textField);
154         private EventHandler<MaxLengthReachedEventArgs> _textFieldMaxLengthReachedEventHandler;
155         private MaxLengthReachedCallbackDelegate _textFieldMaxLengthReachedCallbackDelegate;
156
157         /// <summary>
158         /// The TextChanged event.
159         /// </summary>
160         /// <since_tizen> 3 </since_tizen>
161         public event EventHandler<TextChangedEventArgs> TextChanged
162         {
163             add
164             {
165                 if (_textFieldTextChangedEventHandler == null)
166                 {
167                     _textFieldTextChangedCallbackDelegate = (OnTextChanged);
168                     TextChangedSignal().Connect(_textFieldTextChangedCallbackDelegate);
169                 }
170                 _textFieldTextChangedEventHandler += value;
171             }
172             remove
173             {
174                 _textFieldTextChangedEventHandler -= value;
175                 if (_textFieldTextChangedEventHandler == null && TextChangedSignal().Empty() == false)
176                 {
177                     TextChangedSignal().Disconnect(_textFieldTextChangedCallbackDelegate);
178                 }
179             }
180         }
181
182         private void OnTextChanged(IntPtr textField)
183         {
184             TextChangedEventArgs e = new TextChangedEventArgs();
185
186             // Populate all members of "e" (TextChangedEventArgs) with real data
187             e.TextField = Registry.GetManagedBaseHandleFromNativePtr(textField) as TextField;
188
189             if (_textFieldTextChangedEventHandler != null)
190             {
191                 //here we send all data to user event handlers
192                 _textFieldTextChangedEventHandler(this, e);
193             }
194
195         }
196
197         /// <summary>
198         /// The MaxLengthReached event.
199         /// </summary>
200         /// <since_tizen> 3 </since_tizen>
201         public event EventHandler<MaxLengthReachedEventArgs> MaxLengthReached
202         {
203             add
204             {
205                 if (_textFieldMaxLengthReachedEventHandler == null)
206                 {
207                     _textFieldMaxLengthReachedCallbackDelegate = (OnMaxLengthReached);
208                     MaxLengthReachedSignal().Connect(_textFieldMaxLengthReachedCallbackDelegate);
209                 }
210                 _textFieldMaxLengthReachedEventHandler += value;
211             }
212             remove
213             {
214                 if (_textFieldMaxLengthReachedEventHandler == null && MaxLengthReachedSignal().Empty() == false)
215                 {
216                     this.MaxLengthReachedSignal().Disconnect(_textFieldMaxLengthReachedCallbackDelegate);
217                 }
218                 _textFieldMaxLengthReachedEventHandler -= value;
219             }
220         }
221
222         private void OnMaxLengthReached(IntPtr textField)
223         {
224             MaxLengthReachedEventArgs e = new MaxLengthReachedEventArgs();
225
226             // Populate all members of "e" (MaxLengthReachedEventArgs) with real data
227             e.TextField = Registry.GetManagedBaseHandleFromNativePtr(textField) as TextField;
228
229             if (_textFieldMaxLengthReachedEventHandler != null)
230             {
231                 //here we send all data to user event handlers
232                 _textFieldMaxLengthReachedEventHandler(this, e);
233             }
234
235         }
236
237         internal new class Property
238         {
239             internal static readonly int RENDERING_BACKEND = NDalicPINVOKE.TextField_Property_RENDERING_BACKEND_get();
240             internal static readonly int TEXT = NDalicPINVOKE.TextField_Property_TEXT_get();
241             internal static readonly int PLACEHOLDER_TEXT = NDalicPINVOKE.TextField_Property_PLACEHOLDER_TEXT_get();
242             internal static readonly int PLACEHOLDER_TEXT_FOCUSED = NDalicPINVOKE.TextField_Property_PLACEHOLDER_TEXT_FOCUSED_get();
243             internal static readonly int FONT_FAMILY = NDalicPINVOKE.TextField_Property_FONT_FAMILY_get();
244             internal static readonly int FONT_STYLE = NDalicPINVOKE.TextField_Property_FONT_STYLE_get();
245             internal static readonly int POINT_SIZE = NDalicPINVOKE.TextField_Property_POINT_SIZE_get();
246             internal static readonly int MAX_LENGTH = NDalicPINVOKE.TextField_Property_MAX_LENGTH_get();
247             internal static readonly int EXCEED_POLICY = NDalicPINVOKE.TextField_Property_EXCEED_POLICY_get();
248             internal static readonly int HORIZONTAL_ALIGNMENT = NDalicPINVOKE.TextField_Property_HORIZONTAL_ALIGNMENT_get();
249             internal static readonly int VERTICAL_ALIGNMENT = NDalicPINVOKE.TextField_Property_VERTICAL_ALIGNMENT_get();
250             internal static readonly int TEXT_COLOR = NDalicPINVOKE.TextField_Property_TEXT_COLOR_get();
251             internal static readonly int PLACEHOLDER_TEXT_COLOR = NDalicPINVOKE.TextField_Property_PLACEHOLDER_TEXT_COLOR_get();
252             internal static readonly int SHADOW_OFFSET = NDalicPINVOKE.TextField_Property_SHADOW_OFFSET_get();
253             internal static readonly int SHADOW_COLOR = NDalicPINVOKE.TextField_Property_SHADOW_COLOR_get();
254             internal static readonly int PRIMARY_CURSOR_COLOR = NDalicPINVOKE.TextField_Property_PRIMARY_CURSOR_COLOR_get();
255             internal static readonly int SECONDARY_CURSOR_COLOR = NDalicPINVOKE.TextField_Property_SECONDARY_CURSOR_COLOR_get();
256             internal static readonly int ENABLE_CURSOR_BLINK = NDalicPINVOKE.TextField_Property_ENABLE_CURSOR_BLINK_get();
257             internal static readonly int CURSOR_BLINK_INTERVAL = NDalicPINVOKE.TextField_Property_CURSOR_BLINK_INTERVAL_get();
258             internal static readonly int CURSOR_BLINK_DURATION = NDalicPINVOKE.TextField_Property_CURSOR_BLINK_DURATION_get();
259             internal static readonly int CURSOR_WIDTH = NDalicPINVOKE.TextField_Property_CURSOR_WIDTH_get();
260             internal static readonly int GRAB_HANDLE_IMAGE = NDalicPINVOKE.TextField_Property_GRAB_HANDLE_IMAGE_get();
261             internal static readonly int GRAB_HANDLE_PRESSED_IMAGE = NDalicPINVOKE.TextField_Property_GRAB_HANDLE_PRESSED_IMAGE_get();
262             internal static readonly int SCROLL_THRESHOLD = NDalicPINVOKE.TextField_Property_SCROLL_THRESHOLD_get();
263             internal static readonly int SCROLL_SPEED = NDalicPINVOKE.TextField_Property_SCROLL_SPEED_get();
264             internal static readonly int SELECTION_HANDLE_IMAGE_LEFT = NDalicPINVOKE.TextField_Property_SELECTION_HANDLE_IMAGE_LEFT_get();
265             internal static readonly int SELECTION_HANDLE_IMAGE_RIGHT = NDalicPINVOKE.TextField_Property_SELECTION_HANDLE_IMAGE_RIGHT_get();
266             internal static readonly int SELECTION_HANDLE_PRESSED_IMAGE_LEFT = NDalicPINVOKE.TextField_Property_SELECTION_HANDLE_PRESSED_IMAGE_LEFT_get();
267             internal static readonly int SELECTION_HANDLE_PRESSED_IMAGE_RIGHT = NDalicPINVOKE.TextField_Property_SELECTION_HANDLE_PRESSED_IMAGE_RIGHT_get();
268             internal static readonly int SELECTION_HANDLE_MARKER_IMAGE_LEFT = NDalicPINVOKE.TextField_Property_SELECTION_HANDLE_MARKER_IMAGE_LEFT_get();
269             internal static readonly int SELECTION_HANDLE_MARKER_IMAGE_RIGHT = NDalicPINVOKE.TextField_Property_SELECTION_HANDLE_MARKER_IMAGE_RIGHT_get();
270             internal static readonly int SELECTION_HIGHLIGHT_COLOR = NDalicPINVOKE.TextField_Property_SELECTION_HIGHLIGHT_COLOR_get();
271             internal static readonly int DECORATION_BOUNDING_BOX = NDalicPINVOKE.TextField_Property_DECORATION_BOUNDING_BOX_get();
272             internal static readonly int INPUT_METHOD_SETTINGS = NDalicPINVOKE.TextField_Property_INPUT_METHOD_SETTINGS_get();
273             internal static readonly int INPUT_COLOR = NDalicPINVOKE.TextField_Property_INPUT_COLOR_get();
274             internal static readonly int ENABLE_MARKUP = NDalicPINVOKE.TextField_Property_ENABLE_MARKUP_get();
275             internal static readonly int INPUT_FONT_FAMILY = NDalicPINVOKE.TextField_Property_INPUT_FONT_FAMILY_get();
276             internal static readonly int INPUT_FONT_STYLE = NDalicPINVOKE.TextField_Property_INPUT_FONT_STYLE_get();
277             internal static readonly int INPUT_POINT_SIZE = NDalicPINVOKE.TextField_Property_INPUT_POINT_SIZE_get();
278             internal static readonly int UNDERLINE = NDalicPINVOKE.TextField_Property_UNDERLINE_get();
279             internal static readonly int INPUT_UNDERLINE = NDalicPINVOKE.TextField_Property_INPUT_UNDERLINE_get();
280             internal static readonly int SHADOW = NDalicPINVOKE.TextField_Property_SHADOW_get();
281             internal static readonly int INPUT_SHADOW = NDalicPINVOKE.TextField_Property_INPUT_SHADOW_get();
282             internal static readonly int EMBOSS = NDalicPINVOKE.TextField_Property_EMBOSS_get();
283             internal static readonly int INPUT_EMBOSS = NDalicPINVOKE.TextField_Property_INPUT_EMBOSS_get();
284             internal static readonly int OUTLINE = NDalicPINVOKE.TextField_Property_OUTLINE_get();
285             internal static readonly int INPUT_OUTLINE = NDalicPINVOKE.TextField_Property_INPUT_OUTLINE_get();
286             internal static readonly int HIDDEN_INPUT_SETTINGS = NDalicManualPINVOKE.TextField_Property_HIDDEN_INPUT_SETTINGS_get();
287             internal static readonly int PIXEL_SIZE = NDalicManualPINVOKE.TextField_Property_PIXEL_SIZE_get();
288             internal static readonly int ENABLE_SELECTION = NDalicManualPINVOKE.TextField_Property_ENABLE_SELECTION_get();
289             internal static readonly int PLACEHOLDER = NDalicManualPINVOKE.TextField_Property_PLACEHOLDER_get();
290             internal static readonly int ELLIPSIS = NDalicManualPINVOKE.TextField_Property_ELLIPSIS_get();
291             internal static readonly int ENABLE_SHIFT_SELECTION = NDalicManualPINVOKE.TextField_Property_ENABLE_SHIFT_SELECTION_get();
292         }
293
294         internal class InputStyle
295         {
296             internal enum Mask
297             {
298                 None = 0x0000,
299                 Color = 0x0001,
300                 FontFamily = 0x0002,
301                 PointSize = 0x0004,
302                 FontStyle = 0x0008,
303                 Underline = 0x0010,
304                 Shadow = 0x0020,
305                 Emboss = 0x0040,
306                 Outline = 0x0080
307             }
308
309         }
310
311         /// <summary>
312         /// Creates the TextField control.
313         /// </summary>
314         /// <since_tizen> 3 </since_tizen>
315         public TextField() : this(NDalicPINVOKE.TextField_New(), true)
316         {
317             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
318
319         }
320         internal TextField(TextField handle) : this(NDalicPINVOKE.new_TextField__SWIG_1(TextField.getCPtr(handle)), true)
321         {
322             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
323         }
324
325         /// <summary>
326         /// Get the InputMethodContext instance.
327         /// </summary>
328         /// <returns>The InputMethodContext instance.</returns>
329         public InputMethodContext GetInputMethodContext() {
330             InputMethodContext ret = new InputMethodContext(NDalicPINVOKE.TextField_GetInputMethodContext(swigCPtr), true);
331             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
332             return ret;
333         }
334
335         internal TextFieldSignal TextChangedSignal()
336         {
337             TextFieldSignal ret = new TextFieldSignal(NDalicPINVOKE.TextField_TextChangedSignal(swigCPtr), false);
338             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
339             return ret;
340         }
341
342         internal TextFieldSignal MaxLengthReachedSignal()
343         {
344             TextFieldSignal ret = new TextFieldSignal(NDalicPINVOKE.TextField_MaxLengthReachedSignal(swigCPtr), false);
345             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
346             return ret;
347         }
348
349         internal SWIGTYPE_p_Dali__SignalT_void_fDali__Toolkit__TextField_Dali__Toolkit__TextField__InputStyle__MaskF_t InputStyleChangedSignal()
350         {
351             SWIGTYPE_p_Dali__SignalT_void_fDali__Toolkit__TextField_Dali__Toolkit__TextField__InputStyle__MaskF_t ret = new SWIGTYPE_p_Dali__SignalT_void_fDali__Toolkit__TextField_Dali__Toolkit__TextField__InputStyle__MaskF_t(NDalicPINVOKE.TextField_InputStyleChangedSignal(swigCPtr), false);
352             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
353             return ret;
354         }
355
356         internal enum ExceedPolicyType
357         {
358             ExceedPolicyOriginal,
359             ExceedPolicyClip
360         }
361
362         /// <summary>
363         /// The TranslatableText property.<br />
364         /// The text can set the SID value.<br />
365         /// </summary>
366         /// <exception cref='ArgumentNullException'>
367         /// ResourceManager about multilingual is null.
368         /// </exception>
369         /// <since_tizen> 4 </since_tizen>
370         public string TranslatableText
371         {
372             get
373             {
374                 return textFieldTextSid;
375             }
376             set
377             {
378                 if (NUIApplication.MultilingualResourceManager == null)
379                 {
380                     throw new ArgumentNullException("ResourceManager about multilingual is null");
381                 }
382                 textFieldTextSid = value;
383                 Text = SetTranslatable(textFieldTextSid);
384             }
385         }
386         /// <summary>
387         /// The TranslatablePlaceholderText property.<br />
388         /// The text can set the SID value.<br />
389         /// </summary>
390         /// <exception cref='ArgumentNullException'>
391         /// ResourceManager about multilingual is null.
392         /// </exception>
393         /// <since_tizen> 4 </since_tizen>
394         public string TranslatablePlaceholderText
395         {
396             get
397             {
398                 return textFieldPlaceHolderTextSid;
399             }
400             set
401             {
402                 if (NUIApplication.MultilingualResourceManager == null)
403                 {
404                     throw new ArgumentNullException("ResourceManager about multilingual is null");
405                 }
406                 textFieldPlaceHolderTextSid = value;
407                 PlaceholderText = SetTranslatable(textFieldPlaceHolderTextSid);
408             }
409         }
410         private string SetTranslatable(string textFieldSid)
411         {
412             string translatableText = null;
413             translatableText = NUIApplication.MultilingualResourceManager?.GetString(textFieldSid, new CultureInfo(SystemSettings.LocaleLanguage.Replace("_", "-")));
414             if (translatableText != null)
415             {
416                 if (systemlangTextFlag == false)
417                 {
418                     SystemSettings.LocaleLanguageChanged += new WeakEventHandler<LocaleLanguageChangedEventArgs>(SystemSettings_LocaleLanguageChanged).Handler;
419                     systemlangTextFlag = true;
420                 }
421                 return translatableText;
422             }
423             else
424             {
425                 translatableText = "";
426                 return translatableText;
427             }
428         }
429         private void SystemSettings_LocaleLanguageChanged(object sender, LocaleLanguageChangedEventArgs e)
430         {
431             if (textFieldTextSid != null)
432             {
433                 Text = NUIApplication.MultilingualResourceManager?.GetString(textFieldTextSid, new CultureInfo(e.Value.Replace("_", "-")));
434             }
435             if (textFieldPlaceHolderTextSid != null)
436             {
437                 PlaceholderText = NUIApplication.MultilingualResourceManager?.GetString(textFieldPlaceHolderTextSid, new CultureInfo(e.Value.Replace("_", "-")));
438             }
439         }
440         /// <summary>
441         /// The Text property.
442         /// </summary>
443         /// <since_tizen> 3 </since_tizen>
444         public string Text
445         {
446             get
447             {
448                 string temp;
449                 GetProperty(TextField.Property.TEXT).Get(out temp);
450                 return temp;
451             }
452             set
453             {
454                 SetProperty(TextField.Property.TEXT, new Tizen.NUI.PropertyValue(value));
455             }
456         }
457
458         /// <summary>
459         /// The PlaceholderText property.
460         /// </summary>
461         /// <since_tizen> 3 </since_tizen>
462         public string PlaceholderText
463         {
464             get
465             {
466                 string temp;
467                 GetProperty(TextField.Property.PLACEHOLDER_TEXT).Get(out temp);
468                 return temp;
469             }
470             set
471             {
472                 SetProperty(TextField.Property.PLACEHOLDER_TEXT, new Tizen.NUI.PropertyValue(value));
473             }
474         }
475
476         /// <summary>
477         /// The PlaceholderTextFocused property.
478         /// </summary>
479         /// <since_tizen> 3 </since_tizen>
480         public string PlaceholderTextFocused
481         {
482             get
483             {
484                 string temp;
485                 GetProperty(TextField.Property.PLACEHOLDER_TEXT_FOCUSED).Get(out temp);
486                 return temp;
487             }
488             set
489             {
490                 SetProperty(TextField.Property.PLACEHOLDER_TEXT_FOCUSED, new Tizen.NUI.PropertyValue(value));
491             }
492         }
493
494         /// <summary>
495         /// The FontFamily property.
496         /// </summary>
497         /// <since_tizen> 3 </since_tizen>
498         public string FontFamily
499         {
500             get
501             {
502                 string temp;
503                 GetProperty(TextField.Property.FONT_FAMILY).Get(out temp);
504                 return temp;
505             }
506             set
507             {
508                 SetProperty(TextField.Property.FONT_FAMILY, new Tizen.NUI.PropertyValue(value));
509             }
510         }
511
512         /// <summary>
513         /// The FontStyle property.
514         /// </summary>
515         /// <since_tizen> 3 </since_tizen>
516         public PropertyMap FontStyle
517         {
518             get
519             {
520                 PropertyMap temp = new PropertyMap();
521                 GetProperty(TextField.Property.FONT_STYLE).Get(temp);
522                 return temp;
523             }
524             set
525             {
526                 SetProperty(TextField.Property.FONT_STYLE, new Tizen.NUI.PropertyValue(value));
527             }
528         }
529
530         /// <summary>
531         /// The PointSize property.
532         /// </summary>
533         /// <since_tizen> 3 </since_tizen>
534         public float PointSize
535         {
536             get
537             {
538                 float temp = 0.0f;
539                 GetProperty(TextField.Property.POINT_SIZE).Get(out temp);
540                 return temp;
541             }
542             set
543             {
544                 SetProperty(TextField.Property.POINT_SIZE, new Tizen.NUI.PropertyValue(value));
545             }
546         }
547
548         /// <summary>
549         /// The MaxLength property.
550         /// </summary>
551         /// <since_tizen> 3 </since_tizen>
552         public int MaxLength
553         {
554             get
555             {
556                 int temp = 0;
557                 GetProperty(TextField.Property.MAX_LENGTH).Get(out temp);
558                 return temp;
559             }
560             set
561             {
562                 SetProperty(TextField.Property.MAX_LENGTH, new Tizen.NUI.PropertyValue(value));
563             }
564         }
565
566         /// <summary>
567         /// The ExceedPolicy property.
568         /// </summary>
569         /// <since_tizen> 3 </since_tizen>
570         public int ExceedPolicy
571         {
572             get
573             {
574                 int temp = 0;
575                 GetProperty(TextField.Property.EXCEED_POLICY).Get(out temp);
576                 return temp;
577             }
578             set
579             {
580                 SetProperty(TextField.Property.EXCEED_POLICY, new Tizen.NUI.PropertyValue(value));
581             }
582         }
583
584         /// <summary>
585         /// The HorizontalAlignment property.
586         /// </summary>
587         /// <since_tizen> 3 </since_tizen>
588         public HorizontalAlignment HorizontalAlignment
589         {
590             get
591             {
592                 string temp;
593                 if (GetProperty(TextField.Property.HORIZONTAL_ALIGNMENT).Get(out temp) == false)
594                 {
595                     NUILog.Error("HorizontalAlignment get error!");
596                 }
597
598                 switch (temp)
599                 {
600                     case "BEGIN":
601                         return HorizontalAlignment.Begin;
602                     case "CENTER":
603                         return HorizontalAlignment.Center;
604                     case "END":
605                         return HorizontalAlignment.End;
606                     default:
607                         return HorizontalAlignment.Begin;
608                 }
609             }
610             set
611             {
612                 string valueToString = "";
613                 switch (value)
614                 {
615                     case HorizontalAlignment.Begin:
616                     {
617                         valueToString = "BEGIN";
618                         break;
619                     }
620                     case HorizontalAlignment.Center:
621                     {
622                         valueToString = "CENTER";
623                         break;
624                     }
625                     case HorizontalAlignment.End:
626                     {
627                         valueToString = "END";
628                         break;
629                     }
630                     default:
631                     {
632                         valueToString = "BEGIN";
633                         break;
634                     }
635                 }
636                 SetProperty(TextField.Property.HORIZONTAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
637             }
638         }
639
640         /// <summary>
641         /// The VerticalAlignment property.
642         /// </summary>
643         /// <since_tizen> 3 </since_tizen>
644         public VerticalAlignment VerticalAlignment
645         {
646             get
647             {
648                 string temp;
649                 if (GetProperty(TextField.Property.VERTICAL_ALIGNMENT).Get(out temp) == false)
650                 {
651                     NUILog.Error("VerticalAlignment get error!");
652                 }
653
654                 switch (temp)
655                 {
656                     case "TOP":
657                         return VerticalAlignment.Top;
658                     case "CENTER":
659                         return VerticalAlignment.Center;
660                     case "BOTTOM":
661                         return VerticalAlignment.Bottom;
662                     default:
663                         return VerticalAlignment.Bottom;
664                 }
665             }
666             set
667             {
668                 string valueToString = "";
669                 switch (value)
670                 {
671                     case VerticalAlignment.Top:
672                     {
673                         valueToString = "TOP";
674                         break;
675                     }
676                     case VerticalAlignment.Center:
677                     {
678                         valueToString = "CENTER";
679                         break;
680                     }
681                     case VerticalAlignment.Bottom:
682                     {
683                         valueToString = "BOTTOM";
684                         break;
685                     }
686                     default:
687                     {
688                         valueToString = "BOTTOM";
689                         break;
690                     }
691                 }
692                 SetProperty(TextField.Property.VERTICAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
693             }
694         }
695
696         /// <summary>
697         /// The TextColor property.
698         /// </summary>
699         /// <since_tizen> 3 </since_tizen>
700         public Color TextColor
701         {
702             get
703             {
704                 Color temp = new Color(0.0f, 0.0f, 0.0f, 0.0f);
705                 GetProperty(TextField.Property.TEXT_COLOR).Get(temp);
706                 return temp;
707             }
708             set
709             {
710                 SetProperty(TextField.Property.TEXT_COLOR, new Tizen.NUI.PropertyValue(value));
711             }
712         }
713
714         /// <summary>
715         /// The PlaceholderTextColor property.
716         /// </summary>
717         /// <since_tizen> 3 </since_tizen>
718         public Vector4 PlaceholderTextColor
719         {
720             get
721             {
722                 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
723                 GetProperty(TextField.Property.PLACEHOLDER_TEXT_COLOR).Get(temp);
724                 return temp;
725             }
726             set
727             {
728                 SetProperty(TextField.Property.PLACEHOLDER_TEXT_COLOR, new Tizen.NUI.PropertyValue(value));
729             }
730         }
731
732         /// <summary>
733         /// The ShadowOffset property.
734         /// </summary>
735         /// <since_tizen> 3 </since_tizen>
736         public Vector2 ShadowOffset
737         {
738             get
739             {
740                 Vector2 temp = new Vector2(0.0f, 0.0f);
741                 GetProperty(TextField.Property.SHADOW_OFFSET).Get(temp);
742                 return temp;
743             }
744             set
745             {
746                 SetProperty(TextField.Property.SHADOW_OFFSET, new Tizen.NUI.PropertyValue(value));
747             }
748         }
749
750         /// <summary>
751         /// The ShadowColor property.
752         /// </summary>
753         /// <since_tizen> 3 </since_tizen>
754         public Vector4 ShadowColor
755         {
756             get
757             {
758                 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
759                 GetProperty(TextField.Property.SHADOW_COLOR).Get(temp);
760                 return temp;
761             }
762             set
763             {
764                 SetProperty(TextField.Property.SHADOW_COLOR, new Tizen.NUI.PropertyValue(value));
765             }
766         }
767
768         /// <summary>
769         /// The PrimaryCursorColor property.
770         /// </summary>
771         /// <since_tizen> 3 </since_tizen>
772         public Vector4 PrimaryCursorColor
773         {
774             get
775             {
776                 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
777                 GetProperty(TextField.Property.PRIMARY_CURSOR_COLOR).Get(temp);
778                 return temp;
779             }
780             set
781             {
782                 SetProperty(TextField.Property.PRIMARY_CURSOR_COLOR, new Tizen.NUI.PropertyValue(value));
783             }
784         }
785
786         /// <summary>
787         /// The SecondaryCursorColor property.
788         /// </summary>
789         /// <since_tizen> 3 </since_tizen>
790         public Vector4 SecondaryCursorColor
791         {
792             get
793             {
794                 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
795                 GetProperty(TextField.Property.SECONDARY_CURSOR_COLOR).Get(temp);
796                 return temp;
797             }
798             set
799             {
800                 SetProperty(TextField.Property.SECONDARY_CURSOR_COLOR, new Tizen.NUI.PropertyValue(value));
801             }
802         }
803
804         /// <summary>
805         /// The EnableCursorBlink property.
806         /// </summary>
807         /// <since_tizen> 3 </since_tizen>
808         public bool EnableCursorBlink
809         {
810             get
811             {
812                 bool temp = false;
813                 GetProperty(TextField.Property.ENABLE_CURSOR_BLINK).Get(out temp);
814                 return temp;
815             }
816             set
817             {
818                 SetProperty(TextField.Property.ENABLE_CURSOR_BLINK, new Tizen.NUI.PropertyValue(value));
819             }
820         }
821
822         /// <summary>
823         /// The CursorBlinkInterval property.
824         /// </summary>
825         /// <since_tizen> 3 </since_tizen>
826         public float CursorBlinkInterval
827         {
828             get
829             {
830                 float temp = 0.0f;
831                 GetProperty(TextField.Property.CURSOR_BLINK_INTERVAL).Get(out temp);
832                 return temp;
833             }
834             set
835             {
836                 SetProperty(TextField.Property.CURSOR_BLINK_INTERVAL, new Tizen.NUI.PropertyValue(value));
837             }
838         }
839
840         /// <summary>
841         /// The CursorBlinkDuration property.
842         /// </summary>
843         /// <since_tizen> 3 </since_tizen>
844         public float CursorBlinkDuration
845         {
846             get
847             {
848                 float temp = 0.0f;
849                 GetProperty(TextField.Property.CURSOR_BLINK_DURATION).Get(out temp);
850                 return temp;
851             }
852             set
853             {
854                 SetProperty(TextField.Property.CURSOR_BLINK_DURATION, new Tizen.NUI.PropertyValue(value));
855             }
856         }
857
858         /// <summary>
859         /// The CursorWidth property.
860         /// </summary>
861         /// <since_tizen> 3 </since_tizen>
862         public int CursorWidth
863         {
864             get
865             {
866                 int temp = 0;
867                 GetProperty(TextField.Property.CURSOR_WIDTH).Get(out temp);
868                 return temp;
869             }
870             set
871             {
872                 SetProperty(TextField.Property.CURSOR_WIDTH, new Tizen.NUI.PropertyValue(value));
873             }
874         }
875
876         /// <summary>
877         /// The GrabHandleImage property.
878         /// </summary>
879         /// <since_tizen> 3 </since_tizen>
880         public string GrabHandleImage
881         {
882             get
883             {
884                 string temp;
885                 GetProperty(TextField.Property.GRAB_HANDLE_IMAGE).Get(out temp);
886                 return temp;
887             }
888             set
889             {
890                 SetProperty(TextField.Property.GRAB_HANDLE_IMAGE, new Tizen.NUI.PropertyValue(value));
891             }
892         }
893
894         /// <summary>
895         /// The GrabHandlePressedImage property.
896         /// </summary>
897         /// <since_tizen> 3 </since_tizen>
898         public string GrabHandlePressedImage
899         {
900             get
901             {
902                 string temp;
903                 GetProperty(TextField.Property.GRAB_HANDLE_PRESSED_IMAGE).Get(out temp);
904                 return temp;
905             }
906             set
907             {
908                 SetProperty(TextField.Property.GRAB_HANDLE_PRESSED_IMAGE, new Tizen.NUI.PropertyValue(value));
909             }
910         }
911
912         /// <summary>
913         /// The ScrollThreshold property.
914         /// </summary>
915         /// <since_tizen> 3 </since_tizen>
916         public float ScrollThreshold
917         {
918             get
919             {
920                 float temp = 0.0f;
921                 GetProperty(TextField.Property.SCROLL_THRESHOLD).Get(out temp);
922                 return temp;
923             }
924             set
925             {
926                 SetProperty(TextField.Property.SCROLL_THRESHOLD, new Tizen.NUI.PropertyValue(value));
927             }
928         }
929
930         /// <summary>
931         /// The ScrollSpeed property.
932         /// </summary>
933         /// <since_tizen> 3 </since_tizen>
934         public float ScrollSpeed
935         {
936             get
937             {
938                 float temp = 0.0f;
939                 GetProperty(TextField.Property.SCROLL_SPEED).Get(out temp);
940                 return temp;
941             }
942             set
943             {
944                 SetProperty(TextField.Property.SCROLL_SPEED, new Tizen.NUI.PropertyValue(value));
945             }
946         }
947
948         /// <summary>
949         /// The SelectionHandleImageLeft property.
950         /// </summary>
951         /// <since_tizen> 3 </since_tizen>
952         public PropertyMap SelectionHandleImageLeft
953         {
954             get
955             {
956                 PropertyMap temp = new PropertyMap();
957                 GetProperty(TextField.Property.SELECTION_HANDLE_IMAGE_LEFT).Get(temp);
958                 return temp;
959             }
960             set
961             {
962                 SetProperty(TextField.Property.SELECTION_HANDLE_IMAGE_LEFT, new Tizen.NUI.PropertyValue(value));
963             }
964         }
965
966         /// <summary>
967         /// The SelectionHandleImageRight property.
968         /// </summary>
969         /// <since_tizen> 3 </since_tizen>
970         public PropertyMap SelectionHandleImageRight
971         {
972             get
973             {
974                 PropertyMap temp = new PropertyMap();
975                 GetProperty(TextField.Property.SELECTION_HANDLE_IMAGE_RIGHT).Get(temp);
976                 return temp;
977             }
978             set
979             {
980                 SetProperty(TextField.Property.SELECTION_HANDLE_IMAGE_RIGHT, new Tizen.NUI.PropertyValue(value));
981             }
982         }
983
984         /// <summary>
985         /// The SelectionHandlePressedImageLeft property.
986         /// </summary>
987         /// <since_tizen> 3 </since_tizen>
988         public PropertyMap SelectionHandlePressedImageLeft
989         {
990             get
991             {
992                 PropertyMap temp = new PropertyMap();
993                 GetProperty(TextField.Property.SELECTION_HANDLE_PRESSED_IMAGE_LEFT).Get(temp);
994                 return temp;
995             }
996             set
997             {
998                 SetProperty(TextField.Property.SELECTION_HANDLE_PRESSED_IMAGE_LEFT, new Tizen.NUI.PropertyValue(value));
999             }
1000         }
1001
1002         /// <summary>
1003         /// The SelectionHandlePressedImageRight property.
1004         /// </summary>
1005         /// <since_tizen> 3 </since_tizen>
1006         public PropertyMap SelectionHandlePressedImageRight
1007         {
1008             get
1009             {
1010                 PropertyMap temp = new PropertyMap();
1011                 GetProperty(TextField.Property.SELECTION_HANDLE_PRESSED_IMAGE_RIGHT).Get(temp);
1012                 return temp;
1013             }
1014             set
1015             {
1016                 SetProperty(TextField.Property.SELECTION_HANDLE_PRESSED_IMAGE_RIGHT, new Tizen.NUI.PropertyValue(value));
1017             }
1018         }
1019
1020         /// <summary>
1021         /// The SelectionHandleMarkerImageLeft property.
1022         /// </summary>
1023         /// <since_tizen> 3 </since_tizen>
1024         public PropertyMap SelectionHandleMarkerImageLeft
1025         {
1026             get
1027             {
1028                 PropertyMap temp = new PropertyMap();
1029                 GetProperty(TextField.Property.SELECTION_HANDLE_MARKER_IMAGE_LEFT).Get(temp);
1030                 return temp;
1031             }
1032             set
1033             {
1034                 SetProperty(TextField.Property.SELECTION_HANDLE_MARKER_IMAGE_LEFT, new Tizen.NUI.PropertyValue(value));
1035             }
1036         }
1037
1038         /// <summary>
1039         /// The SelectionHandleMarkerImageRight property.
1040         /// </summary>
1041         /// <since_tizen> 3 </since_tizen>
1042         public PropertyMap SelectionHandleMarkerImageRight
1043         {
1044             get
1045             {
1046                 PropertyMap temp = new PropertyMap();
1047                 GetProperty(TextField.Property.SELECTION_HANDLE_MARKER_IMAGE_RIGHT).Get(temp);
1048                 return temp;
1049             }
1050             set
1051             {
1052                 SetProperty(TextField.Property.SELECTION_HANDLE_MARKER_IMAGE_RIGHT, new Tizen.NUI.PropertyValue(value));
1053             }
1054         }
1055
1056         /// <summary>
1057         /// The SelectionHighlightColor property.
1058         /// </summary>
1059         /// <since_tizen> 3 </since_tizen>
1060         public Vector4 SelectionHighlightColor
1061         {
1062             get
1063             {
1064                 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
1065                 GetProperty(TextField.Property.SELECTION_HIGHLIGHT_COLOR).Get(temp);
1066                 return temp;
1067             }
1068             set
1069             {
1070                 SetProperty(TextField.Property.SELECTION_HIGHLIGHT_COLOR, new Tizen.NUI.PropertyValue(value));
1071             }
1072         }
1073
1074         /// <summary>
1075         /// The DecorationBoundingBox property.
1076         /// </summary>
1077         /// <since_tizen> 3 </since_tizen>
1078         public Rectangle DecorationBoundingBox
1079         {
1080             get
1081             {
1082                 Rectangle temp = new Rectangle(0, 0, 0, 0);
1083                 GetProperty(TextField.Property.DECORATION_BOUNDING_BOX).Get(temp);
1084                 return temp;
1085             }
1086             set
1087             {
1088                 SetProperty(TextField.Property.DECORATION_BOUNDING_BOX, new Tizen.NUI.PropertyValue(value));
1089             }
1090         }
1091
1092         /// <summary>
1093         /// The InputMethodSettings property.
1094         /// </summary>
1095         /// <since_tizen> 3 </since_tizen>
1096         public PropertyMap InputMethodSettings
1097         {
1098             get
1099             {
1100                 PropertyMap temp = new PropertyMap();
1101                 GetProperty(TextField.Property.INPUT_METHOD_SETTINGS).Get(temp);
1102                 return temp;
1103             }
1104             set
1105             {
1106                 SetProperty(TextField.Property.INPUT_METHOD_SETTINGS, new Tizen.NUI.PropertyValue(value));
1107             }
1108         }
1109
1110         /// <summary>
1111         /// The InputColor property.
1112         /// </summary>
1113         /// <since_tizen> 3 </since_tizen>
1114         public Vector4 InputColor
1115         {
1116             get
1117             {
1118                 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
1119                 GetProperty(TextField.Property.INPUT_COLOR).Get(temp);
1120                 return temp;
1121             }
1122             set
1123             {
1124                 SetProperty(TextField.Property.INPUT_COLOR, new Tizen.NUI.PropertyValue(value));
1125             }
1126         }
1127
1128         /// <summary>
1129         /// The EnableMarkup property.
1130         /// </summary>
1131         /// <since_tizen> 3 </since_tizen>
1132         public bool EnableMarkup
1133         {
1134             get
1135             {
1136                 bool temp = false;
1137                 GetProperty(TextField.Property.ENABLE_MARKUP).Get(out temp);
1138                 return temp;
1139             }
1140             set
1141             {
1142                 SetProperty(TextField.Property.ENABLE_MARKUP, new Tizen.NUI.PropertyValue(value));
1143             }
1144         }
1145
1146         /// <summary>
1147         /// The InputFontFamily property.
1148         /// </summary>
1149         /// <since_tizen> 3 </since_tizen>
1150         public string InputFontFamily
1151         {
1152             get
1153             {
1154                 string temp;
1155                 GetProperty(TextField.Property.INPUT_FONT_FAMILY).Get(out temp);
1156                 return temp;
1157             }
1158             set
1159             {
1160                 SetProperty(TextField.Property.INPUT_FONT_FAMILY, new Tizen.NUI.PropertyValue(value));
1161             }
1162         }
1163
1164         /// <summary>
1165         /// The InputFontStyle property.
1166         /// </summary>
1167         /// <since_tizen> 3 </since_tizen>
1168         public PropertyMap InputFontStyle
1169         {
1170             get
1171             {
1172                 PropertyMap temp = new PropertyMap();
1173                 GetProperty(TextField.Property.INPUT_FONT_STYLE).Get(temp);
1174                 return temp;
1175             }
1176             set
1177             {
1178                 SetProperty(TextField.Property.INPUT_FONT_STYLE, new Tizen.NUI.PropertyValue(value));
1179             }
1180         }
1181
1182         /// <summary>
1183         /// The InputPointSize property.
1184         /// </summary>
1185         /// <since_tizen> 3 </since_tizen>
1186         public float InputPointSize
1187         {
1188             get
1189             {
1190                 float temp = 0.0f;
1191                 GetProperty(TextField.Property.INPUT_POINT_SIZE).Get(out temp);
1192                 return temp;
1193             }
1194             set
1195             {
1196                 SetProperty(TextField.Property.INPUT_POINT_SIZE, new Tizen.NUI.PropertyValue(value));
1197             }
1198         }
1199
1200         /// <summary>
1201         /// The Underline property.
1202         /// </summary>
1203         /// <since_tizen> 3 </since_tizen>
1204         public PropertyMap Underline
1205         {
1206             get
1207             {
1208                 PropertyMap temp = new PropertyMap();
1209                 GetProperty(TextField.Property.UNDERLINE).Get(temp);
1210                 return temp;
1211             }
1212             set
1213             {
1214                 SetProperty(TextField.Property.UNDERLINE, new Tizen.NUI.PropertyValue(value));
1215             }
1216         }
1217
1218         /// <summary>
1219         /// The InputUnderline property.
1220         /// </summary>
1221         /// <since_tizen> 3 </since_tizen>
1222         public string InputUnderline
1223         {
1224             get
1225             {
1226                 string temp;
1227                 GetProperty(TextField.Property.INPUT_UNDERLINE).Get(out temp);
1228                 return temp;
1229             }
1230             set
1231             {
1232                 SetProperty(TextField.Property.INPUT_UNDERLINE, new Tizen.NUI.PropertyValue(value));
1233             }
1234         }
1235
1236         /// <summary>
1237         /// The Shadow property.
1238         /// </summary>
1239         /// <since_tizen> 3 </since_tizen>
1240         public PropertyMap Shadow
1241         {
1242             get
1243             {
1244                 PropertyMap temp = new PropertyMap();
1245                 GetProperty(TextField.Property.SHADOW).Get(temp);
1246                 return temp;
1247             }
1248             set
1249             {
1250                 SetProperty(TextField.Property.SHADOW, new Tizen.NUI.PropertyValue(value));
1251             }
1252         }
1253
1254         /// <summary>
1255         /// The InputShadow property.
1256         /// </summary>
1257         /// <since_tizen> 3 </since_tizen>
1258         public string InputShadow
1259         {
1260             get
1261             {
1262                 string temp;
1263                 GetProperty(TextField.Property.INPUT_SHADOW).Get(out temp);
1264                 return temp;
1265             }
1266             set
1267             {
1268                 SetProperty(TextField.Property.INPUT_SHADOW, new Tizen.NUI.PropertyValue(value));
1269             }
1270         }
1271
1272         /// <summary>
1273         /// The Emboss property.
1274         /// </summary>
1275         /// <since_tizen> 3 </since_tizen>
1276         public string Emboss
1277         {
1278             get
1279             {
1280                 string temp;
1281                 GetProperty(TextField.Property.EMBOSS).Get(out temp);
1282                 return temp;
1283             }
1284             set
1285             {
1286                 SetProperty(TextField.Property.EMBOSS, new Tizen.NUI.PropertyValue(value));
1287             }
1288         }
1289
1290         /// <summary>
1291         /// The InputEmboss property.
1292         /// </summary>
1293         /// <since_tizen> 3 </since_tizen>
1294         public string InputEmboss
1295         {
1296             get
1297             {
1298                 string temp;
1299                 GetProperty(TextField.Property.INPUT_EMBOSS).Get(out temp);
1300                 return temp;
1301             }
1302             set
1303             {
1304                 SetProperty(TextField.Property.INPUT_EMBOSS, new Tizen.NUI.PropertyValue(value));
1305             }
1306         }
1307
1308         /// <summary>
1309         /// The Outline property.
1310         /// </summary>
1311         /// <since_tizen> 3 </since_tizen>
1312         public PropertyMap Outline
1313         {
1314             get
1315             {
1316                 PropertyMap temp = new PropertyMap();
1317                 GetProperty(TextField.Property.OUTLINE).Get(temp);
1318                 return temp;
1319             }
1320             set
1321             {
1322                 SetProperty(TextField.Property.OUTLINE, new Tizen.NUI.PropertyValue(value));
1323             }
1324         }
1325
1326         /// <summary>
1327         /// The InputOutline property.
1328         /// </summary>
1329         /// <since_tizen> 3 </since_tizen>
1330         public string InputOutline
1331         {
1332             get
1333             {
1334                 string temp;
1335                 GetProperty(TextField.Property.INPUT_OUTLINE).Get(out temp);
1336                 return temp;
1337             }
1338             set
1339             {
1340                 SetProperty(TextField.Property.INPUT_OUTLINE, new Tizen.NUI.PropertyValue(value));
1341             }
1342         }
1343
1344         /// <summary>
1345         /// The HiddenInputSettings property.
1346         /// </summary>
1347         /// <since_tizen> 3 </since_tizen>
1348         public Tizen.NUI.PropertyMap HiddenInputSettings
1349         {
1350             get
1351             {
1352                 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
1353                 GetProperty(TextField.Property.HIDDEN_INPUT_SETTINGS).Get(temp);
1354                 return temp;
1355             }
1356             set
1357             {
1358                 SetProperty(TextField.Property.HIDDEN_INPUT_SETTINGS, new Tizen.NUI.PropertyValue(value));
1359             }
1360         }
1361
1362         /// <summary>
1363         /// The PixelSize property.
1364         /// </summary>
1365         /// <since_tizen> 3 </since_tizen>
1366         public float PixelSize
1367         {
1368             get
1369             {
1370                 float temp = 0.0f;
1371                 GetProperty(TextField.Property.PIXEL_SIZE).Get(out temp);
1372                 return temp;
1373             }
1374             set
1375             {
1376                 SetProperty(TextField.Property.PIXEL_SIZE, new Tizen.NUI.PropertyValue(value));
1377             }
1378         }
1379
1380         /// <summary>
1381         /// The Enable selection property.
1382         /// </summary>
1383         /// <since_tizen> 3 </since_tizen>
1384         public bool EnableSelection
1385         {
1386             get
1387             {
1388                 bool temp = false;
1389                 GetProperty(TextField.Property.ENABLE_SELECTION).Get(out temp);
1390                 return temp;
1391             }
1392             set
1393             {
1394                 SetProperty(TextField.Property.ENABLE_SELECTION, new Tizen.NUI.PropertyValue(value));
1395             }
1396         }
1397
1398         /// <summary>
1399         /// The Placeholder property.
1400         /// Gets or sets the placeholder: text, color, font family, font style, point size, and pixel size.
1401         /// </summary>
1402         /// <example>
1403         /// The following example demonstrates how to set the Placeholder property.
1404         /// <code>
1405         /// PropertyMap propertyMap = new PropertyMap();
1406         /// propertyMap.Add("text", new PropertyValue("Setting Placeholder Text"));
1407         /// propertyMap.Add("textFocused", new PropertyValue("Setting Placeholder Text Focused"));
1408         /// propertyMap.Add("color", new PropertyValue(Color.Red));
1409         /// propertyMap.Add("fontFamily", new PropertyValue("Arial"));
1410         /// propertyMap.Add("pointSize", new PropertyValue(12.0f));
1411         ///
1412         /// PropertyMap fontStyleMap = new PropertyMap();
1413         /// fontStyleMap.Add("weight", new PropertyValue("bold"));
1414         /// fontStyleMap.Add("width", new PropertyValue("condensed"));
1415         /// fontStyleMap.Add("slant", new PropertyValue("italic"));
1416         /// propertyMap.Add("fontStyle", new PropertyValue(fontStyleMap));
1417         ///
1418         /// TextField field = new TextField();
1419         /// field.Placeholder = propertyMap;
1420         /// </code>
1421         /// </example>
1422         /// <since_tizen> 3 </since_tizen>
1423         public Tizen.NUI.PropertyMap Placeholder
1424         {
1425             get
1426             {
1427                 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
1428                 GetProperty(TextField.Property.PLACEHOLDER).Get(temp);
1429                 return temp;
1430             }
1431             set
1432             {
1433                 SetProperty(TextField.Property.PLACEHOLDER, new Tizen.NUI.PropertyValue(value));
1434             }
1435         }
1436
1437         /// <summary>
1438         /// The Ellipsis property.<br />
1439         /// Enable or disable the ellipsis.<br />
1440         /// Placeholder PropertyMap is used to add ellipsis to placeholder text.
1441         /// </summary>
1442         /// <since_tizen> 4 </since_tizen>
1443         public bool Ellipsis
1444         {
1445             get
1446             {
1447                 bool temp = false;
1448                 GetProperty(TextField.Property.ELLIPSIS).Get(out temp);
1449                 return temp;
1450             }
1451             set
1452             {
1453                 SetProperty(TextField.Property.ELLIPSIS, new Tizen.NUI.PropertyValue(value));
1454             }
1455         }
1456
1457         /// <summary>
1458         /// Enables Text selection using Shift key.
1459         /// </summary>
1460         /// <since_tizen> 5 </since_tizen>
1461         public bool EnableShiftSelection
1462         {
1463             get
1464             {
1465                 // mShiftSelectionFlag( true )
1466                 bool temp = true;
1467                 GetProperty(TextField.Property.ENABLE_SHIFT_SELECTION).Get(out temp);
1468                 return temp;
1469             }
1470             set
1471             {
1472                 SetProperty(TextField.Property.ENABLE_SHIFT_SELECTION, new Tizen.NUI.PropertyValue(value));
1473             }
1474         }
1475
1476
1477
1478     }
1479 }