[NUI] Refine codes to reduce code duplicaton (#1119)
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / BaseComponents / ViewBindableProperty.cs
1 /*
2  * Copyright(c) 2019 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 using System.ComponentModel;
19 using Tizen.NUI.Binding;
20
21 namespace Tizen.NUI.BaseComponents
22 {
23     /// <summary>
24     /// View is the base class for all views.
25     /// </summary>
26     /// <since_tizen> 3 </since_tizen>
27     public partial class View
28     {
29         /// <summary>
30         /// StyleNameProperty
31         /// </summary>
32         [EditorBrowsable(EditorBrowsableState.Never)]
33         public static readonly BindableProperty StyleNameProperty = BindableProperty.Create("StyleName", typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
34         {
35             var view = (View)bindable;
36             if (newValue != null)
37             {
38                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.STYLE_NAME, new Tizen.NUI.PropertyValue((string)newValue));
39             }
40         },
41         defaultValueCreator: (bindable) =>
42         {
43             var view = (View)bindable;
44             string temp;
45             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.STYLE_NAME).Get(out temp);
46             return temp;
47         });
48
49         /// <summary>
50         /// BackgroundColorProperty
51         /// </summary>
52         [EditorBrowsable(EditorBrowsableState.Never)]
53         public static readonly BindableProperty BackgroundColorProperty = BindableProperty.Create("BackgroundColor", typeof(Color), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
54         {
55             var view = (View)bindable;
56             if (newValue != null)
57             {
58                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.BACKGROUND, new Tizen.NUI.PropertyValue((Color)newValue));
59             }
60         },
61         defaultValueCreator: (bindable) =>
62         {
63             var view = (View)bindable;
64             Color backgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f);
65
66             Tizen.NUI.PropertyMap background = view.Background;
67             int visualType = 0;
68             background.Find(Visual.Property.Type)?.Get(out visualType);
69             if (visualType == (int)Visual.Type.Color)
70             {
71                 background.Find(ColorVisualProperty.MixColor)?.Get(backgroundColor);
72             }
73
74             return backgroundColor;
75         });
76
77         /// <summary>
78         /// BackgroundImageProperty
79         /// </summary>
80         [EditorBrowsable(EditorBrowsableState.Never)]
81         public static readonly BindableProperty BackgroundImageProperty = BindableProperty.Create("BackgroundImage", typeof(string), typeof(View), default(string), propertyChanged: (bindable, oldValue, newValue) =>
82         {
83             var view = (View)bindable;
84             if (newValue != null)
85             {
86                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.BACKGROUND, new Tizen.NUI.PropertyValue((string)newValue));
87                 view.BackgroundImageSynchronosLoading = view._backgroundImageSynchronosLoading;
88             }
89         },
90         defaultValueCreator: (bindable) =>
91         {
92             var view = (View)bindable;
93             string backgroundImage = "";
94
95             Tizen.NUI.PropertyMap background = view.Background;
96             int visualType = 0;
97             background.Find(Visual.Property.Type)?.Get(out visualType);
98             if (visualType == (int)Visual.Type.Image)
99             {
100                 background.Find(ImageVisualProperty.URL)?.Get(out backgroundImage);
101             }
102
103             return backgroundImage;
104         });
105
106         /// <summary>
107         /// BackgroundProperty
108         /// </summary>
109         [EditorBrowsable(EditorBrowsableState.Never)]
110         public static readonly BindableProperty BackgroundProperty = BindableProperty.Create("Background", typeof(PropertyMap), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
111         {
112             var view = (View)bindable;
113             if (newValue != null)
114             {
115                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.BACKGROUND, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
116             }
117         },
118         defaultValueCreator: (bindable) =>
119         {
120             var view = (View)bindable;
121             Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
122             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.BACKGROUND).Get(temp);
123             return temp;
124         });
125
126         /// <summary>
127         /// StateProperty
128         /// </summary>
129         [EditorBrowsable(EditorBrowsableState.Never)]
130         public static readonly BindableProperty StateProperty = BindableProperty.Create("State", typeof(States), typeof(View), States.Normal, propertyChanged: (bindable, oldValue, newValue) =>
131         {
132             var view = (View)bindable;
133             if (newValue != null)
134             {
135                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.STATE, new Tizen.NUI.PropertyValue((int)newValue));
136             }
137         },
138         defaultValueCreator: (bindable) =>
139         {
140             var view = (View)bindable;
141             int temp = 0;
142             if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.STATE).Get(out temp) == false)
143             {
144                 NUILog.Error("State get error!");
145             }
146             switch (temp)
147             {
148                 case 0: return States.Normal;
149                 case 1: return States.Focused;
150                 case 2: return States.Disabled;
151                 default: return States.Normal;
152             }
153         });
154
155         /// <summary>
156         /// SubStateProperty
157         /// </summary>
158         [EditorBrowsable(EditorBrowsableState.Never)]
159         public static readonly BindableProperty SubStateProperty = BindableProperty.Create("SubState", typeof(States), typeof(View), States.Normal, propertyChanged: (bindable, oldValue, newValue) =>
160         {
161             var view = (View)bindable;
162             string valueToString = "";
163             if (newValue != null)
164             {
165                 valueToString = ((States)newValue).GetDescription<States>();
166                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SUB_STATE, new Tizen.NUI.PropertyValue(valueToString));
167             }
168         },
169         defaultValueCreator: (bindable) =>
170         {
171             var view = (View)bindable;
172             string temp;
173             if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SUB_STATE).Get(out temp) == false)
174             {
175                 NUILog.Error("subState get error!");
176             }
177             return temp.GetValueByDescription<States>();
178         });
179
180         /// <summary>
181         /// TooltipProperty
182         /// </summary>
183         [EditorBrowsable(EditorBrowsableState.Never)]
184         public static readonly BindableProperty TooltipProperty = BindableProperty.Create("Tooltip", typeof(PropertyMap), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
185         {
186             var view = (View)bindable;
187             if (newValue != null)
188             {
189                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.TOOLTIP, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
190             }
191         },
192         defaultValueCreator: (bindable) =>
193         {
194             var view = (View)bindable;
195             Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
196             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.TOOLTIP).Get(temp);
197             return temp;
198         });
199
200         /// <summary>
201         /// FlexProperty
202         /// </summary>
203         [EditorBrowsable(EditorBrowsableState.Never)]
204         public static readonly BindableProperty FlexProperty = BindableProperty.Create("Flex", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
205         {
206             var view = (View)bindable;
207             if (newValue != null)
208             {
209                 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX, new Tizen.NUI.PropertyValue((float)newValue));
210             }
211         },
212         defaultValueCreator: (bindable) =>
213         {
214             var view = (View)bindable;
215             float temp = 0.0f;
216             Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX).Get(out temp);
217             return temp;
218         });
219
220         /// <summary>
221         /// AlignSelfProperty
222         /// </summary>
223         [EditorBrowsable(EditorBrowsableState.Never)]
224         public static readonly BindableProperty AlignSelfProperty = BindableProperty.Create("AlignSelf", typeof(int), typeof(View), default(int), propertyChanged: (bindable, oldValue, newValue) =>
225         {
226             var view = (View)bindable;
227             if (newValue != null)
228             {
229                 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.ALIGN_SELF, new Tizen.NUI.PropertyValue((int)newValue));
230             }
231         },
232         defaultValueCreator: (bindable) =>
233         {
234             var view = (View)bindable;
235             int temp = 0;
236             Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.ALIGN_SELF).Get(out temp);
237             return temp;
238         });
239
240         /// <summary>
241         /// FlexMarginProperty
242         /// </summary>
243         [EditorBrowsable(EditorBrowsableState.Never)]
244         public static readonly BindableProperty FlexMarginProperty = BindableProperty.Create("FlexMargin", typeof(Vector4), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
245         {
246             var view = (View)bindable;
247             if (newValue != null)
248             {
249                 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX_MARGIN, new Tizen.NUI.PropertyValue((Vector4)newValue));
250             }
251         },
252         defaultValueCreator: (bindable) =>
253         {
254             var view = (View)bindable;
255             Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
256             Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX_MARGIN).Get(temp);
257             return temp;
258         });
259
260         /// <summary>
261         /// CellIndexProperty
262         /// </summary>
263         [EditorBrowsable(EditorBrowsableState.Never)]
264         public static readonly BindableProperty CellIndexProperty = BindableProperty.Create("CellIndex", typeof(Vector2), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
265         {
266             var view = (View)bindable;
267             if (newValue != null)
268             {
269                 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_INDEX, new Tizen.NUI.PropertyValue((Vector2)newValue));
270             }
271         },
272         defaultValueCreator: (bindable) =>
273         {
274             var view = (View)bindable;
275             Vector2 temp = new Vector2(0.0f, 0.0f);
276             Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_INDEX).Get(temp);
277             return temp;
278         });
279
280         /// <summary>
281         /// RowSpanProperty
282         /// </summary>
283         [EditorBrowsable(EditorBrowsableState.Never)]
284         public static readonly BindableProperty RowSpanProperty = BindableProperty.Create("RowSpan", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
285         {
286             var view = (View)bindable;
287             if (newValue != null)
288             {
289                 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.ROW_SPAN, new Tizen.NUI.PropertyValue((float)newValue));
290             }
291         },
292         defaultValueCreator: (bindable) =>
293         {
294             var view = (View)bindable;
295             float temp = 0.0f;
296             Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.ROW_SPAN).Get(out temp);
297             return temp;
298         });
299
300         /// <summary>
301         /// ColumnSpanProperty
302         /// </summary>
303         [EditorBrowsable(EditorBrowsableState.Never)]
304         public static readonly BindableProperty ColumnSpanProperty = BindableProperty.Create("ColumnSpan", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
305         {
306             var view = (View)bindable;
307             if (newValue != null)
308             {
309                 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.COLUMN_SPAN, new Tizen.NUI.PropertyValue((float)newValue));
310             }
311         },
312         defaultValueCreator: (bindable) =>
313         {
314             var view = (View)bindable;
315             float temp = 0.0f;
316             Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.COLUMN_SPAN).Get(out temp);
317             return temp;
318         });
319
320         /// <summary>
321         /// CellHorizontalAlignmentProperty
322         /// </summary>
323         [EditorBrowsable(EditorBrowsableState.Never)]
324         public static readonly BindableProperty CellHorizontalAlignmentProperty = BindableProperty.Create("CellHorizontalAlignment", typeof(HorizontalAlignmentType), typeof(View), HorizontalAlignmentType.Left, propertyChanged: (bindable, oldValue, newValue) =>
325         {
326             var view = (View)bindable;
327             string valueToString = "";
328
329             if (newValue != null)
330             {
331                 valueToString = ((HorizontalAlignmentType)newValue).GetDescription<HorizontalAlignmentType>();
332                 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
333             }
334         },
335         defaultValueCreator: (bindable) =>
336         {
337             var view = (View)bindable;
338             string temp;
339             if (Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT).Get(out temp) == false)
340             {
341                 NUILog.Error("CellHorizontalAlignment get error!");
342             }
343
344             return temp.GetValueByDescription<HorizontalAlignmentType>();
345         });
346
347         /// <summary>
348         /// CellVerticalAlignmentProperty
349         /// </summary>
350         [EditorBrowsable(EditorBrowsableState.Never)]
351         public static readonly BindableProperty CellVerticalAlignmentProperty = BindableProperty.Create("CellVerticalAlignment", typeof(VerticalAlignmentType), typeof(View), VerticalAlignmentType.Top, propertyChanged: (bindable, oldValue, newValue) =>
352         {
353             var view = (View)bindable;
354             string valueToString = "";
355
356             if (newValue != null)
357             {
358                 valueToString = ((VerticalAlignmentType)newValue).GetDescription<VerticalAlignmentType>();
359                 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
360             }
361         },
362         defaultValueCreator: (bindable) =>
363         {
364             var view = (View)bindable;
365             string temp;
366             Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT).Get(out temp);
367             {
368                 NUILog.Error("CellVerticalAlignment get error!");
369             }
370
371             return temp.GetValueByDescription<VerticalAlignmentType>();
372         });
373
374         /// <summary>
375         /// "Please DO NOT use! This will be deprecated! Please use 'View Weight' instead of BindableProperty"
376         /// This needs to be hidden as inhouse API until all applications using it have been updated.  Do not make public.
377         /// </summary>
378         [EditorBrowsable(EditorBrowsableState.Never)]
379         public static readonly BindableProperty WeightProperty = BindableProperty.Create("Weight", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
380         {
381             var view = (View)bindable;
382             if (newValue != null)
383             {
384                 view.Weight = (float)newValue;
385             }
386         },
387
388         defaultValueCreator: (bindable) =>
389         {
390             var view = (View)bindable;
391             return view.Weight;
392         });
393
394         /// <summary>
395         /// LeftFocusableViewProperty
396         /// </summary>
397         [EditorBrowsable(EditorBrowsableState.Never)]
398         public static readonly BindableProperty LeftFocusableViewProperty = BindableProperty.Create(nameof(View.LeftFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
399         {
400             var view = (View)bindable;
401             if (newValue != null) { view.LeftFocusableViewId = (int)(newValue as View)?.GetId(); }
402             else { view.LeftFocusableViewId = -1; }
403         },
404         defaultValueCreator: (bindable) =>
405         {
406             var view = (View)bindable;
407             if (view.LeftFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.LeftFocusableViewId); }
408             return null;
409         });
410
411         /// <summary>
412         /// RightFocusableViewProperty
413         /// </summary>
414         [EditorBrowsable(EditorBrowsableState.Never)]
415         public static readonly BindableProperty RightFocusableViewProperty = BindableProperty.Create(nameof(View.RightFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
416         {
417             var view = (View)bindable;
418             if (newValue != null) { view.RightFocusableViewId = (int)(newValue as View)?.GetId(); }
419             else { view.RightFocusableViewId = -1; }
420         },
421         defaultValueCreator: (bindable) =>
422         {
423             var view = (View)bindable;
424             if (view.RightFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.RightFocusableViewId); }
425             return null;
426         });
427
428         /// <summary>
429         /// UpFocusableViewProperty
430         /// </summary>
431         [EditorBrowsable(EditorBrowsableState.Never)]
432         public static readonly BindableProperty UpFocusableViewProperty = BindableProperty.Create(nameof(View.UpFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
433         {
434             var view = (View)bindable;
435             if (newValue != null) { view.UpFocusableViewId = (int)(newValue as View)?.GetId(); }
436             else { view.UpFocusableViewId = -1; }
437         },
438         defaultValueCreator: (bindable) =>
439         {
440             var view = (View)bindable;
441             if (view.UpFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.UpFocusableViewId); }
442             return null;
443         });
444
445         /// <summary>
446         /// DownFocusableViewProperty
447         /// </summary>
448         [EditorBrowsable(EditorBrowsableState.Never)]
449         public static readonly BindableProperty DownFocusableViewProperty = BindableProperty.Create(nameof(View.DownFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
450         {
451             var view = (View)bindable;
452             if (newValue != null) { view.DownFocusableViewId = (int)(newValue as View)?.GetId(); }
453             else { view.DownFocusableViewId = -1; }
454         },
455         defaultValueCreator: (bindable) =>
456         {
457             var view = (View)bindable;
458             if (view.DownFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.DownFocusableViewId); }
459             return null;
460         });
461
462         /// <summary>
463         /// FocusableProperty
464         /// </summary>
465         [EditorBrowsable(EditorBrowsableState.Never)]
466         public static readonly BindableProperty FocusableProperty = BindableProperty.Create("Focusable", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
467         {
468             var view = (View)bindable;
469             if (newValue != null) { view.SetKeyboardFocusable((bool)newValue); }
470         },
471         defaultValueCreator: (bindable) =>
472         {
473             var view = (View)bindable;
474             return view.IsKeyboardFocusable();
475         });
476
477         /// <summary>
478         /// Size2DProperty
479         /// </summary>
480         [EditorBrowsable(EditorBrowsableState.Never)]
481         public static readonly BindableProperty Size2DProperty = BindableProperty.Create("Size2D", typeof(Size2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
482         {
483             var view = (View)bindable;
484             if (newValue != null)
485             {
486                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE, new Tizen.NUI.PropertyValue(new Size((Size2D)newValue)));
487             }
488         },
489         defaultValueCreator: (bindable) =>
490         {
491             var view = (View)bindable;
492             Size temp = new Size(0.0f, 0.0f, 0.0f);
493             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE).Get(temp);
494             Size2D size = new Size2D((int)temp.Width, (int)temp.Height);
495             return size;
496         });
497
498         /// <summary>
499         /// OpacityProperty
500         /// </summary>
501         [EditorBrowsable(EditorBrowsableState.Never)]
502         public static readonly BindableProperty OpacityProperty = BindableProperty.Create("Opacity", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
503         {
504             var view = (View)bindable;
505             if (newValue != null)
506             {
507                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.OPACITY, new Tizen.NUI.PropertyValue((float)newValue));
508             }
509         },
510         defaultValueCreator: (bindable) =>
511         {
512             var view = (View)bindable;
513             float temp = 0.0f;
514             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.OPACITY).Get(out temp);
515             return temp;
516         });
517
518         /// <summary>
519         /// Position2DProperty
520         /// </summary>
521         [EditorBrowsable(EditorBrowsableState.Never)]
522         public static readonly BindableProperty Position2DProperty = BindableProperty.Create("Position2D", typeof(Position2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
523         {
524             var view = (View)bindable;
525             if (newValue != null)
526             {
527                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION, new Tizen.NUI.PropertyValue(new Position((Position2D)newValue)));
528             }
529         },
530         defaultValueCreator: (bindable) =>
531         {
532             var view = (View)bindable;
533             Position temp = new Position(0.0f, 0.0f, 0.0f);
534             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION).Get(temp);
535             return new Position2D(temp);
536         });
537
538         /// <summary>
539         /// PositionUsesPivotPointProperty
540         /// </summary>
541         [EditorBrowsable(EditorBrowsableState.Never)]
542         public static readonly BindableProperty PositionUsesPivotPointProperty = BindableProperty.Create("PositionUsesPivotPoint", typeof(bool), typeof(View), true, propertyChanged: (bindable, oldValue, newValue) =>
543         {
544             var view = (View)bindable;
545             if (newValue != null)
546             {
547                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue((bool)newValue));
548             }
549         },
550         defaultValueCreator: (bindable) =>
551         {
552             var view = (View)bindable;
553             bool temp = false;
554             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_USES_ANCHOR_POINT).Get(out temp);
555             return temp;
556         });
557
558         /// <summary>
559         /// SiblingOrderProperty
560         /// </summary>
561         [EditorBrowsable(EditorBrowsableState.Never)]
562         public static readonly BindableProperty SiblingOrderProperty = BindableProperty.Create("SiblingOrder", typeof(int), typeof(View), default(int), propertyChanged: (bindable, oldValue, newValue) =>
563         {
564             var view = (View)bindable;
565             int value;
566             if (newValue != null)
567             {
568                 value = (int)newValue;
569                 if (value < 0)
570                 {
571                     NUILog.Error("SiblingOrder should be bigger than 0 or equal to 0.");
572                     return;
573                 }
574                 var siblings = view.GetParent()?.Children;
575                 if (siblings != null)
576                 {
577                     int currentOrder = siblings.IndexOf(view);
578                     if (value != currentOrder)
579                     {
580                         if (value == 0) { view.LowerToBottom(); }
581                         else if (value < siblings.Count - 1)
582                         {
583                             if (value > currentOrder) { view.RaiseAbove(siblings[value]); }
584                             else { view.LowerBelow(siblings[value]); }
585                         }
586                         else { view.RaiseToTop(); }
587                     }
588                 }
589             }
590         },
591         defaultValueCreator: (bindable) =>
592         {
593             var view = (View)bindable;
594             var parentChildren = view.GetParent()?.Children;
595             int currentOrder = 0;
596             if (parentChildren != null)
597             {
598                 currentOrder = parentChildren.IndexOf(view);
599
600                 if (currentOrder < 0) { return 0; }
601                 else if (currentOrder < parentChildren.Count) { return currentOrder; }
602             }
603
604             return 0;
605         });
606
607         /// <summary>
608         /// ParentOriginProperty
609         /// </summary>
610         [EditorBrowsable(EditorBrowsableState.Never)]
611         public static readonly BindableProperty ParentOriginProperty = BindableProperty.Create("ParentOrigin", typeof(Position), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
612         {
613             var view = (View)bindable;
614             if (newValue != null)
615             {
616                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.PARENT_ORIGIN, new Tizen.NUI.PropertyValue((Position)newValue));
617             }
618         },
619         defaultValueCreator: (bindable) =>
620         {
621             var view = (View)bindable;
622             Position temp = new Position(0.0f, 0.0f, 0.0f);
623             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.PARENT_ORIGIN).Get(temp);
624             return temp;
625         }
626         );
627
628         /// <summary>
629         /// PivotPointProperty
630         /// </summary>
631         [EditorBrowsable(EditorBrowsableState.Never)]
632         public static readonly BindableProperty PivotPointProperty = BindableProperty.Create("PivotPoint", typeof(Position), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
633         {
634             var view = (View)bindable;
635             if (newValue != null)
636             {
637                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue((Position)newValue));
638             }
639         },
640         defaultValueCreator: (bindable) =>
641         {
642             var view = (View)bindable;
643             Position temp = new Position(0.0f, 0.0f, 0.0f);
644             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.ANCHOR_POINT).Get(temp);
645             return temp;
646         });
647
648         /// <summary>
649         /// SizeWidthProperty
650         /// </summary>
651         [EditorBrowsable(EditorBrowsableState.Never)]
652         public static readonly BindableProperty SizeWidthProperty = BindableProperty.Create("SizeWidth", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
653         {
654             var view = (View)bindable;
655             if (newValue != null)
656             {
657                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_WIDTH, new Tizen.NUI.PropertyValue((float)newValue));
658             }
659         },
660         defaultValueCreator: (bindable) =>
661         {
662             var view = (View)bindable;
663             float temp = 0.0f;
664             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_WIDTH).Get(out temp);
665             return temp;
666         });
667
668         /// <summary>
669         /// SizeHeightProperty
670         /// </summary>
671         [EditorBrowsable(EditorBrowsableState.Never)]
672         public static readonly BindableProperty SizeHeightProperty = BindableProperty.Create("SizeHeight", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
673         {
674             var view = (View)bindable;
675             if (newValue != null)
676             {
677                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_HEIGHT, new Tizen.NUI.PropertyValue((float)newValue));
678             }
679         },
680         defaultValueCreator: (bindable) =>
681         {
682             var view = (View)bindable;
683             float temp = 0.0f;
684             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_HEIGHT).Get(out temp);
685             return temp;
686         });
687
688         /// <summary>
689         /// PositionProperty
690         /// </summary>
691         [EditorBrowsable(EditorBrowsableState.Never)]
692         public static readonly BindableProperty PositionProperty = BindableProperty.Create("Position", typeof(Position), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
693         {
694             var view = (View)bindable;
695             if (newValue != null)
696             {
697                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION, new Tizen.NUI.PropertyValue((Position)newValue));
698             }
699         },
700         defaultValueCreator: (bindable) =>
701         {
702             var view = (View)bindable;
703             Position temp = new Position(0.0f, 0.0f, 0.0f);
704             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION).Get(temp);
705             return temp;
706         });
707
708         /// <summary>
709         /// PositionXProperty
710         /// </summary>
711         [EditorBrowsable(EditorBrowsableState.Never)]
712         public static readonly BindableProperty PositionXProperty = BindableProperty.Create("PositionX", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
713         {
714             var view = (View)bindable;
715             if (newValue != null)
716             {
717                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_X, new Tizen.NUI.PropertyValue((float)newValue));
718             }
719         },
720         defaultValueCreator: (bindable) =>
721         {
722             var view = (View)bindable;
723             float temp = 0.0f;
724             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_X).Get(out temp);
725             return temp;
726         });
727
728         /// <summary>
729         /// PositionYProperty
730         /// </summary>
731         [EditorBrowsable(EditorBrowsableState.Never)]
732         public static readonly BindableProperty PositionYProperty = BindableProperty.Create("PositionY", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
733         {
734             var view = (View)bindable;
735             if (newValue != null)
736             {
737                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_Y, new Tizen.NUI.PropertyValue((float)newValue));
738             }
739         },
740         defaultValueCreator: (bindable) =>
741         {
742             var view = (View)bindable;
743             float temp = 0.0f;
744             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_Y).Get(out temp);
745             return temp;
746         });
747
748         /// <summary>
749         /// PositionZProperty
750         /// </summary>
751         [EditorBrowsable(EditorBrowsableState.Never)]
752         public static readonly BindableProperty PositionZProperty = BindableProperty.Create("PositionZ", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
753         {
754             var view = (View)bindable;
755             if (newValue != null)
756             {
757                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_Z, new Tizen.NUI.PropertyValue((float)newValue));
758             }
759         },
760         defaultValueCreator: (bindable) =>
761         {
762             var view = (View)bindable;
763             float temp = 0.0f;
764             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_Z).Get(out temp);
765             return temp;
766         });
767
768         /// <summary>
769         /// OrientationProperty
770         /// </summary>
771         [EditorBrowsable(EditorBrowsableState.Never)]
772         public static readonly BindableProperty OrientationProperty = BindableProperty.Create("Orientation", typeof(Rotation), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
773         {
774             var view = (View)bindable;
775             if (newValue != null)
776             {
777                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.ORIENTATION, new Tizen.NUI.PropertyValue((Rotation)newValue));
778             }
779         },
780         defaultValueCreator: (bindable) =>
781         {
782             var view = (View)bindable;
783             Rotation temp = new Rotation();
784             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.ORIENTATION).Get(temp);
785             return temp;
786         });
787
788         /// <summary>
789         /// ScaleProperty
790         /// </summary>
791         [EditorBrowsable(EditorBrowsableState.Never)]
792         public static readonly BindableProperty ScaleProperty = BindableProperty.Create("Scale", typeof(Vector3), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
793         {
794             var view = (View)bindable;
795             if (newValue != null)
796             {
797                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE, new Tizen.NUI.PropertyValue((Vector3)newValue));
798             }
799         },
800         defaultValueCreator: (bindable) =>
801         {
802             var view = (View)bindable;
803             Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
804             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE).Get(temp);
805             return temp;
806         });
807
808         /// <summary>
809         /// ScaleXProperty
810         /// </summary>
811         [EditorBrowsable(EditorBrowsableState.Never)]
812         public static readonly BindableProperty ScaleXProperty = BindableProperty.Create("ScaleX", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
813         {
814             var view = (View)bindable;
815             if (newValue != null)
816             {
817                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_X, new Tizen.NUI.PropertyValue((float)newValue));
818             }
819         },
820         defaultValueCreator: (bindable) =>
821         {
822             var view = (View)bindable;
823             float temp = 0.0f;
824             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_X).Get(out temp);
825             return temp;
826         });
827
828         /// <summary>
829         /// ScaleYProperty
830         /// </summary>
831         [EditorBrowsable(EditorBrowsableState.Never)]
832         public static readonly BindableProperty ScaleYProperty = BindableProperty.Create("ScaleY", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
833         {
834             var view = (View)bindable;
835             if (newValue != null)
836             {
837                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_Y, new Tizen.NUI.PropertyValue((float)newValue));
838             }
839         },
840         defaultValueCreator: (bindable) =>
841         {
842             var view = (View)bindable;
843             float temp = 0.0f;
844             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_Y).Get(out temp);
845             return temp;
846         });
847
848         /// <summary>
849         /// ScaleZProperty
850         /// </summary>
851         [EditorBrowsable(EditorBrowsableState.Never)]
852         public static readonly BindableProperty ScaleZProperty = BindableProperty.Create("ScaleZ", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
853         {
854             var view = (View)bindable;
855             if (newValue != null)
856             {
857                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_Z, new Tizen.NUI.PropertyValue((float)newValue));
858             }
859         },
860         defaultValueCreator: (bindable) =>
861         {
862             var view = (View)bindable;
863             float temp = 0.0f;
864             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_Z).Get(out temp);
865             return temp;
866         });
867
868         /// <summary>
869         /// NameProperty
870         /// </summary>
871         [EditorBrowsable(EditorBrowsableState.Never)]
872         public static readonly BindableProperty NameProperty = BindableProperty.Create("Name", typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
873         {
874             var view = (View)bindable;
875             if (newValue != null)
876             {
877                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.NAME, new Tizen.NUI.PropertyValue((string)newValue));
878             }
879         },
880         defaultValueCreator: (bindable) =>
881         {
882             var view = (View)bindable;
883             string temp;
884             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.NAME).Get(out temp);
885             return temp;
886         });
887
888         /// <summary>
889         /// SensitiveProperty
890         /// </summary>
891         [EditorBrowsable(EditorBrowsableState.Never)]
892         public static readonly BindableProperty SensitiveProperty = BindableProperty.Create("Sensitive", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
893         {
894             var view = (View)bindable;
895             if (newValue != null)
896             {
897                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SENSITIVE, new Tizen.NUI.PropertyValue((bool)newValue));
898             }
899         },
900         defaultValueCreator: (bindable) =>
901         {
902             var view = (View)bindable;
903             bool temp = false;
904             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SENSITIVE).Get(out temp);
905             return temp;
906         });
907
908         /// <summary>
909         /// LeaveRequiredProperty
910         /// </summary>
911         [EditorBrowsable(EditorBrowsableState.Never)]
912         public static readonly BindableProperty LeaveRequiredProperty = BindableProperty.Create("LeaveRequired", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
913         {
914             var view = (View)bindable;
915             if (newValue != null)
916             {
917                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.LEAVE_REQUIRED, new Tizen.NUI.PropertyValue((bool)newValue));
918             }
919         },
920         defaultValueCreator: (bindable) =>
921         {
922             var view = (View)bindable;
923             bool temp = false;
924             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.LEAVE_REQUIRED).Get(out temp);
925             return temp;
926         });
927
928         /// <summary>
929         /// InheritOrientationProperty
930         /// </summary>
931         [EditorBrowsable(EditorBrowsableState.Never)]
932         public static readonly BindableProperty InheritOrientationProperty = BindableProperty.Create("InheritOrientation", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
933         {
934             var view = (View)bindable;
935             if (newValue != null)
936             {
937                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_ORIENTATION, new Tizen.NUI.PropertyValue((bool)newValue));
938             }
939         },
940         defaultValueCreator: (bindable) =>
941         {
942             var view = (View)bindable;
943             bool temp = false;
944             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_ORIENTATION).Get(out temp);
945             return temp;
946         });
947
948         /// <summary>
949         /// InheritScaleProperty
950         /// </summary>
951         [EditorBrowsable(EditorBrowsableState.Never)]
952         public static readonly BindableProperty InheritScaleProperty = BindableProperty.Create("InheritScale", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
953         {
954             var view = (View)bindable;
955             if (newValue != null)
956             {
957                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_SCALE, new Tizen.NUI.PropertyValue((bool)newValue));
958             }
959         },
960         defaultValueCreator: (bindable) =>
961         {
962             var view = (View)bindable;
963             bool temp = false;
964             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_SCALE).Get(out temp);
965             return temp;
966         });
967
968         /// <summary>
969         /// DrawModeProperty
970         /// </summary>
971         [EditorBrowsable(EditorBrowsableState.Never)]
972         public static readonly BindableProperty DrawModeProperty = BindableProperty.Create("DrawMode", typeof(DrawModeType), typeof(View), DrawModeType.Normal, propertyChanged: (bindable, oldValue, newValue) =>
973         {
974             var view = (View)bindable;
975             if (newValue != null)
976             {
977                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.DRAW_MODE, new Tizen.NUI.PropertyValue((int)newValue));
978             }
979         },
980         defaultValueCreator: (bindable) =>
981         {
982             var view = (View)bindable;
983             string temp;
984             if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.DRAW_MODE).Get(out temp) == false)
985             {
986                 NUILog.Error("DrawMode get error!");
987             }
988             return temp.GetValueByDescription<DrawModeType>();
989         });
990
991         /// <summary>
992         /// SizeModeFactorProperty
993         /// </summary>
994         [EditorBrowsable(EditorBrowsableState.Never)]
995         public static readonly BindableProperty SizeModeFactorProperty = BindableProperty.Create("SizeModeFactor", typeof(Vector3), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
996         {
997             var view = (View)bindable;
998             if (newValue != null)
999             {
1000                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_MODE_FACTOR, new Tizen.NUI.PropertyValue((Vector3)newValue));
1001             }
1002         },
1003         defaultValueCreator: (bindable) =>
1004         {
1005             var view = (View)bindable;
1006             Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
1007             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_MODE_FACTOR).Get(temp);
1008             return temp;
1009         });
1010
1011         /// <summary>
1012         /// WidthResizePolicyProperty
1013         /// </summary>
1014         [EditorBrowsable(EditorBrowsableState.Never)]
1015         public static readonly BindableProperty WidthResizePolicyProperty = BindableProperty.Create("WidthResizePolicy", typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (bindable, oldValue, newValue) =>
1016         {
1017             var view = (View)bindable;
1018             if (newValue != null)
1019             {
1020                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.WIDTH_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)newValue));
1021             }
1022         },
1023         defaultValueCreator: (bindable) =>
1024         {
1025             var view = (View)bindable;
1026             string temp;
1027             if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.WIDTH_RESIZE_POLICY).Get(out temp) == false)
1028             {
1029                 NUILog.Error("WidthResizePolicy get error!");
1030             }
1031             return temp.GetValueByDescription<ResizePolicyType>();
1032         });
1033
1034         /// <summary>
1035         /// HeightResizePolicyProperty
1036         /// </summary>
1037         [EditorBrowsable(EditorBrowsableState.Never)]
1038         public static readonly BindableProperty HeightResizePolicyProperty = BindableProperty.Create("HeightResizePolicy", typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (bindable, oldValue, newValue) =>
1039         {
1040             var view = (View)bindable;
1041             if (newValue != null)
1042             {
1043                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.HEIGHT_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)newValue));
1044             }
1045         },
1046         defaultValueCreator: (bindable) =>
1047         {
1048             var view = (View)bindable;
1049             string temp;
1050             if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.HEIGHT_RESIZE_POLICY).Get(out temp) == false)
1051             {
1052                 NUILog.Error("HeightResizePolicy get error!");
1053             }
1054             return temp.GetValueByDescription<ResizePolicyType>();
1055         });
1056
1057         /// <summary>
1058         /// SizeScalePolicyProperty
1059         /// </summary>
1060         [EditorBrowsable(EditorBrowsableState.Never)]
1061         public static readonly BindableProperty SizeScalePolicyProperty = BindableProperty.Create("SizeScalePolicy", typeof(SizeScalePolicyType), typeof(View), SizeScalePolicyType.UseSizeSet, propertyChanged: (bindable, oldValue, newValue) =>
1062         {
1063             var view = (View)bindable;
1064             string valueToString = "";
1065             if (newValue != null)
1066             {
1067                 valueToString = ((SizeScalePolicyType)newValue).GetDescription<SizeScalePolicyType>();
1068                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_SCALE_POLICY, new Tizen.NUI.PropertyValue(valueToString));
1069             }
1070         },
1071         defaultValueCreator: (bindable) =>
1072         {
1073             var view = (View)bindable;
1074             string temp;
1075             if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_SCALE_POLICY).Get(out temp) == false)
1076             {
1077                 NUILog.Error("SizeScalePolicy get error!");
1078             }
1079             return temp.GetValueByDescription<SizeScalePolicyType>();
1080         });
1081
1082         /// <summary>
1083         /// WidthForHeightProperty
1084         /// </summary>
1085         [EditorBrowsable(EditorBrowsableState.Never)]
1086         public static readonly BindableProperty WidthForHeightProperty = BindableProperty.Create("WidthForHeight", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1087         {
1088             var view = (View)bindable;
1089             if (newValue != null)
1090             {
1091                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.WIDTH_FOR_HEIGHT, new Tizen.NUI.PropertyValue((bool)newValue));
1092             }
1093         },
1094         defaultValueCreator: (bindable) =>
1095         {
1096             var view = (View)bindable;
1097             bool temp = false;
1098             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.WIDTH_FOR_HEIGHT).Get(out temp);
1099             return temp;
1100         });
1101
1102         /// <summary>
1103         /// HeightForWidthProperty
1104         /// </summary>
1105         [EditorBrowsable(EditorBrowsableState.Never)]
1106         public static readonly BindableProperty HeightForWidthProperty = BindableProperty.Create("HeightForWidth", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1107         {
1108             var view = (View)bindable;
1109             if (newValue != null)
1110             {
1111                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.HEIGHT_FOR_WIDTH, new Tizen.NUI.PropertyValue((bool)newValue));
1112             }
1113         },
1114         defaultValueCreator: (bindable) =>
1115         {
1116             var view = (View)bindable;
1117             bool temp = false;
1118             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.HEIGHT_FOR_WIDTH).Get(out temp);
1119             return temp;
1120         });
1121
1122         /// <summary>
1123         /// PaddingProperty
1124         /// </summary>
1125         [EditorBrowsable(EditorBrowsableState.Never)]
1126         public static readonly BindableProperty PaddingProperty = BindableProperty.Create("Padding", typeof(Extents), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1127         {
1128             var view = (View)bindable;
1129             if (newValue != null)
1130             {
1131                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.PADDING, new Tizen.NUI.PropertyValue((Extents)newValue));
1132             }
1133         },
1134         defaultValueCreator: (bindable) =>
1135         {
1136             var view = (View)bindable;
1137             Extents temp = new Extents(0, 0, 0, 0);
1138             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.PADDING).Get(temp);
1139             return temp;
1140         });
1141
1142         /// <summary>
1143         /// SizeProperty
1144         /// </summary>
1145         [EditorBrowsable(EditorBrowsableState.Never)]
1146         public static readonly BindableProperty SizeProperty = BindableProperty.Create("Size", typeof(Size), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1147         {
1148             var view = (View)bindable;
1149             if (newValue != null)
1150             {
1151                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE, new Tizen.NUI.PropertyValue((Size)newValue));
1152             }
1153         },
1154         defaultValueCreator: (bindable) =>
1155         {
1156             var view = (View)bindable;
1157             Size temp = new Size(0, 0, 0);
1158             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE).Get(temp);
1159             return temp;
1160         });
1161
1162         /// <summary>
1163         /// MinimumSizeProperty
1164         /// </summary>
1165         [EditorBrowsable(EditorBrowsableState.Never)]
1166         public static readonly BindableProperty MinimumSizeProperty = BindableProperty.Create("MinimumSize", typeof(Size2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1167         {
1168             var view = (View)bindable;
1169             Size2D temp = newValue as Size2D;
1170             if (temp != null)
1171             {
1172                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MINIMUM_SIZE, new Tizen.NUI.PropertyValue(temp));
1173             }
1174             else
1175             {
1176                 Tizen.Log.Fatal("NUI", $"[ERROR] can't set MinimumSizeProperty!");
1177             }
1178         },
1179         defaultValueCreator: (bindable) =>
1180         {
1181             var view = (View)bindable;
1182             Size2D temp = new Size2D(0, 0);
1183             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MINIMUM_SIZE).Get(temp);
1184             return temp;
1185         });
1186
1187         /// <summary>
1188         /// MaximumSizeProperty
1189         /// </summary>
1190         [EditorBrowsable(EditorBrowsableState.Never)]
1191         public static readonly BindableProperty MaximumSizeProperty = BindableProperty.Create("MaximumSize", typeof(Size2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1192         {
1193             var view = (View)bindable;
1194             Size2D temp = newValue as Size2D;
1195             if (temp != null)
1196             {
1197                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MAXIMUM_SIZE, new Tizen.NUI.PropertyValue(temp));
1198             }
1199             else
1200             {
1201                 Tizen.Log.Fatal("NUI", $"[ERROR] can't set MaximumSizeProperty!");
1202             }
1203         },
1204         defaultValueCreator: (bindable) =>
1205         {
1206             var view = (View)bindable;
1207             Size2D temp = new Size2D(0, 0);
1208             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MAXIMUM_SIZE).Get(temp);
1209             return temp;
1210         });
1211
1212         /// <summary>
1213         /// InheritPositionProperty
1214         /// </summary>
1215         [EditorBrowsable(EditorBrowsableState.Never)]
1216         public static readonly BindableProperty InheritPositionProperty = BindableProperty.Create("InheritPosition", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1217         {
1218             var view = (View)bindable;
1219             if (newValue != null)
1220             {
1221                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_POSITION, new Tizen.NUI.PropertyValue((bool)newValue));
1222             }
1223         },
1224         defaultValueCreator: (bindable) =>
1225         {
1226             var view = (View)bindable;
1227             bool temp = false;
1228             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_POSITION).Get(out temp);
1229             return temp;
1230         });
1231
1232         /// <summary>
1233         /// ClippingModeProperty
1234         /// </summary>
1235         [EditorBrowsable(EditorBrowsableState.Never)]
1236         public static readonly BindableProperty ClippingModeProperty = BindableProperty.Create("ClippingMode", typeof(ClippingModeType), typeof(View), ClippingModeType.Disabled, propertyChanged: (bindable, oldValue, newValue) =>
1237         {
1238             var view = (View)bindable;
1239             if (newValue != null)
1240             {
1241                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.CLIPPING_MODE, new Tizen.NUI.PropertyValue((int)newValue));
1242             }
1243         },
1244         defaultValueCreator: (bindable) =>
1245         {
1246             var view = (View)bindable;
1247             int temp = 0;
1248             if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.CLIPPING_MODE).Get(out temp) == false)
1249             {
1250                 NUILog.Error("ClippingMode get error!");
1251             }
1252             return (ClippingModeType)temp;
1253         });
1254
1255         /// <summary>
1256         /// InheritLayoutDirectionProperty
1257         /// </summary>
1258         [EditorBrowsable(EditorBrowsableState.Never)]
1259         public static readonly BindableProperty InheritLayoutDirectionProperty = BindableProperty.Create("InheritLayoutDirection", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1260         {
1261             var view = (View)bindable;
1262             if (newValue != null)
1263             {
1264                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue((bool)newValue));
1265             }
1266         },
1267         defaultValueCreator: (bindable) =>
1268         {
1269             var view = (View)bindable;
1270             bool temp = false;
1271             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_LAYOUT_DIRECTION).Get(out temp);
1272             return temp;
1273         });
1274
1275         /// <summary>
1276         /// LayoutDirectionProperty
1277         /// </summary>
1278         [EditorBrowsable(EditorBrowsableState.Never)]
1279         public static readonly BindableProperty LayoutDirectionProperty = BindableProperty.Create("LayoutDirection", typeof(ViewLayoutDirectionType), typeof(View), ViewLayoutDirectionType.LTR, propertyChanged: (bindable, oldValue, newValue) =>
1280         {
1281             var view = (View)bindable;
1282             if (newValue != null)
1283             {
1284                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue((int)newValue));
1285             }
1286         },
1287         defaultValueCreator: (bindable) =>
1288         {
1289             var view = (View)bindable;
1290             int temp;
1291             if (false == Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.LAYOUT_DIRECTION).Get(out temp))
1292             {
1293                 NUILog.Error("LAYOUT_DIRECTION get error!");
1294             }
1295             return (ViewLayoutDirectionType)temp;
1296         });
1297
1298         /// <summary>
1299         /// MarginProperty
1300         /// </summary>
1301         [EditorBrowsable(EditorBrowsableState.Never)]
1302         public static readonly BindableProperty MarginProperty = BindableProperty.Create("Margin", typeof(Extents), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1303         {
1304             var view = (View)bindable;
1305             if (newValue != null)
1306             {
1307                 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MARGIN, new Tizen.NUI.PropertyValue((Extents)newValue));
1308             }
1309         },
1310         defaultValueCreator: (bindable) =>
1311         {
1312             var view = (View)bindable;
1313             Extents temp = new Extents(0, 0, 0, 0);
1314             Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MARGIN).Get(temp);
1315             return temp;
1316         });
1317
1318         /// <summary>
1319         /// UpdateSizeHintProperty
1320         /// </summary>
1321         [EditorBrowsable(EditorBrowsableState.Never)]
1322         public static readonly BindableProperty UpdateSizeHintProperty = BindableProperty.Create("UpdateSizeHint", typeof(Vector2), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1323         {
1324             var view = (View)bindable;
1325             if (newValue != null)
1326             {
1327                 Tizen.NUI.Object.SetProperty(view.swigCPtr, Interop.ViewProperty.View_Property_UPDATE_SIZE_HINT_get(), new Tizen.NUI.PropertyValue((Vector2)newValue));
1328             }
1329         },
1330         defaultValueCreator: (bindable) =>
1331         {
1332             var view = (View)bindable;
1333
1334             Vector2 temp = new Vector2(0.0f, 0.0f);
1335             Tizen.NUI.Object.GetProperty(view.swigCPtr, Interop.ViewProperty.View_Property_UPDATE_SIZE_HINT_get()).Get(temp);
1336             return temp;
1337         });
1338
1339         /// <summary>
1340         /// XamlStyleProperty
1341         /// </summary>
1342         [EditorBrowsable(EditorBrowsableState.Never)]
1343         public static readonly BindableProperty XamlStyleProperty = BindableProperty.Create("XamlStyle", typeof(Style), typeof(View), default(Style), propertyChanged: (bindable, oldvalue, newvalue) => ((View)bindable)._mergedStyle.Style = (Style)newvalue);
1344     }
1345 }