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