Add ScriptUI to support XAML file (#320)
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / BaseComponents / TextEditor.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
18 extern alias TizenSystemSettings;
19 using TizenSystemSettings.Tizen.System;
20
21 using System;
22 using System.Runtime.InteropServices;
23 using System.Globalization;
24 using System.ComponentModel;
25 using Tizen.NUI.Binding;
26
27 namespace Tizen.NUI.BaseComponents
28 {
29     /// <summary>
30     /// A control which provides a multi-line editable text editor.
31     /// </summary>
32     /// <since_tizen> 3 </since_tizen>
33     [ContentProperty("Text")]
34     public class TextEditor : View
35     {
36         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
37         [EditorBrowsable(EditorBrowsableState.Never)]
38         public static readonly BindableProperty TextProperty = BindableProperty.Create("Text", typeof(string), typeof(TextEditor), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
39         {
40             var textEditor = (TextEditor)bindable;
41             if (newValue != null)
42             {
43                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.TEXT, new Tizen.NUI.PropertyValue((string)newValue));
44             }
45         },
46         defaultValueCreator:(bindable) =>
47         {
48             var textEditor = (TextEditor)bindable;
49             string temp;
50             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.TEXT).Get(out temp);
51             return temp;
52         });
53         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
54         [EditorBrowsable(EditorBrowsableState.Never)]
55         public static readonly BindableProperty TextColorProperty = BindableProperty.Create("TextColor", typeof(Vector4), typeof(TextEditor), Vector4.Zero, propertyChanged: (bindable, oldValue, newValue) =>
56         {
57             var textEditor = (TextEditor)bindable;
58             if (newValue != null)
59             {
60                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.TEXT_COLOR, new Tizen.NUI.PropertyValue((Vector4)newValue));
61             }
62         },
63         defaultValueCreator:(bindable) =>
64         {
65             var textEditor = (TextEditor)bindable;
66             Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
67             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.TEXT_COLOR).Get(temp);
68             return temp;
69         });
70         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
71         [EditorBrowsable(EditorBrowsableState.Never)]
72         public static readonly BindableProperty FontFamilyProperty = BindableProperty.Create("FontFamily", typeof(string), typeof(TextEditor), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
73         {
74             var textEditor = (TextEditor)bindable;
75             if (newValue != null)
76             {
77                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.FONT_FAMILY, new Tizen.NUI.PropertyValue((string)newValue));
78             }
79         },
80         defaultValueCreator:(bindable) =>
81         {
82             var textEditor = (TextEditor)bindable;
83             string temp;
84             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.FONT_FAMILY).Get(out temp);
85             return temp;
86         });
87         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
88         [EditorBrowsable(EditorBrowsableState.Never)]
89         public static readonly BindableProperty FontStyleProperty = BindableProperty.Create("FontStyle", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
90         {
91             var textEditor = (TextEditor)bindable;
92             if (newValue != null)
93             {
94                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.FONT_STYLE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
95             }
96         },
97         defaultValueCreator:(bindable) =>
98         {
99             var textEditor = (TextEditor)bindable;
100             PropertyMap temp = new PropertyMap();
101             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.FONT_STYLE).Get(temp);
102             return temp;
103         });
104         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
105         [EditorBrowsable(EditorBrowsableState.Never)]
106         public static readonly BindableProperty PointSizeProperty = BindableProperty.Create("PointSize", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
107         {
108             var textEditor = (TextEditor)bindable;
109             if (newValue != null)
110             {
111                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.POINT_SIZE, new Tizen.NUI.PropertyValue((float)newValue));
112             }
113         },
114         defaultValueCreator:(bindable) =>
115         {
116             var textEditor = (TextEditor)bindable;
117             float temp = 0.0f;
118             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.POINT_SIZE).Get(out temp);
119             return temp;
120         });
121         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
122         [EditorBrowsable(EditorBrowsableState.Never)]
123         public static readonly BindableProperty HorizontalAlignmentProperty = BindableProperty.Create("HorizontalAlignment", typeof(HorizontalAlignment), typeof(TextEditor), HorizontalAlignment.Begin, propertyChanged: (bindable, oldValue, newValue) =>
124         {
125             var textEditor = (TextEditor)bindable;
126             if (newValue != null)
127             {
128                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.HORIZONTAL_ALIGNMENT, new Tizen.NUI.PropertyValue((int)newValue));
129             }
130         },
131         defaultValueCreator:(bindable) =>
132         {
133             var textEditor = (TextEditor)bindable;
134             string temp;
135             if (Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.HORIZONTAL_ALIGNMENT).Get(out temp) == false)
136             {
137                 NUILog.Error("HorizontalAlignment get error!");
138             }
139
140             switch (temp)
141             {
142                 case "BEGIN":
143                     return HorizontalAlignment.Begin;
144                 case "CENTER":
145                     return HorizontalAlignment.Center;
146                 case "END":
147                     return HorizontalAlignment.End;
148                 default:
149                     return HorizontalAlignment.Begin;
150             }
151         });
152         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
153         [EditorBrowsable(EditorBrowsableState.Never)]
154         public static readonly BindableProperty ScrollThresholdProperty = BindableProperty.Create("ScrollThreshold", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
155         {
156             var textEditor = (TextEditor)bindable;
157             if (newValue != null)
158             {
159                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SCROLL_THRESHOLD, new Tizen.NUI.PropertyValue((float)newValue));
160             }
161         },
162         defaultValueCreator:(bindable) =>
163         {
164             var textEditor = (TextEditor)bindable;
165             float temp = 0.0f;
166             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SCROLL_THRESHOLD).Get(out temp);
167             return temp;
168         });
169         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
170         [EditorBrowsable(EditorBrowsableState.Never)]
171         public static readonly BindableProperty ScrollSpeedProperty = BindableProperty.Create("ScrollSpeed", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
172         {
173             var textEditor = (TextEditor)bindable;
174             if (newValue != null)
175             {
176                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SCROLL_SPEED, new Tizen.NUI.PropertyValue((float)newValue));
177             }
178         },
179         defaultValueCreator:(bindable) =>
180         {
181             var textEditor = (TextEditor)bindable;
182             float temp = 0.0f;
183             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SCROLL_SPEED).Get(out temp);
184             return temp;
185         });
186         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
187         [EditorBrowsable(EditorBrowsableState.Never)]
188         public static readonly BindableProperty PrimaryCursorColorProperty = BindableProperty.Create("PrimaryCursorColor", typeof(Vector4), typeof(TextEditor), Vector4.Zero, propertyChanged: (bindable, oldValue, newValue) =>
189         {
190             var textEditor = (TextEditor)bindable;
191             if (newValue != null)
192             {
193                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.PRIMARY_CURSOR_COLOR, new Tizen.NUI.PropertyValue((Vector4)newValue));
194             }
195         },
196         defaultValueCreator:(bindable) =>
197         {
198             var textEditor = (TextEditor)bindable;
199             Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
200             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.PRIMARY_CURSOR_COLOR).Get(temp);
201             return temp;
202         });
203         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
204         [EditorBrowsable(EditorBrowsableState.Never)]
205         public static readonly BindableProperty SecondaryCursorColorProperty = BindableProperty.Create("SecondaryCursorColor", typeof(Vector4), typeof(TextEditor), Vector4.Zero, propertyChanged: (bindable, oldValue, newValue) =>
206         {
207             var textEditor = (TextEditor)bindable;
208             if (newValue != null)
209             {
210                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SECONDARY_CURSOR_COLOR, new Tizen.NUI.PropertyValue((Vector4)newValue));
211             }
212         },
213         defaultValueCreator:(bindable) =>
214         {
215             var textEditor = (TextEditor)bindable;
216             Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
217             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SECONDARY_CURSOR_COLOR).Get(temp);
218             return temp;
219         });
220         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
221         [EditorBrowsable(EditorBrowsableState.Never)]
222         public static readonly BindableProperty EnableCursorBlinkProperty = BindableProperty.Create("EnableCursorBlink", typeof(bool), typeof(TextEditor), false, propertyChanged: (bindable, oldValue, newValue) =>
223         {
224             var textEditor = (TextEditor)bindable;
225             if (newValue != null)
226             {
227                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.ENABLE_CURSOR_BLINK, new Tizen.NUI.PropertyValue((bool)newValue));
228             }
229         },
230         defaultValueCreator:(bindable) =>
231         {
232             var textEditor = (TextEditor)bindable;
233             bool temp = false;
234             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.ENABLE_CURSOR_BLINK).Get(out temp);
235             return temp;
236         });
237         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
238         [EditorBrowsable(EditorBrowsableState.Never)]
239         public static readonly BindableProperty CursorBlinkIntervalProperty = BindableProperty.Create("CursorBlinkInterval", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
240         {
241             var textEditor = (TextEditor)bindable;
242             if (newValue != null)
243             {
244                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.CURSOR_BLINK_INTERVAL, new Tizen.NUI.PropertyValue((float)newValue));
245             }
246         },
247         defaultValueCreator:(bindable) =>
248         {
249             var textEditor = (TextEditor)bindable;
250             float temp = 0.0f;
251             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.CURSOR_BLINK_INTERVAL).Get(out temp);
252             return temp;
253         });
254         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
255         [EditorBrowsable(EditorBrowsableState.Never)]
256         public static readonly BindableProperty CursorBlinkDurationProperty = BindableProperty.Create("CursorBlinkDuration", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
257         {
258             var textEditor = (TextEditor)bindable;
259             if (newValue != null)
260             {
261                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.CURSOR_BLINK_DURATION, new Tizen.NUI.PropertyValue((float)newValue));
262             }
263         },
264         defaultValueCreator:(bindable) =>
265         {
266             var textEditor = (TextEditor)bindable;
267             float temp = 0.0f;
268             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.CURSOR_BLINK_DURATION).Get(out temp);
269             return temp;
270         });
271         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
272         [EditorBrowsable(EditorBrowsableState.Never)]
273         public static readonly BindableProperty CursorWidthProperty = BindableProperty.Create("CursorWidth", typeof(int), typeof(TextEditor), default(int), propertyChanged: (bindable, oldValue, newValue) =>
274         {
275             var textEditor = (TextEditor)bindable;
276             if (newValue != null)
277             {
278                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.CURSOR_WIDTH, new Tizen.NUI.PropertyValue((int)newValue));
279             }
280         },
281         defaultValueCreator:(bindable) =>
282         {
283             var textEditor = (TextEditor)bindable;
284             int temp = 0;
285             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.CURSOR_WIDTH).Get(out temp);
286             return temp;
287         });
288         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
289         [EditorBrowsable(EditorBrowsableState.Never)]
290         public static readonly BindableProperty GrabHandleImageProperty = BindableProperty.Create("GrabHandleImage", typeof(string), typeof(TextEditor), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
291         {
292             var textEditor = (TextEditor)bindable;
293             if (newValue != null)
294             {
295                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.GRAB_HANDLE_IMAGE, new Tizen.NUI.PropertyValue((string)newValue));
296             }
297         },
298         defaultValueCreator:(bindable) =>
299         {
300             var textEditor = (TextEditor)bindable;
301             string temp;
302             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.GRAB_HANDLE_IMAGE).Get(out temp);
303             return temp;
304         });
305         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
306         [EditorBrowsable(EditorBrowsableState.Never)]
307         public static readonly BindableProperty GrabHandlePressedImageProperty = BindableProperty.Create("GrabHandlePressedImage", typeof(string), typeof(TextEditor), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
308         {
309             var textEditor = (TextEditor)bindable;
310             if (newValue != null)
311             {
312                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.GRAB_HANDLE_PRESSED_IMAGE, new Tizen.NUI.PropertyValue((string)newValue));
313             }
314         },
315         defaultValueCreator:(bindable) =>
316         {
317             var textEditor = (TextEditor)bindable;
318             string temp;
319             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.GRAB_HANDLE_PRESSED_IMAGE).Get(out temp);
320             return temp;
321         });
322         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
323         [EditorBrowsable(EditorBrowsableState.Never)]
324         public static readonly BindableProperty SelectionHandleImageLeftProperty = BindableProperty.Create("SelectionHandleImageLeft", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
325         {
326             var textEditor = (TextEditor)bindable;
327             if (newValue != null)
328             {
329                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_IMAGE_LEFT, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
330             }
331         },
332         defaultValueCreator:(bindable) =>
333         {
334             var textEditor = (TextEditor)bindable;
335             PropertyMap temp = new PropertyMap();
336             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_IMAGE_LEFT).Get(temp);
337             return temp;
338         });
339         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
340         [EditorBrowsable(EditorBrowsableState.Never)]
341         public static readonly BindableProperty SelectionHandleImageRightProperty = BindableProperty.Create("SelectionHandleImageRight", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
342         {
343             var textEditor = (TextEditor)bindable;
344             if (newValue != null)
345             {
346                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_IMAGE_RIGHT, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
347             }
348         },
349         defaultValueCreator:(bindable) =>
350         {
351             var textEditor = (TextEditor)bindable;
352             PropertyMap temp = new PropertyMap();
353             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_IMAGE_RIGHT).Get(temp);
354             return temp;
355         });
356         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
357         [EditorBrowsable(EditorBrowsableState.Never)]
358         public static readonly BindableProperty SelectionHandlePressedImageLeftProperty = BindableProperty.Create("SelectionHandlePressedImageLeft", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
359         {
360             var textEditor = (TextEditor)bindable;
361             if (newValue != null)
362             {
363                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_PRESSED_IMAGE_LEFT, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
364             }
365         },
366         defaultValueCreator:(bindable) =>
367         {
368             var textEditor = (TextEditor)bindable;
369             PropertyMap temp = new PropertyMap();
370             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_PRESSED_IMAGE_LEFT).Get(temp);
371             return temp;
372         });
373         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
374         [EditorBrowsable(EditorBrowsableState.Never)]
375         public static readonly BindableProperty SelectionHandlePressedImageRightProperty = BindableProperty.Create("SelectionHandlePressedImageRight", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
376         {
377             var textEditor = (TextEditor)bindable;
378             if (newValue != null)
379             {
380                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_PRESSED_IMAGE_RIGHT, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
381             }
382         },
383         defaultValueCreator:(bindable) =>
384         {
385             var textEditor = (TextEditor)bindable;
386             PropertyMap temp = new PropertyMap();
387             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_PRESSED_IMAGE_RIGHT).Get(temp);
388             return temp;
389         });
390         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
391         [EditorBrowsable(EditorBrowsableState.Never)]
392         public static readonly BindableProperty SelectionHandleMarkerImageLeftProperty = BindableProperty.Create("SelectionHandleMarkerImageLeft", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
393         {
394             var textEditor = (TextEditor)bindable;
395             if (newValue != null)
396             {
397                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_MARKER_IMAGE_LEFT, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
398             }
399         },
400         defaultValueCreator:(bindable) =>
401         {
402             var textEditor = (TextEditor)bindable;
403             PropertyMap temp = new PropertyMap();
404             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_MARKER_IMAGE_LEFT).Get(temp);
405             return temp;
406         });
407         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
408         [EditorBrowsable(EditorBrowsableState.Never)]
409         public static readonly BindableProperty SelectionHandleMarkerImageRightProperty = BindableProperty.Create("SelectionHandleMarkerImageRight", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
410         {
411             var textEditor = (TextEditor)bindable;
412             if (newValue != null)
413             {
414                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_MARKER_IMAGE_RIGHT, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
415             }
416         },
417         defaultValueCreator:(bindable) =>
418         {
419             var textEditor = (TextEditor)bindable;
420             PropertyMap temp = new PropertyMap();
421             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HANDLE_MARKER_IMAGE_RIGHT).Get(temp);
422             return temp;
423         });
424         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
425         [EditorBrowsable(EditorBrowsableState.Never)]
426         public static readonly BindableProperty SelectionHighlightColorProperty = BindableProperty.Create("SelectionHighlightColor", typeof(Vector4), typeof(TextEditor), Vector4.Zero, propertyChanged: (bindable, oldValue, newValue) =>
427         {
428             var textEditor = (TextEditor)bindable;
429             if (newValue != null)
430             {
431                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HIGHLIGHT_COLOR, new Tizen.NUI.PropertyValue((Vector4)newValue));
432             }
433         },
434         defaultValueCreator:(bindable) =>
435         {
436             var textEditor = (TextEditor)bindable;
437             Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
438             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SELECTION_HIGHLIGHT_COLOR).Get(temp);
439             return temp;
440         });
441         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
442         [EditorBrowsable(EditorBrowsableState.Never)]
443         public static readonly BindableProperty DecorationBoundingBoxProperty = BindableProperty.Create("DecorationBoundingBox", typeof(Rectangle), typeof(TextEditor), new Rectangle(0,0,0,0), propertyChanged: (bindable, oldValue, newValue) =>
444         {
445             var textEditor = (TextEditor)bindable;
446             if (newValue != null)
447             {
448                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.DECORATION_BOUNDING_BOX, new Tizen.NUI.PropertyValue((Rectangle)newValue));
449             }
450         },
451         defaultValueCreator:(bindable) =>
452         {
453             var textEditor = (TextEditor)bindable;
454             Rectangle temp = new Rectangle(0, 0, 0, 0);
455             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.DECORATION_BOUNDING_BOX).Get(temp);
456             return temp;
457         });
458         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
459         [EditorBrowsable(EditorBrowsableState.Never)]
460         public static readonly BindableProperty EnableMarkupProperty = BindableProperty.Create("EnableMarkup", typeof(bool), typeof(TextEditor), false, propertyChanged: (bindable, oldValue, newValue) =>
461         {
462             var textEditor = (TextEditor)bindable;
463             if (newValue != null)
464             {
465                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.ENABLE_MARKUP, new Tizen.NUI.PropertyValue((bool)newValue));
466             }
467         },
468         defaultValueCreator:(bindable) =>
469         {
470             var textEditor = (TextEditor)bindable;
471             bool temp = false;
472             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.ENABLE_MARKUP).Get(out temp);
473             return temp;
474         });
475         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
476         [EditorBrowsable(EditorBrowsableState.Never)]
477         public static readonly BindableProperty InputColorProperty = BindableProperty.Create("InputColor", typeof(Vector4), typeof(TextEditor), Vector4.Zero, propertyChanged: (bindable, oldValue, newValue) =>
478         {
479             var textEditor = (TextEditor)bindable;
480             if (newValue != null)
481             {
482                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_COLOR, new Tizen.NUI.PropertyValue((Vector4)newValue));
483             }
484         },
485         defaultValueCreator:(bindable) =>
486         {
487             var textEditor = (TextEditor)bindable;
488             Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
489             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_COLOR).Get(temp);
490             return temp;
491         });
492         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
493         [EditorBrowsable(EditorBrowsableState.Never)]
494         public static readonly BindableProperty InputFontFamilyProperty = BindableProperty.Create("InputFontFamily", typeof(string), typeof(TextEditor), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
495         {
496             var textEditor = (TextEditor)bindable;
497             if (newValue != null)
498             {
499                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_FONT_FAMILY, new Tizen.NUI.PropertyValue((string)newValue));
500             }
501         },
502         defaultValueCreator:(bindable) =>
503         {
504             var textEditor = (TextEditor)bindable;
505             string temp;
506             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_FONT_FAMILY).Get(out temp);
507             return temp;
508         });
509         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
510         [EditorBrowsable(EditorBrowsableState.Never)]
511         public static readonly BindableProperty InputFontStyleProperty = BindableProperty.Create("InputFontStyle", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
512         {
513             var textEditor = (TextEditor)bindable;
514             if (newValue != null)
515             {
516                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_FONT_STYLE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
517             }
518         },
519         defaultValueCreator:(bindable) =>
520         {
521             var textEditor = (TextEditor)bindable;
522             PropertyMap temp = new PropertyMap();
523             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_FONT_STYLE).Get(temp);
524             return temp;
525         });
526         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
527         [EditorBrowsable(EditorBrowsableState.Never)]
528         public static readonly BindableProperty InputPointSizeProperty = BindableProperty.Create("InputPointSize", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
529         {
530             var textEditor = (TextEditor)bindable;
531             if (newValue != null)
532             {
533                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_POINT_SIZE, new Tizen.NUI.PropertyValue((float)newValue));
534             }
535         },
536         defaultValueCreator:(bindable) =>
537         {
538             var textEditor = (TextEditor)bindable;
539             float temp = 0.0f;
540             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_POINT_SIZE).Get(out temp);
541             return temp;
542         });
543         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
544         [EditorBrowsable(EditorBrowsableState.Never)]
545         public static readonly BindableProperty LineSpacingProperty = BindableProperty.Create("LineSpacing", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
546         {
547             var textEditor = (TextEditor)bindable;
548             if (newValue != null)
549             {
550                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.LINE_SPACING, new Tizen.NUI.PropertyValue((float)newValue));
551             }
552         },
553         defaultValueCreator:(bindable) =>
554         {
555             var textEditor = (TextEditor)bindable;
556             float temp = 0.0f;
557             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.LINE_SPACING).Get(out temp);
558             return temp;
559         });
560         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
561         [EditorBrowsable(EditorBrowsableState.Never)]
562         public static readonly BindableProperty InputLineSpacingProperty = BindableProperty.Create("InputLineSpacing", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
563         {
564             var textEditor = (TextEditor)bindable;
565             if (newValue != null)
566             {
567                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_LINE_SPACING, new Tizen.NUI.PropertyValue((float)newValue));
568             }
569         },
570         defaultValueCreator:(bindable) =>
571         {
572             var textEditor = (TextEditor)bindable;
573             float temp = 0.0f;
574             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_LINE_SPACING).Get(out temp);
575             return temp;
576         });
577         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
578         [EditorBrowsable(EditorBrowsableState.Never)]
579         public static readonly BindableProperty UnderlineProperty = BindableProperty.Create("Underline", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
580         {
581             var textEditor = (TextEditor)bindable;
582             if (newValue != null)
583             {
584                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.UNDERLINE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
585             }
586         },
587         defaultValueCreator:(bindable) =>
588         {
589             var textEditor = (TextEditor)bindable;
590             PropertyMap temp = new PropertyMap();
591             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.UNDERLINE).Get(temp);
592             return temp;
593         });
594         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
595         [EditorBrowsable(EditorBrowsableState.Never)]
596         public static readonly BindableProperty InputUnderlineProperty = BindableProperty.Create("InputUnderline", typeof(string), typeof(TextEditor), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
597         {
598             var textEditor = (TextEditor)bindable;
599             if (newValue != null)
600             {
601                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_UNDERLINE, new Tizen.NUI.PropertyValue((string)newValue));
602             }
603         },
604         defaultValueCreator:(bindable) =>
605         {
606             var textEditor = (TextEditor)bindable;
607             string temp;
608             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_UNDERLINE).Get(out temp);
609             return temp;
610         });
611         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
612         [EditorBrowsable(EditorBrowsableState.Never)]
613         public static readonly BindableProperty ShadowProperty = BindableProperty.Create("Shadow", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
614         {
615             var textEditor = (TextEditor)bindable;
616             if (newValue != null)
617             {
618                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SHADOW, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
619             }
620         },
621         defaultValueCreator:(bindable) =>
622         {
623             var textEditor = (TextEditor)bindable;
624             PropertyMap temp = new PropertyMap();
625             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SHADOW).Get(temp);
626             return temp;
627         });
628         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
629         [EditorBrowsable(EditorBrowsableState.Never)]
630         public static readonly BindableProperty InputShadowProperty = BindableProperty.Create("InputShadow", typeof(string), typeof(TextEditor), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
631         {
632             var textEditor = (TextEditor)bindable;
633             if (newValue != null)
634             {
635                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_SHADOW, new Tizen.NUI.PropertyValue((string)newValue));
636             }
637         },
638         defaultValueCreator:(bindable) =>
639         {
640             var textEditor = (TextEditor)bindable;
641             string temp;
642             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_SHADOW).Get(out temp);
643             return temp;
644         });
645         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
646         [EditorBrowsable(EditorBrowsableState.Never)]
647         public static readonly BindableProperty EmbossProperty = BindableProperty.Create("Emboss", typeof(string), typeof(TextEditor), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
648         {
649             var textEditor = (TextEditor)bindable;
650             if (newValue != null)
651             {
652                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.EMBOSS, new Tizen.NUI.PropertyValue((string)newValue));
653             }
654         },
655         defaultValueCreator:(bindable) =>
656         {
657             var textEditor = (TextEditor)bindable;
658             string temp;
659             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.EMBOSS).Get(out temp);
660             return temp;
661         });
662         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
663         [EditorBrowsable(EditorBrowsableState.Never)]
664         public static readonly BindableProperty InputEmbossProperty = BindableProperty.Create("InputEmboss", typeof(string), typeof(TextEditor), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
665         {
666             var textEditor = (TextEditor)bindable;
667             if (newValue != null)
668             {
669                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_EMBOSS, new Tizen.NUI.PropertyValue((string)newValue));
670             }
671         },
672         defaultValueCreator:(bindable) =>
673         {
674             var textEditor = (TextEditor)bindable;
675             string temp;
676             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_EMBOSS).Get(out temp);
677             return temp;
678         });
679         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
680         [EditorBrowsable(EditorBrowsableState.Never)]
681         public static readonly BindableProperty OutlineProperty = BindableProperty.Create("Outline", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
682         {
683             var textEditor = (TextEditor)bindable;
684             if (newValue != null)
685             {
686                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.OUTLINE, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
687             }
688         },
689         defaultValueCreator:(bindable) =>
690         {
691             var textEditor = (TextEditor)bindable;
692             PropertyMap temp = new PropertyMap();
693             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.OUTLINE).Get(temp);
694             return temp;
695         });
696         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
697         [EditorBrowsable(EditorBrowsableState.Never)]
698         public static readonly BindableProperty InputOutlineProperty = BindableProperty.Create("InputOutline", typeof(string), typeof(TextEditor), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
699         {
700             var textEditor = (TextEditor)bindable;
701             if (newValue != null)
702             {
703                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_OUTLINE, new Tizen.NUI.PropertyValue((string)newValue));
704             }
705         },
706         defaultValueCreator:(bindable) =>
707         {
708             var textEditor = (TextEditor)bindable;
709             string temp;
710             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.INPUT_OUTLINE).Get(out temp);
711             return temp;
712         });
713         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
714         [EditorBrowsable(EditorBrowsableState.Never)]
715         public static readonly BindableProperty SmoothScrollProperty = BindableProperty.Create("SmoothScroll", typeof(bool), typeof(TextEditor), false, propertyChanged: (bindable, oldValue, newValue) =>
716         {
717             var textEditor = (TextEditor)bindable;
718             if (newValue != null)
719             {
720                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SMOOTH_SCROLL, new Tizen.NUI.PropertyValue((bool)newValue));
721             }
722         },
723         defaultValueCreator:(bindable) =>
724         {
725             var textEditor = (TextEditor)bindable;
726             bool temp = false;
727             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SMOOTH_SCROLL).Get(out temp);
728             return temp;
729         });
730         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
731         [EditorBrowsable(EditorBrowsableState.Never)]
732         public static readonly BindableProperty SmoothScrollDurationProperty = BindableProperty.Create("SmoothScrollDuration", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
733         {
734             var textEditor = (TextEditor)bindable;
735             if (newValue != null)
736             {
737                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SMOOTH_SCROLL_DURATION, new Tizen.NUI.PropertyValue((float)newValue));
738             }
739         },
740         defaultValueCreator:(bindable) =>
741         {
742             var textEditor = (TextEditor)bindable;
743             float temp = 0.0f;
744             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SMOOTH_SCROLL_DURATION).Get(out temp);
745             return temp;
746         });
747         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
748         [EditorBrowsable(EditorBrowsableState.Never)]
749         public static readonly BindableProperty EnableScrollBarProperty = BindableProperty.Create("EnableScrollBar", typeof(bool), typeof(TextEditor), false, propertyChanged: (bindable, oldValue, newValue) =>
750         {
751             var textEditor = (TextEditor)bindable;
752             if (newValue != null)
753             {
754                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.ENABLE_SCROLL_BAR, new Tizen.NUI.PropertyValue((bool)newValue));
755             }
756         },
757         defaultValueCreator:(bindable) =>
758         {
759             var textEditor = (TextEditor)bindable;
760             bool temp = false;
761             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.ENABLE_SCROLL_BAR).Get(out temp);
762             return temp;
763         });
764         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
765         [EditorBrowsable(EditorBrowsableState.Never)]
766         public static readonly BindableProperty ScrollBarShowDurationProperty = BindableProperty.Create("ScrollBarShowDuration", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
767         {
768             var textEditor = (TextEditor)bindable;
769             if (newValue != null)
770             {
771                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SCROLL_BAR_SHOW_DURATION, new Tizen.NUI.PropertyValue((float)newValue));
772             }
773         },
774         defaultValueCreator:(bindable) =>
775         {
776             var textEditor = (TextEditor)bindable;
777             float temp = 0.0f;
778             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SCROLL_BAR_SHOW_DURATION).Get(out temp);
779             return temp;
780         });
781         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
782         [EditorBrowsable(EditorBrowsableState.Never)]
783         public static readonly BindableProperty ScrollBarFadeDurationProperty = BindableProperty.Create("ScrollBarFadeDuration", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
784         {
785             var textEditor = (TextEditor)bindable;
786             if (newValue != null)
787             {
788                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.SCROLL_BAR_FADE_DURATION, new Tizen.NUI.PropertyValue((float)newValue));
789             }
790         },
791         defaultValueCreator:(bindable) =>
792         {
793             var textEditor = (TextEditor)bindable;
794             float temp = 0.0f;
795             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.SCROLL_BAR_FADE_DURATION).Get(out temp);
796             return temp;
797         });
798         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
799         [EditorBrowsable(EditorBrowsableState.Never)]
800         public static readonly BindableProperty PixelSizeProperty = BindableProperty.Create("PixelSize", typeof(float), typeof(TextEditor), default(float), propertyChanged: (bindable, oldValue, newValue) =>
801         {
802             var textEditor = (TextEditor)bindable;
803             if (newValue != null)
804             {
805                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.PIXEL_SIZE, new Tizen.NUI.PropertyValue((float)newValue));
806             }
807         },
808         defaultValueCreator:(bindable) =>
809         {
810             var textEditor = (TextEditor)bindable;
811             float temp = 0.0f;
812             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.PIXEL_SIZE).Get(out temp);
813             return temp;
814         });
815         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
816         [EditorBrowsable(EditorBrowsableState.Never)]
817         public static readonly BindableProperty PlaceholderTextProperty = BindableProperty.Create("PlaceholderText", typeof(string), typeof(TextEditor), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
818         {
819             var textEditor = (TextEditor)bindable;
820             if (newValue != null)
821             {
822                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.PLACEHOLDER_TEXT, new Tizen.NUI.PropertyValue((string)newValue));
823             }
824         },
825         defaultValueCreator:(bindable) =>
826         {
827             var textEditor = (TextEditor)bindable;
828             string temp;
829             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.PLACEHOLDER_TEXT).Get(out temp);
830             return temp;
831         });
832         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
833         [EditorBrowsable(EditorBrowsableState.Never)]
834         public static readonly BindableProperty PlaceholderTextColorProperty = BindableProperty.Create("PlaceholderTextColor", typeof(Color), typeof(TextEditor), Color.Transparent, propertyChanged: (bindable, oldValue, newValue) =>
835         {
836             var textEditor = (TextEditor)bindable;
837             if (newValue != null)
838             {
839                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.PLACEHOLDER_TEXT_COLOR, new Tizen.NUI.PropertyValue((Color)newValue));
840             }
841         },
842         defaultValueCreator:(bindable) =>
843         {
844             var textEditor = (TextEditor)bindable;
845             Color temp = new Color(0.0f, 0.0f, 0.0f, 0.0f);
846             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.PLACEHOLDER_TEXT_COLOR).Get(temp);
847             return temp;
848         });
849         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
850         [EditorBrowsable(EditorBrowsableState.Never)]
851         public static readonly BindableProperty EnableSelectionProperty = BindableProperty.Create("EnableSelection", typeof(bool), typeof(TextEditor), false, propertyChanged: (bindable, oldValue, newValue) =>
852         {
853             var textEditor = (TextEditor)bindable;
854             if (newValue != null)
855             {
856                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.ENABLE_SELECTION, new Tizen.NUI.PropertyValue((bool)newValue));
857             }
858         },
859         defaultValueCreator:(bindable) =>
860         {
861             var textEditor = (TextEditor)bindable;
862             bool temp = false;
863             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.ENABLE_SELECTION).Get(out temp);
864             return temp;
865         });
866         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
867         [EditorBrowsable(EditorBrowsableState.Never)]
868         public static readonly BindableProperty PlaceholderProperty = BindableProperty.Create("Placeholder", typeof(PropertyMap), typeof(TextEditor), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
869         {
870             var textEditor = (TextEditor)bindable;
871             if (newValue != null)
872             {
873                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.PLACEHOLDER, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
874             }
875         },
876         defaultValueCreator:(bindable) =>
877         {
878             var textEditor = (TextEditor)bindable;
879             Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
880             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.PLACEHOLDER).Get(temp);
881             return temp;
882         });
883         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
884         [EditorBrowsable(EditorBrowsableState.Never)]
885         public static readonly BindableProperty LineWrapModeProperty = BindableProperty.Create("LineWrapMode", typeof(LineWrapMode), typeof(TextEditor), LineWrapMode.Word, propertyChanged: (bindable, oldValue, newValue) =>
886         {
887             var textEditor = (TextEditor)bindable;
888             if (newValue != null)
889             {
890                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.LINE_WRAP_MODE, new Tizen.NUI.PropertyValue((int)newValue));
891             }
892         },
893         defaultValueCreator:(bindable) =>
894         {
895             var textEditor = (TextEditor)bindable;
896             int temp;
897             if(Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.LINE_WRAP_MODE).Get(out temp) == false)
898             {
899                 NUILog.Error("LineWrapMode get error!");
900             }
901             return (LineWrapMode)temp;
902         });
903         /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
904         [EditorBrowsable(EditorBrowsableState.Never)]
905         public static readonly BindableProperty EnableShiftSelectionProperty = BindableProperty.Create("EnableShiftSelection", typeof(bool), typeof(TextEditor), true, propertyChanged: (bindable, oldValue, newValue) =>
906         {
907             var textEditor = (TextEditor)bindable;
908             if (newValue != null)
909             {
910                 Tizen.NUI.Object.SetProperty(textEditor.swigCPtr, TextEditor.Property.ENABLE_SHIFT_SELECTION, new Tizen.NUI.PropertyValue((bool)newValue));
911             }
912         },
913         defaultValueCreator:(bindable) =>
914         {
915             var textEditor = (TextEditor)bindable;
916             //textEditor.mShiftSelectionFlag(true);
917             bool temp = false;
918             Tizen.NUI.Object.GetProperty(textEditor.swigCPtr, TextEditor.Property.ENABLE_SHIFT_SELECTION).Get(out temp);
919             return temp;
920         });
921
922         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
923         private string textEditorTextSid = null;
924         private string textEditorPlaceHolderTextSid = null;
925         private bool systemlangTextFlag = false;
926
927         internal TextEditor(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.TextEditor_SWIGUpcast(cPtr), cMemoryOwn)
928         {
929             swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
930         }
931
932         internal static global::System.Runtime.InteropServices.HandleRef getCPtr(TextEditor obj)
933         {
934             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
935         }
936
937         /// <summary>
938         /// Dispose.
939         /// </summary>
940         /// <since_tizen> 3 </since_tizen>
941         protected override void Dispose(DisposeTypes type)
942         {
943             if (disposed)
944             {
945                 return;
946             }
947
948             if(type == DisposeTypes.Explicit)
949             {
950                 //Called by User
951                 //Release your own managed resources here.
952                 //You should release all of your own disposable objects here.
953             }
954
955             //Release your own unmanaged resources here.
956             //You should not access any managed member here except static instance.
957             //because the execution order of Finalizes is non-deterministic.
958
959             if (this != null && _textEditorTextChangedCallbackDelegate != null)
960             {
961                 TextChangedSignal().Disconnect(_textEditorTextChangedCallbackDelegate);
962             }
963
964             if (swigCPtr.Handle != global::System.IntPtr.Zero)
965             {
966                 if (swigCMemOwn)
967                 {
968                     swigCMemOwn = false;
969                     NDalicPINVOKE.delete_TextEditor(swigCPtr);
970                 }
971                 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
972             }
973
974             base.Dispose(type);
975         }
976
977         /// <summary>
978         /// Event arguments that passed via the TextChanged signal.
979         /// </summary>
980         /// <since_tizen> 3 </since_tizen>
981         public class TextChangedEventArgs : EventArgs
982         {
983             private TextEditor _textEditor;
984
985             /// <summary>
986             /// TextEditor - is the texteditor control which has the text contents changed.
987             /// </summary>
988             /// <since_tizen> 3 </since_tizen>
989             public TextEditor TextEditor
990             {
991                 get
992                 {
993                     return _textEditor;
994                 }
995                 set
996                 {
997                     _textEditor = value;
998                 }
999             }
1000         }
1001
1002         [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1003         private delegate void TextChangedCallbackDelegate(IntPtr textEditor);
1004         private EventHandler<TextChangedEventArgs> _textEditorTextChangedEventHandler;
1005         private TextChangedCallbackDelegate _textEditorTextChangedCallbackDelegate;
1006
1007         /// <summary>
1008         /// An event for the TextChanged signal which can be used to subscribe or unsubscribe the event handler
1009         /// provided by the user. The TextChanged signal is emitted when the text changes.<br />
1010         /// </summary>
1011         /// <since_tizen> 3 </since_tizen>
1012         public event EventHandler<TextChangedEventArgs> TextChanged
1013         {
1014             add
1015             {
1016                 if (_textEditorTextChangedEventHandler == null)
1017                 {
1018                     _textEditorTextChangedCallbackDelegate = (OnTextChanged);
1019                     TextChangedSignal().Connect(_textEditorTextChangedCallbackDelegate);
1020                 }
1021                 _textEditorTextChangedEventHandler += value;
1022             }
1023             remove
1024             {
1025                 _textEditorTextChangedEventHandler -= value;
1026                 if (_textEditorTextChangedEventHandler == null && TextChangedSignal().Empty() == false)
1027                 {
1028                     TextChangedSignal().Disconnect(_textEditorTextChangedCallbackDelegate);
1029                 }
1030             }
1031         }
1032
1033         private void OnTextChanged(IntPtr textEditor)
1034         {
1035             TextChangedEventArgs e = new TextChangedEventArgs();
1036
1037             // Populate all members of "e" (TextChangedEventArgs) with real data
1038             e.TextEditor = Registry.GetManagedBaseHandleFromNativePtr(textEditor) as TextEditor;
1039
1040             if (_textEditorTextChangedEventHandler != null)
1041             {
1042                 //here we send all data to user event handlers
1043                 _textEditorTextChangedEventHandler(this, e);
1044             }
1045
1046         }
1047
1048         /// <summary>
1049         /// Event arguments that passed via the ScrollStateChanged signal.
1050         /// </summary>
1051         /// <since_tizen> 3 </since_tizen>
1052         public class ScrollStateChangedEventArgs : EventArgs
1053         {
1054             private TextEditor _textEditor;
1055             private ScrollState _scrollState;
1056
1057             /// <summary>
1058             /// TextEditor - is the texteditor control which has the scroll state changed.
1059             /// </summary>
1060             /// <since_tizen> 3 </since_tizen>
1061             public TextEditor TextEditor
1062             {
1063                 get
1064                 {
1065                     return _textEditor;
1066                 }
1067                 set
1068                 {
1069                     _textEditor = value;
1070                 }
1071             }
1072
1073             /// <summary>
1074             /// ScrollState - is the texteditor control scroll state.
1075             /// </summary>
1076             /// <since_tizen> 3 </since_tizen>
1077             public ScrollState ScrollState
1078             {
1079                 get
1080                 {
1081                     return _scrollState;
1082                 }
1083                 set
1084                 {
1085                     _scrollState = value;
1086                 }
1087             }
1088         }
1089
1090         [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1091         private delegate void ScrollStateChangedCallbackDelegate(IntPtr textEditor, ScrollState state);
1092         private EventHandler<ScrollStateChangedEventArgs> _textEditorScrollStateChangedEventHandler;
1093         private ScrollStateChangedCallbackDelegate _textEditorScrollStateChangedCallbackDelegate;
1094
1095         /// <summary>
1096         /// Event for the ScrollStateChanged signal which can be used to subscribe or unsubscribe the event handler
1097         /// provided by the user. The ScrollStateChanged signal is emitted when the scroll state changes.<br />
1098         /// </summary>
1099         /// <since_tizen> 3 </since_tizen>
1100         public event EventHandler<ScrollStateChangedEventArgs> ScrollStateChanged
1101         {
1102             add
1103             {
1104                 if (_textEditorScrollStateChangedEventHandler == null)
1105                 {
1106                     _textEditorScrollStateChangedCallbackDelegate = OnScrollStateChanged;
1107                     ScrollStateChangedSignal(this).Connect(_textEditorScrollStateChangedCallbackDelegate);
1108                 }
1109                 _textEditorScrollStateChangedEventHandler += value;
1110             }
1111             remove
1112             {
1113                 _textEditorScrollStateChangedEventHandler -= value;
1114                 if (_textEditorScrollStateChangedEventHandler == null && ScrollStateChangedSignal(this).Empty() == false)
1115                 {
1116                     ScrollStateChangedSignal(this).Disconnect(_textEditorScrollStateChangedCallbackDelegate);
1117                 }
1118             }
1119         }
1120
1121         private void OnScrollStateChanged(IntPtr textEditor, ScrollState state)
1122         {
1123             ScrollStateChangedEventArgs e = new ScrollStateChangedEventArgs();
1124
1125             if (textEditor != null)
1126             {
1127                 // Populate all members of "e" (ScrollStateChangedEventArgs) with real data
1128                 e.TextEditor = Registry.GetManagedBaseHandleFromNativePtr(textEditor) as TextEditor;
1129                 e.ScrollState = state;
1130             }
1131
1132             if (_textEditorScrollStateChangedEventHandler != null)
1133             {
1134                 //here we send all data to user event handlers
1135                 _textEditorScrollStateChangedEventHandler(this, e);
1136             }
1137         }
1138
1139         internal new class Property
1140         {
1141             internal static readonly int RENDERING_BACKEND = NDalicPINVOKE.TextEditor_Property_RENDERING_BACKEND_get();
1142             internal static readonly int TEXT = NDalicPINVOKE.TextEditor_Property_TEXT_get();
1143             internal static readonly int TEXT_COLOR = NDalicPINVOKE.TextEditor_Property_TEXT_COLOR_get();
1144             internal static readonly int FONT_FAMILY = NDalicPINVOKE.TextEditor_Property_FONT_FAMILY_get();
1145             internal static readonly int FONT_STYLE = NDalicPINVOKE.TextEditor_Property_FONT_STYLE_get();
1146             internal static readonly int POINT_SIZE = NDalicPINVOKE.TextEditor_Property_POINT_SIZE_get();
1147             internal static readonly int HORIZONTAL_ALIGNMENT = NDalicPINVOKE.TextEditor_Property_HORIZONTAL_ALIGNMENT_get();
1148             internal static readonly int SCROLL_THRESHOLD = NDalicPINVOKE.TextEditor_Property_SCROLL_THRESHOLD_get();
1149             internal static readonly int SCROLL_SPEED = NDalicPINVOKE.TextEditor_Property_SCROLL_SPEED_get();
1150             internal static readonly int PRIMARY_CURSOR_COLOR = NDalicPINVOKE.TextEditor_Property_PRIMARY_CURSOR_COLOR_get();
1151             internal static readonly int SECONDARY_CURSOR_COLOR = NDalicPINVOKE.TextEditor_Property_SECONDARY_CURSOR_COLOR_get();
1152             internal static readonly int ENABLE_CURSOR_BLINK = NDalicPINVOKE.TextEditor_Property_ENABLE_CURSOR_BLINK_get();
1153             internal static readonly int CURSOR_BLINK_INTERVAL = NDalicPINVOKE.TextEditor_Property_CURSOR_BLINK_INTERVAL_get();
1154             internal static readonly int CURSOR_BLINK_DURATION = NDalicPINVOKE.TextEditor_Property_CURSOR_BLINK_DURATION_get();
1155             internal static readonly int CURSOR_WIDTH = NDalicPINVOKE.TextEditor_Property_CURSOR_WIDTH_get();
1156             internal static readonly int GRAB_HANDLE_IMAGE = NDalicPINVOKE.TextEditor_Property_GRAB_HANDLE_IMAGE_get();
1157             internal static readonly int GRAB_HANDLE_PRESSED_IMAGE = NDalicPINVOKE.TextEditor_Property_GRAB_HANDLE_PRESSED_IMAGE_get();
1158             internal static readonly int SELECTION_HANDLE_IMAGE_LEFT = NDalicPINVOKE.TextEditor_Property_SELECTION_HANDLE_IMAGE_LEFT_get();
1159             internal static readonly int SELECTION_HANDLE_IMAGE_RIGHT = NDalicPINVOKE.TextEditor_Property_SELECTION_HANDLE_IMAGE_RIGHT_get();
1160             internal static readonly int SELECTION_HANDLE_PRESSED_IMAGE_LEFT = NDalicPINVOKE.TextEditor_Property_SELECTION_HANDLE_PRESSED_IMAGE_LEFT_get();
1161             internal static readonly int SELECTION_HANDLE_PRESSED_IMAGE_RIGHT = NDalicPINVOKE.TextEditor_Property_SELECTION_HANDLE_PRESSED_IMAGE_RIGHT_get();
1162             internal static readonly int SELECTION_HANDLE_MARKER_IMAGE_LEFT = NDalicPINVOKE.TextEditor_Property_SELECTION_HANDLE_MARKER_IMAGE_LEFT_get();
1163             internal static readonly int SELECTION_HANDLE_MARKER_IMAGE_RIGHT = NDalicPINVOKE.TextEditor_Property_SELECTION_HANDLE_MARKER_IMAGE_RIGHT_get();
1164             internal static readonly int SELECTION_HIGHLIGHT_COLOR = NDalicPINVOKE.TextEditor_Property_SELECTION_HIGHLIGHT_COLOR_get();
1165             internal static readonly int DECORATION_BOUNDING_BOX = NDalicPINVOKE.TextEditor_Property_DECORATION_BOUNDING_BOX_get();
1166             internal static readonly int ENABLE_MARKUP = NDalicPINVOKE.TextEditor_Property_ENABLE_MARKUP_get();
1167             internal static readonly int INPUT_COLOR = NDalicPINVOKE.TextEditor_Property_INPUT_COLOR_get();
1168             internal static readonly int INPUT_FONT_FAMILY = NDalicPINVOKE.TextEditor_Property_INPUT_FONT_FAMILY_get();
1169             internal static readonly int INPUT_FONT_STYLE = NDalicPINVOKE.TextEditor_Property_INPUT_FONT_STYLE_get();
1170             internal static readonly int INPUT_POINT_SIZE = NDalicPINVOKE.TextEditor_Property_INPUT_POINT_SIZE_get();
1171             internal static readonly int LINE_SPACING = NDalicPINVOKE.TextEditor_Property_LINE_SPACING_get();
1172             internal static readonly int INPUT_LINE_SPACING = NDalicPINVOKE.TextEditor_Property_INPUT_LINE_SPACING_get();
1173             internal static readonly int UNDERLINE = NDalicPINVOKE.TextEditor_Property_UNDERLINE_get();
1174             internal static readonly int INPUT_UNDERLINE = NDalicPINVOKE.TextEditor_Property_INPUT_UNDERLINE_get();
1175             internal static readonly int SHADOW = NDalicPINVOKE.TextEditor_Property_SHADOW_get();
1176             internal static readonly int INPUT_SHADOW = NDalicPINVOKE.TextEditor_Property_INPUT_SHADOW_get();
1177             internal static readonly int EMBOSS = NDalicPINVOKE.TextEditor_Property_EMBOSS_get();
1178             internal static readonly int INPUT_EMBOSS = NDalicPINVOKE.TextEditor_Property_INPUT_EMBOSS_get();
1179             internal static readonly int OUTLINE = NDalicPINVOKE.TextEditor_Property_OUTLINE_get();
1180             internal static readonly int INPUT_OUTLINE = NDalicPINVOKE.TextEditor_Property_INPUT_OUTLINE_get();
1181             internal static readonly int SMOOTH_SCROLL = NDalicManualPINVOKE.TextEditor_Property_SMOOTH_SCROLL_get();
1182             internal static readonly int SMOOTH_SCROLL_DURATION = NDalicManualPINVOKE.TextEditor_Property_SMOOTH_SCROLL_DURATION_get();
1183             internal static readonly int ENABLE_SCROLL_BAR = NDalicManualPINVOKE.TextEditor_Property_ENABLE_SCROLL_BAR_get();
1184             internal static readonly int SCROLL_BAR_SHOW_DURATION = NDalicManualPINVOKE.TextEditor_Property_SCROLL_BAR_SHOW_DURATION_get();
1185             internal static readonly int SCROLL_BAR_FADE_DURATION = NDalicManualPINVOKE.TextEditor_Property_SCROLL_BAR_FADE_DURATION_get();
1186             internal static readonly int PIXEL_SIZE = NDalicManualPINVOKE.TextEditor_Property_PIXEL_SIZE_get();
1187             internal static readonly int LINE_COUNT = NDalicManualPINVOKE.TextEditor_Property_LINE_COUNT_get();
1188             internal static readonly int ENABLE_SELECTION = NDalicManualPINVOKE.TextEditor_Property_ENABLE_SELECTION_get();
1189             internal static readonly int PLACEHOLDER = NDalicManualPINVOKE.TextEditor_Property_PLACEHOLDER_get();
1190             internal static readonly int LINE_WRAP_MODE = NDalicManualPINVOKE.TextEditor_Property_LINE_WRAP_MODE_get();
1191             internal static readonly int PLACEHOLDER_TEXT = NDalicManualPINVOKE.TextEditor_Property_PLACEHOLDER_TEXT_get();
1192             internal static readonly int PLACEHOLDER_TEXT_COLOR = NDalicManualPINVOKE.TextEditor_Property_PLACEHOLDER_TEXT_COLOR_get();
1193             internal static readonly int ENABLE_SHIFT_SELECTION = NDalicManualPINVOKE.TextEditor_Property_ENABLE_SHIFT_SELECTION_get();
1194         }
1195
1196         internal class InputStyle
1197         {
1198             internal enum Mask
1199             {
1200                 None = 0x0000,
1201                 Color = 0x0001,
1202                 FontFamily = 0x0002,
1203                 PointSize = 0x0004,
1204                 FontStyle = 0x0008,
1205                 LineSpacing = 0x0010,
1206                 Underline = 0x0020,
1207                 Shadow = 0x0040,
1208                 Emboss = 0x0080,
1209                 Outline = 0x0100
1210             }
1211         }
1212
1213         /// <summary>
1214         /// Creates the TextEditor control.
1215         /// </summary>
1216         /// <since_tizen> 3 </since_tizen>
1217         public TextEditor() : this(NDalicPINVOKE.TextEditor_New(), true)
1218         {
1219             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1220             this.TextChanged += (obj, e) =>
1221             {
1222                 this.Text = this.Text;
1223             };
1224         }
1225
1226         internal TextEditor(TextEditor handle) : this(NDalicPINVOKE.new_TextEditor__SWIG_1(TextEditor.getCPtr(handle)), true)
1227         {
1228             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1229         }
1230
1231         /// <summary>
1232         /// Get the InputMethodContext instance.
1233         /// </summary>
1234         /// <returns>The InputMethodContext instance.</returns>
1235         public InputMethodContext GetInputMethodContext() {
1236             InputMethodContext ret = new InputMethodContext(NDalicPINVOKE.TextEditor_GetInputMethodContext(swigCPtr), true);
1237             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1238             return ret;
1239         }
1240
1241         internal TextEditorSignal TextChangedSignal()
1242         {
1243             TextEditorSignal ret = new TextEditorSignal(NDalicPINVOKE.TextEditor_TextChangedSignal(swigCPtr), false);
1244             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1245             return ret;
1246         }
1247
1248         internal ScrollStateChangedSignal ScrollStateChangedSignal(TextEditor textEditor)
1249         {
1250             ScrollStateChangedSignal ret = new ScrollStateChangedSignal(NDalicManualPINVOKE.TextEditor_ScrollStateChangedSignal(TextEditor.getCPtr(textEditor)), false);
1251             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1252             return ret;
1253         }
1254
1255         internal SWIGTYPE_p_Dali__SignalT_void_fDali__Toolkit__TextEditor_Dali__Toolkit__TextEditor__InputStyle__MaskF_t InputStyleChangedSignal()
1256         {
1257             SWIGTYPE_p_Dali__SignalT_void_fDali__Toolkit__TextEditor_Dali__Toolkit__TextEditor__InputStyle__MaskF_t ret = new SWIGTYPE_p_Dali__SignalT_void_fDali__Toolkit__TextEditor_Dali__Toolkit__TextEditor__InputStyle__MaskF_t(NDalicPINVOKE.TextEditor_InputStyleChangedSignal(swigCPtr), false);
1258             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1259             return ret;
1260         }
1261
1262         /// <summary>
1263         /// The TranslatableText property.<br />
1264         /// The text can set the SID value.<br />
1265         /// </summary>
1266         /// <exception cref='ArgumentNullException'>
1267         /// ResourceManager about multilingual is null.
1268         /// </exception>
1269         /// <since_tizen> 4 </since_tizen>
1270         public string TranslatableText
1271         {
1272             get
1273             {
1274                 return textEditorTextSid;
1275             }
1276             set
1277             {
1278                 if (NUIApplication.MultilingualResourceManager == null)
1279                 {
1280                     throw new ArgumentNullException("ResourceManager about multilingual is null");
1281                 }
1282                 textEditorTextSid = value;
1283                 Text = SetTranslatable(textEditorTextSid);
1284                 NotifyPropertyChanged();
1285             }
1286         }
1287         /// <summary>
1288         /// The TranslatablePlaceholderText property.<br />
1289         /// The text can set the SID value.<br />
1290         /// </summary>
1291         /// <exception cref='ArgumentNullException'>
1292         /// ResourceManager about multilingual is null.
1293         /// </exception>
1294         /// <since_tizen> 4 </since_tizen>
1295         public string TranslatablePlaceholderText
1296         {
1297             get
1298             {
1299                 return textEditorPlaceHolderTextSid;
1300             }
1301             set
1302             {
1303                 if (NUIApplication.MultilingualResourceManager == null)
1304                 {
1305                     throw new ArgumentNullException("ResourceManager about multilingual is null");
1306                 }
1307                 textEditorPlaceHolderTextSid = value;
1308                 PlaceholderText = SetTranslatable(textEditorPlaceHolderTextSid);
1309                 NotifyPropertyChanged();
1310             }
1311         }
1312         private string SetTranslatable(string textEditorSid)
1313         {
1314             string translatableText = null;
1315             translatableText = NUIApplication.MultilingualResourceManager?.GetString(textEditorSid, new CultureInfo(SystemSettings.LocaleLanguage.Replace("_", "-")));
1316             if (translatableText != null)
1317             {
1318                 if (systemlangTextFlag == false)
1319                 {
1320                     SystemSettings.LocaleLanguageChanged += new WeakEventHandler<LocaleLanguageChangedEventArgs>(SystemSettings_LocaleLanguageChanged).Handler;
1321                     systemlangTextFlag = true;
1322                 }
1323                 return translatableText;
1324             }
1325             else
1326             {
1327                 translatableText = "";
1328                 return translatableText;
1329             }
1330         }
1331         private void SystemSettings_LocaleLanguageChanged(object sender, LocaleLanguageChangedEventArgs e)
1332         {
1333             if (textEditorTextSid != null)
1334             {
1335                 Text = NUIApplication.MultilingualResourceManager?.GetString(textEditorTextSid, new CultureInfo(e.Value.Replace("_", "-")));
1336             }
1337             if (textEditorPlaceHolderTextSid != null)
1338             {
1339                 PlaceholderText = NUIApplication.MultilingualResourceManager?.GetString(textEditorPlaceHolderTextSid, new CultureInfo(e.Value.Replace("_", "-")));
1340             }
1341         }
1342         /// <summary>
1343         /// The Text property.
1344         /// </summary>
1345         /// <since_tizen> 3 </since_tizen>
1346         public string Text
1347         {
1348             get
1349             {
1350                 return (string)GetValue(TextProperty);
1351             }
1352             set
1353             {
1354                 SetValueAndForceSendChangeSignal(TextProperty, value);
1355                 NotifyPropertyChanged();
1356             }
1357         }
1358
1359         /// <summary>
1360         /// The TextColor property.
1361         /// </summary>
1362         /// <since_tizen> 3 </since_tizen>
1363         public Vector4 TextColor
1364         {
1365             get
1366             {
1367                 return (Vector4)GetValue(TextColorProperty);
1368             }
1369             set
1370             {
1371                 SetValue(TextColorProperty, value);
1372                 NotifyPropertyChanged();
1373             }
1374         }
1375
1376         /// <summary>
1377         /// The FontFamily property.
1378         /// </summary>
1379         /// <since_tizen> 3 </since_tizen>
1380         public string FontFamily
1381         {
1382             get
1383             {
1384                 return (string)GetValue(FontFamilyProperty);
1385             }
1386             set
1387             {
1388                 SetValue(FontFamilyProperty, value);
1389                 NotifyPropertyChanged();
1390             }
1391         }
1392
1393         /// <summary>
1394         /// The FontStyle property.
1395         /// </summary>
1396         /// <since_tizen> 3 </since_tizen>
1397         public PropertyMap FontStyle
1398         {
1399             get
1400             {
1401                 return (PropertyMap)GetValue(FontStyleProperty);
1402             }
1403             set
1404             {
1405                 SetValue(FontStyleProperty, value);
1406                 NotifyPropertyChanged();
1407             }
1408         }
1409
1410         /// <summary>
1411         /// The PointSize property.
1412         /// </summary>
1413         /// <since_tizen> 3 </since_tizen>
1414         public float PointSize
1415         {
1416             get
1417             {
1418                 return (float)GetValue(PointSizeProperty);
1419             }
1420             set
1421             {
1422                 SetValue(PointSizeProperty, value);
1423                 NotifyPropertyChanged();
1424             }
1425         }
1426
1427         /// <summary>
1428         /// The HorizontalAlignment property.
1429         /// </summary>
1430         /// <since_tizen> 3 </since_tizen>
1431         public HorizontalAlignment HorizontalAlignment
1432         {
1433             get
1434             {
1435                 return (HorizontalAlignment)GetValue(HorizontalAlignmentProperty);
1436             }
1437             set
1438             {
1439                 SetValue(HorizontalAlignmentProperty, value);
1440                 NotifyPropertyChanged();
1441             }
1442         }
1443
1444         /// <summary>
1445         /// The ScrollThreshold property.
1446         /// </summary>
1447         /// <since_tizen> 3 </since_tizen>
1448         public float ScrollThreshold
1449         {
1450             get
1451             {
1452                 return (float)GetValue(ScrollThresholdProperty);
1453             }
1454             set
1455             {
1456                 SetValue(ScrollThresholdProperty, value);
1457                 NotifyPropertyChanged();
1458             }
1459         }
1460
1461         /// <summary>
1462         /// The ScrollSpeed property.
1463         /// </summary>
1464         /// <since_tizen> 3 </since_tizen>
1465         public float ScrollSpeed
1466         {
1467             get
1468             {
1469                 return (float)GetValue(ScrollSpeedProperty);
1470             }
1471             set
1472             {
1473                 SetValue(ScrollSpeedProperty, value);
1474                 NotifyPropertyChanged();
1475             }
1476         }
1477
1478         /// <summary>
1479         /// The PrimaryCursorColor property.
1480         /// </summary>
1481         /// <since_tizen> 3 </since_tizen>
1482         public Vector4 PrimaryCursorColor
1483         {
1484             get
1485             {
1486                 return (Vector4)GetValue(PrimaryCursorColorProperty);
1487             }
1488             set
1489             {
1490                 SetValue(PrimaryCursorColorProperty, value);
1491                 NotifyPropertyChanged();
1492             }
1493         }
1494
1495         /// <summary>
1496         /// The SecondaryCursorColor property.
1497         /// </summary>
1498         /// <since_tizen> 3 </since_tizen>
1499         public Vector4 SecondaryCursorColor
1500         {
1501             get
1502             {
1503                 return (Vector4)GetValue(SecondaryCursorColorProperty);
1504             }
1505             set
1506             {
1507                 SetValue(SecondaryCursorColorProperty, value);
1508                 NotifyPropertyChanged();
1509             }
1510         }
1511
1512         /// <summary>
1513         /// The EnableCursorBlink property.
1514         /// </summary>
1515         /// <since_tizen> 3 </since_tizen>
1516         public bool EnableCursorBlink
1517         {
1518             get
1519             {
1520                 return (bool)GetValue(EnableCursorBlinkProperty);
1521             }
1522             set
1523             {
1524                 SetValue(EnableCursorBlinkProperty, value);
1525                 NotifyPropertyChanged();
1526             }
1527         }
1528
1529         /// <summary>
1530         /// The CursorBlinkInterval property.
1531         /// </summary>
1532         /// <since_tizen> 3 </since_tizen>
1533         public float CursorBlinkInterval
1534         {
1535             get
1536             {
1537                 return (float)GetValue(CursorBlinkIntervalProperty);
1538             }
1539             set
1540             {
1541                 SetValue(CursorBlinkIntervalProperty, value);
1542                 NotifyPropertyChanged();
1543             }
1544         }
1545
1546         /// <summary>
1547         /// The CursorBlinkDuration property.
1548         /// </summary>
1549         /// <since_tizen> 3 </since_tizen>
1550         public float CursorBlinkDuration
1551         {
1552             get
1553             {
1554                 return (float)GetValue(CursorBlinkDurationProperty);
1555             }
1556             set
1557             {
1558                 SetValue(CursorBlinkDurationProperty, value);
1559                 NotifyPropertyChanged();
1560             }
1561         }
1562
1563         /// <summary>
1564         /// The CursorWidth property.
1565         /// </summary>
1566         /// <since_tizen> 3 </since_tizen>
1567         public int CursorWidth
1568         {
1569             get
1570             {
1571                 return (int)GetValue(CursorWidthProperty);
1572             }
1573             set
1574             {
1575                 SetValue(CursorWidthProperty, value);
1576                 NotifyPropertyChanged();
1577             }
1578         }
1579
1580         /// <summary>
1581         /// The GrabHandleImage property.
1582         /// </summary>
1583         /// <since_tizen> 3 </since_tizen>
1584         public string GrabHandleImage
1585         {
1586             get
1587             {
1588                 return (string)GetValue(GrabHandleImageProperty);
1589             }
1590             set
1591             {
1592                 SetValue(GrabHandleImageProperty, value);
1593                 NotifyPropertyChanged();
1594             }
1595         }
1596
1597         /// <summary>
1598         /// The GrabHandlePressedImage property.
1599         /// </summary>
1600         /// <since_tizen> 3 </since_tizen>
1601         public string GrabHandlePressedImage
1602         {
1603             get
1604             {
1605                 return (string)GetValue(GrabHandlePressedImageProperty);
1606             }
1607             set
1608             {
1609                 SetValue(GrabHandlePressedImageProperty, value);
1610                 NotifyPropertyChanged();
1611             }
1612         }
1613
1614         /// <summary>
1615         /// The SelectionHandleImageLeft property.
1616         /// </summary>
1617         /// <since_tizen> 3 </since_tizen>
1618         public PropertyMap SelectionHandleImageLeft
1619         {
1620             get
1621             {
1622                 return (PropertyMap)GetValue(SelectionHandleImageLeftProperty);
1623             }
1624             set
1625             {
1626                 SetValue(SelectionHandleImageLeftProperty, value);
1627                 NotifyPropertyChanged();
1628             }
1629         }
1630
1631         /// <summary>
1632         /// The SelectionHandleImageRight property.
1633         /// </summary>
1634         /// <since_tizen> 3 </since_tizen>
1635         public PropertyMap SelectionHandleImageRight
1636         {
1637             get
1638             {
1639                 return (PropertyMap)GetValue(SelectionHandleImageRightProperty);
1640             }
1641             set
1642             {
1643                 SetValue(SelectionHandleImageRightProperty, value);
1644                 NotifyPropertyChanged();
1645             }
1646         }
1647
1648         /// <summary>
1649         /// The SelectionHandlePressedImageLeft property.
1650         /// </summary>
1651         /// <since_tizen> 3 </since_tizen>
1652         public PropertyMap SelectionHandlePressedImageLeft
1653         {
1654             get
1655             {
1656                 return (PropertyMap)GetValue(SelectionHandlePressedImageLeftProperty);
1657             }
1658             set
1659             {
1660                 SetValue(SelectionHandlePressedImageLeftProperty, value);
1661                 NotifyPropertyChanged();
1662             }
1663         }
1664
1665         /// <summary>
1666         /// The SelectionHandlePressedImageRight property.
1667         /// </summary>
1668         /// <since_tizen> 3 </since_tizen>
1669         public PropertyMap SelectionHandlePressedImageRight
1670         {
1671             get
1672             {
1673                 return (PropertyMap)GetValue(SelectionHandlePressedImageRightProperty);
1674             }
1675             set
1676             {
1677                 SetValue(SelectionHandlePressedImageRightProperty, value);
1678                 NotifyPropertyChanged();
1679             }
1680         }
1681
1682         /// <summary>
1683         /// The SelectionHandleMarkerImageLeft property.
1684         /// </summary>
1685         /// <since_tizen> 3 </since_tizen>
1686         public PropertyMap SelectionHandleMarkerImageLeft
1687         {
1688             get
1689             {
1690                 return (PropertyMap)GetValue(SelectionHandleMarkerImageLeftProperty);
1691             }
1692             set
1693             {
1694                 SetValue(SelectionHandleMarkerImageLeftProperty, value);
1695                 NotifyPropertyChanged();
1696             }
1697         }
1698
1699         /// <summary>
1700         /// The SelectionHandleMarkerImageRight property.
1701         /// </summary>
1702         /// <since_tizen> 3 </since_tizen>
1703         public PropertyMap SelectionHandleMarkerImageRight
1704         {
1705             get
1706             {
1707                 return (PropertyMap)GetValue(SelectionHandleMarkerImageRightProperty);
1708             }
1709             set
1710             {
1711                 SetValue(SelectionHandleMarkerImageRightProperty, value);
1712                 NotifyPropertyChanged();
1713             }
1714         }
1715
1716         /// <summary>
1717         /// The SelectionHighlightColor property.
1718         /// </summary>
1719         /// <since_tizen> 3 </since_tizen>
1720         public Vector4 SelectionHighlightColor
1721         {
1722             get
1723             {
1724                 return (Vector4)GetValue(SelectionHighlightColorProperty);
1725             }
1726             set
1727             {
1728                 SetValue(SelectionHighlightColorProperty, value);
1729                 NotifyPropertyChanged();
1730             }
1731         }
1732
1733         /// <summary>
1734         /// The DecorationBoundingBox property.
1735         /// </summary>
1736         /// <since_tizen> 3 </since_tizen>
1737         public Rectangle DecorationBoundingBox
1738         {
1739             get
1740             {
1741                 return (Rectangle)GetValue(DecorationBoundingBoxProperty);
1742             }
1743             set
1744             {
1745                 SetValue(DecorationBoundingBoxProperty, value);
1746                 NotifyPropertyChanged();
1747             }
1748         }
1749
1750         /// <summary>
1751         /// The EnableMarkup property.
1752         /// </summary>
1753         /// <since_tizen> 3 </since_tizen>
1754         public bool EnableMarkup
1755         {
1756             get
1757             {
1758                 return (bool)GetValue(EnableMarkupProperty);
1759             }
1760             set
1761             {
1762                 SetValue(EnableMarkupProperty, value);
1763                 NotifyPropertyChanged();
1764             }
1765         }
1766
1767         /// <summary>
1768         /// The InputColor property.
1769         /// </summary>
1770         /// <since_tizen> 3 </since_tizen>
1771         public Vector4 InputColor
1772         {
1773             get
1774             {
1775                 return (Vector4)GetValue(InputColorProperty);
1776             }
1777             set
1778             {
1779                 SetValue(InputColorProperty, value);
1780                 NotifyPropertyChanged();
1781             }
1782         }
1783
1784         /// <summary>
1785         /// The InputFontFamily property.
1786         /// </summary>
1787         /// <since_tizen> 3 </since_tizen>
1788         public string InputFontFamily
1789         {
1790             get
1791             {
1792                 return (string)GetValue(InputFontFamilyProperty);
1793             }
1794             set
1795             {
1796                 SetValue(InputFontFamilyProperty, value);
1797                 NotifyPropertyChanged();
1798             }
1799         }
1800
1801         /// <summary>
1802         /// The InputFontStyle property.
1803         /// </summary>
1804         /// <since_tizen> 3 </since_tizen>
1805         public PropertyMap InputFontStyle
1806         {
1807             get
1808             {
1809                 return (PropertyMap)GetValue(InputFontStyleProperty);
1810             }
1811             set
1812             {
1813                 SetValue(InputFontStyleProperty, value);
1814                 NotifyPropertyChanged();
1815             }
1816         }
1817
1818         /// <summary>
1819         /// The InputPointSize property.
1820         /// </summary>
1821         /// <since_tizen> 3 </since_tizen>
1822         public float InputPointSize
1823         {
1824             get
1825             {
1826                 return (float)GetValue(InputPointSizeProperty);
1827             }
1828             set
1829             {
1830                 SetValue(InputPointSizeProperty, value);
1831                 NotifyPropertyChanged();
1832             }
1833         }
1834
1835         /// <summary>
1836         /// The LineSpacing property.
1837         /// </summary>
1838         /// <since_tizen> 3 </since_tizen>
1839         public float LineSpacing
1840         {
1841             get
1842             {
1843                 return (float)GetValue(LineSpacingProperty);
1844             }
1845             set
1846             {
1847                 SetValue(LineSpacingProperty, value);
1848                 NotifyPropertyChanged();
1849             }
1850         }
1851
1852         /// <summary>
1853         /// The InputLineSpacing property.
1854         /// </summary>
1855         /// <since_tizen> 3 </since_tizen>
1856         public float InputLineSpacing
1857         {
1858             get
1859             {
1860                 return (float)GetValue(InputLineSpacingProperty);
1861             }
1862             set
1863             {
1864                 SetValue(InputLineSpacingProperty, value);
1865                 NotifyPropertyChanged();
1866             }
1867         }
1868
1869         /// <summary>
1870         /// The Underline property.
1871         /// </summary>
1872         /// <since_tizen> 3 </since_tizen>
1873         public PropertyMap Underline
1874         {
1875             get
1876             {
1877                 return (PropertyMap)GetValue(UnderlineProperty);
1878             }
1879             set
1880             {
1881                 SetValue(UnderlineProperty, value);
1882                 NotifyPropertyChanged();
1883             }
1884         }
1885
1886         /// <summary>
1887         /// The InputUnderline property.
1888         /// </summary>
1889         /// <since_tizen> 3 </since_tizen>
1890         public string InputUnderline
1891         {
1892             get
1893             {
1894                 return (string)GetValue(InputUnderlineProperty);
1895             }
1896             set
1897             {
1898                 SetValue(InputUnderlineProperty, value);
1899                 NotifyPropertyChanged();
1900             }
1901         }
1902
1903         /// <summary>
1904         /// The Shadow property.
1905         /// </summary>
1906         /// <since_tizen> 3 </since_tizen>
1907         public PropertyMap Shadow
1908         {
1909             get
1910             {
1911                 return (PropertyMap)GetValue(ShadowProperty);
1912             }
1913             set
1914             {
1915                 SetValue(ShadowProperty, value);
1916                 NotifyPropertyChanged();
1917             }
1918         }
1919
1920         /// <summary>
1921         /// The InputShadow property.
1922         /// </summary>
1923         /// <since_tizen> 3 </since_tizen>
1924         public string InputShadow
1925         {
1926             get
1927             {
1928                 return (string)GetValue(InputShadowProperty);
1929             }
1930             set
1931             {
1932                 SetValue(InputShadowProperty, value);
1933                 NotifyPropertyChanged();
1934             }
1935         }
1936
1937         /// <summary>
1938         /// The Emboss property.
1939         /// </summary>
1940         /// <since_tizen> 3 </since_tizen>
1941         public string Emboss
1942         {
1943             get
1944             {
1945                 return (string)GetValue(EmbossProperty);
1946             }
1947             set
1948             {
1949                 SetValue(EmbossProperty, value);
1950                 NotifyPropertyChanged();
1951             }
1952         }
1953
1954         /// <summary>
1955         /// The InputEmboss property.
1956         /// </summary>
1957         /// <since_tizen> 3 </since_tizen>
1958         public string InputEmboss
1959         {
1960             get
1961             {
1962                 return (string)GetValue(InputEmbossProperty);
1963             }
1964             set
1965             {
1966                 SetValue(InputEmbossProperty, value);
1967                 NotifyPropertyChanged();
1968             }
1969         }
1970
1971         /// <summary>
1972         /// The Outline property.
1973         /// </summary>
1974         /// <since_tizen> 3 </since_tizen>
1975         public PropertyMap Outline
1976         {
1977             get
1978             {
1979                 return (PropertyMap)GetValue(OutlineProperty);
1980             }
1981             set
1982             {
1983                 SetValue(OutlineProperty, value);
1984                 NotifyPropertyChanged();
1985             }
1986         }
1987
1988         /// <summary>
1989         /// The InputOutline property.
1990         /// </summary>
1991         /// <since_tizen> 3 </since_tizen>
1992         public string InputOutline
1993         {
1994             get
1995             {
1996                 return (string)GetValue(InputOutlineProperty);
1997             }
1998             set
1999             {
2000                 SetValue(InputOutlineProperty, value);
2001                 NotifyPropertyChanged();
2002             }
2003         }
2004
2005         /// <summary>
2006         /// The SmoothScroll property.
2007         /// </summary>
2008         /// <since_tizen> 3 </since_tizen>
2009         public bool SmoothScroll
2010         {
2011             get
2012             {
2013                 return (bool)GetValue(SmoothScrollProperty);
2014             }
2015             set
2016             {
2017                 SetValue(SmoothScrollProperty, value);
2018                 NotifyPropertyChanged();
2019             }
2020         }
2021
2022         /// <summary>
2023         /// The SmoothScrollDuration property.
2024         /// </summary>
2025         /// <since_tizen> 3 </since_tizen>
2026         public float SmoothScrollDuration
2027         {
2028             get
2029             {
2030                 return (float)GetValue(SmoothScrollDurationProperty);
2031             }
2032             set
2033             {
2034                 SetValue(SmoothScrollDurationProperty, value);
2035                 NotifyPropertyChanged();
2036             }
2037         }
2038
2039         /// <summary>
2040         /// The EnableScrollBar property.
2041         /// </summary>
2042         /// <since_tizen> 3 </since_tizen>
2043         public bool EnableScrollBar
2044         {
2045             get
2046             {
2047                 return (bool)GetValue(EnableScrollBarProperty);
2048             }
2049             set
2050             {
2051                 SetValue(EnableScrollBarProperty, value);
2052                 NotifyPropertyChanged();
2053             }
2054         }
2055
2056         /// <summary>
2057         /// The ScrollBarShowDuration property.
2058         /// </summary>
2059         /// <since_tizen> 3 </since_tizen>
2060         public float ScrollBarShowDuration
2061         {
2062             get
2063             {
2064                 return (float)GetValue(ScrollBarShowDurationProperty);
2065             }
2066             set
2067             {
2068                 SetValue(ScrollBarShowDurationProperty, value);
2069                 NotifyPropertyChanged();
2070             }
2071         }
2072
2073         /// <summary>
2074         /// The ScrollBarFadeDuration property.
2075         /// </summary>
2076         /// <since_tizen> 3 </since_tizen>
2077         public float ScrollBarFadeDuration
2078         {
2079             get
2080             {
2081                 return (float)GetValue(ScrollBarFadeDurationProperty);
2082             }
2083             set
2084             {
2085                 SetValue(ScrollBarFadeDurationProperty, value);
2086                 NotifyPropertyChanged();
2087             }
2088         }
2089
2090         /// <summary>
2091         /// The PixelSize property.
2092         /// </summary>
2093         /// <since_tizen> 3 </since_tizen>
2094         public float PixelSize
2095         {
2096             get
2097             {
2098                 return (float)GetValue(PixelSizeProperty);
2099             }
2100             set
2101             {
2102                 SetValue(PixelSizeProperty, value);
2103                 NotifyPropertyChanged();
2104             }
2105         }
2106
2107         /// <summary>
2108         /// The line count of the text.
2109         /// </summary>
2110         /// <since_tizen> 3 </since_tizen>
2111         public int LineCount
2112         {
2113             get
2114             {
2115                 int temp = 0;
2116                 GetProperty(TextEditor.Property.LINE_COUNT).Get(out temp);
2117                 return temp;
2118             }
2119         }
2120
2121         /// <summary>
2122         /// The text to display when the TextEditor is empty and inactive.
2123         /// </summary>
2124         /// <since_tizen> 3 </since_tizen>
2125         public string PlaceholderText
2126         {
2127             get
2128             {
2129                 return (string)GetValue(PlaceholderTextProperty);
2130             }
2131             set
2132             {
2133                 SetValue(PlaceholderTextProperty, value);
2134                 NotifyPropertyChanged();
2135             }
2136         }
2137
2138         /// <summary>
2139         /// The Placeholder text color.
2140         /// </summary>
2141         /// <since_tizen> 3 </since_tizen>
2142         public Color PlaceholderTextColor
2143         {
2144             get
2145             {
2146                 return (Color)GetValue(PlaceholderTextColorProperty);
2147             }
2148             set
2149             {
2150                 SetValue(PlaceholderTextColorProperty, value);
2151                 NotifyPropertyChanged();
2152             }
2153         }
2154
2155         /// <summary>
2156         /// The EnableSelection property.
2157         /// </summary>
2158         /// <since_tizen> 3 </since_tizen>
2159         public bool EnableSelection
2160         {
2161             get
2162             {
2163                 return (bool)GetValue(EnableSelectionProperty);
2164             }
2165             set
2166             {
2167                 SetValue(EnableSelectionProperty, value);
2168                 NotifyPropertyChanged();
2169             }
2170         }
2171
2172         /// <summary>
2173         /// The Placeholder property.
2174         /// Gets or sets the placeholder: text, color, font family, font style, point size, and pixel size.
2175         /// </summary>
2176         /// <example>
2177         /// The following example demonstrates how to set the placeholder property.
2178         /// <code>
2179         /// PropertyMap propertyMap = new PropertyMap();
2180         /// propertyMap.Add("text", new PropertyValue("Setting Placeholder Text"));
2181         /// propertyMap.Add("textFocused", new PropertyValue("Setting Placeholder Text Focused"));
2182         /// propertyMap.Add("color", new PropertyValue(Color.Red));
2183         /// propertyMap.Add("fontFamily", new PropertyValue("Arial"));
2184         /// propertyMap.Add("pointSize", new PropertyValue(12.0f));
2185         ///
2186         /// PropertyMap fontStyleMap = new PropertyMap();
2187         /// fontStyleMap.Add("weight", new PropertyValue("bold"));
2188         /// fontStyleMap.Add("width", new PropertyValue("condensed"));
2189         /// fontStyleMap.Add("slant", new PropertyValue("italic"));
2190         /// propertyMap.Add("fontStyle", new PropertyValue(fontStyleMap));
2191         ///
2192         /// TextEditor editor = new TextEditor();
2193         /// editor.Placeholder = propertyMap;
2194         /// </code>
2195         /// </example>
2196         /// <since_tizen> 3 </since_tizen>
2197         public Tizen.NUI.PropertyMap Placeholder
2198         {
2199             get
2200             {
2201                 return (PropertyMap)GetValue(PlaceholderProperty);
2202             }
2203             set
2204             {
2205                 SetValue(PlaceholderProperty, value);
2206                 NotifyPropertyChanged();
2207             }
2208         }
2209
2210         /// <summary>
2211         /// The LineWrapMode property.<br />
2212         /// The line wrap mode when the text lines over the layout width.<br />
2213         /// </summary>
2214         /// <since_tizen> 4 </since_tizen>
2215         public LineWrapMode LineWrapMode
2216         {
2217             get
2218             {
2219                 return (LineWrapMode)GetValue(LineWrapModeProperty);
2220             }
2221             set
2222             {
2223                 SetValue(LineWrapModeProperty, value);
2224                 NotifyPropertyChanged();
2225             }
2226         }
2227
2228         /// <summary>
2229         /// Enables Text selection using Shift key.
2230         /// </summary>
2231         /// <since_tizen> 5 </since_tizen>
2232         /// This will be released at Tizen.NET API Level 5, so currently this would be used as inhouse API.
2233         [EditorBrowsable(EditorBrowsableState.Never)]
2234         public bool EnableShiftSelection
2235         {
2236             get
2237             {
2238                 return (bool)GetValue(EnableShiftSelectionProperty);
2239             }
2240             set
2241             {
2242                 SetValue(EnableShiftSelectionProperty, value);
2243                 NotifyPropertyChanged();
2244             }
2245         }
2246
2247
2248     }
2249 }