[NUI] Add FocusableChildren
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / BaseComponents / ViewBindableProperty.cs
1 /*
2  * Copyright(c) 2019-2021 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 (DALi json)
31         /// </summary>
32         [EditorBrowsable(EditorBrowsableState.Never)]
33         public static readonly BindableProperty StyleNameProperty = BindableProperty.Create(nameof(StyleName), typeof(string), typeof(View), string.Empty, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
34         {
35             var view = (View)bindable;
36             if (newValue != null)
37             {
38                 string styleName = (string)newValue;
39                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.StyleName, new Tizen.NUI.PropertyValue(styleName));
40
41                 view.styleName = styleName;
42
43                 if (string.IsNullOrEmpty(styleName)) return;
44
45                 var style = ThemeManager.GetUpdateStyleWithoutClone(styleName);
46
47                 if (style == null) return;
48
49                 view.ApplyStyle(style);
50                 view.SetThemeApplied();
51             }
52         }),
53         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
54         {
55             var view = (View)bindable;
56
57             if (!string.IsNullOrEmpty(view.styleName)) return view.styleName;
58
59             string temp;
60             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.StyleName).Get(out temp);
61             return temp;
62         }));
63
64         /// <summary>
65         /// KeyInputFocusProperty
66         /// </summary>
67         [EditorBrowsable(EditorBrowsableState.Never)]
68         public static readonly BindableProperty KeyInputFocusProperty = BindableProperty.Create(nameof(KeyInputFocus), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
69         {
70             var view = (View)bindable;
71             if (newValue != null)
72             {
73                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.KeyInputFocus, new Tizen.NUI.PropertyValue((bool)newValue));
74             }
75         }),
76         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
77         {
78             var view = (View)bindable;
79             bool temp = false;
80             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.KeyInputFocus).Get(out temp);
81             return temp;
82         }));
83
84         /// <summary>
85         /// BackgroundColorProperty
86         /// </summary>
87         [EditorBrowsable(EditorBrowsableState.Never)]
88         public static readonly BindableProperty BackgroundColorProperty = BindableProperty.Create(nameof(BackgroundColor), typeof(Color), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
89         {
90             var view = (View)bindable;
91
92             view.themeData?.selectorData?.ClearBackground(view);
93
94             if (newValue is Selector<Color> selector)
95             {
96                 if (selector.HasAll()) view.SetBackgroundColor(selector.All);
97                 else view.EnsureSelectorData().BackgroundColor = new TriggerableSelector<Color>(view, selector, view.SetBackgroundColor, true);
98             }
99             else
100             {
101                 view.SetBackgroundColor((Color)newValue);
102             }
103         }),
104         defaultValueCreator: (bindable) =>
105         {
106             var view = (View)bindable;
107             Color backgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f);
108
109             Tizen.NUI.PropertyMap background = view.Background;
110             int visualType = 0;
111             background.Find(Visual.Property.Type)?.Get(out visualType);
112             if (visualType == (int)Visual.Type.Color)
113             {
114                 background.Find(ColorVisualProperty.MixColor)?.Get(backgroundColor);
115             }
116
117             return backgroundColor;
118         });
119
120         /// <summary>
121         /// ColorProperty
122         /// </summary>
123         [EditorBrowsable(EditorBrowsableState.Never)]
124         public static readonly BindableProperty ColorProperty = BindableProperty.Create(nameof(Color), typeof(Color), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
125         {
126             var view = (View)bindable;
127
128             view.themeData?.selectorData?.Color?.Reset(view);
129
130             if (newValue is Selector<Color> selector)
131             {
132                 if (selector.HasAll()) view.SetColor(selector.All);
133                 else view.EnsureSelectorData().Color = new TriggerableSelector<Color>(view, selector, view.SetColor, true);
134             }
135             else
136             {
137                 view.SetColor((Color)newValue);
138             }
139         },
140         defaultValueCreator: (bindable) =>
141         {
142             var view = (View)bindable;
143             Color color = new Color(0.0f, 0.0f, 0.0f, 0.0f);
144             view.GetProperty(Interop.ActorProperty.ColorGet()).Get(color);
145             return color;
146         });
147         /// <summary> BackgroundImageProperty </summary>
148         [EditorBrowsable(EditorBrowsableState.Never)]
149         public static readonly BindableProperty BackgroundImageProperty = BindableProperty.Create(nameof(BackgroundImage), typeof(string), typeof(View), default(string), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
150         {
151             var view = (View)bindable;
152
153             if (view.themeData?.selectorData != null)
154             {
155                 view.themeData.selectorData.BackgroundColor?.Reset(view);
156                 view.themeData.selectorData.BackgroundImage?.Reset(view);
157             }
158
159             if (newValue is Selector<string> selector)
160             {
161                 if (selector.HasAll()) view.SetBackgroundImage(selector.All);
162                 else view.EnsureSelectorData().BackgroundImage = new TriggerableSelector<string>(view, selector, view.SetBackgroundImage, true);
163             }
164             else
165             {
166                 view.SetBackgroundImage((string)newValue);
167             }
168         }),
169         defaultValueCreator: (bindable) =>
170         {
171             var view = (View)bindable;
172             string backgroundImage = "";
173
174             Tizen.NUI.PropertyMap background = view.Background;
175             background.Find(ImageVisualProperty.URL)?.Get(out backgroundImage);
176
177             return backgroundImage;
178         });
179         /// <summary>BackgroundImageBorderProperty</summary>
180         [EditorBrowsable(EditorBrowsableState.Never)]
181         public static readonly BindableProperty BackgroundImageBorderProperty = BindableProperty.Create(nameof(BackgroundImageBorder), typeof(Rectangle), typeof(View), default(Rectangle), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
182         {
183             var view = (View)bindable;
184
185             view.themeData?.selectorData?.BackgroundImageBorder?.Reset(view);
186
187             if (newValue is Selector<Rectangle> selector)
188             {
189                 if (selector.HasAll()) view.SetBackgroundImageBorder(selector.All);
190                 else view.EnsureSelectorData().BackgroundImageBorder = new TriggerableSelector<Rectangle>(view, selector, view.SetBackgroundImageBorder, true);
191             }
192             else
193             {
194                 view.SetBackgroundImageBorder((Rectangle)newValue);
195             }
196         }),
197         defaultValueCreator: (bindable) =>
198         {
199             var view = (View)bindable;
200
201             return view.backgroundExtraData?.BackgroundImageBorder;
202         });
203         /// <summary>
204         /// BackgroundProperty
205         /// </summary>
206         [EditorBrowsable(EditorBrowsableState.Never)]
207         public static readonly BindableProperty BackgroundProperty = BindableProperty.Create(nameof(Background), typeof(PropertyMap), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
208         {
209             var view = (View)bindable;
210             if (newValue != null)
211             {
212                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.BACKGROUND, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
213
214                 view.backgroundExtraData = null;
215             }
216         }),
217         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
218         {
219             var view = (View)bindable;
220             Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
221             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.BACKGROUND).Get(temp);
222             return temp;
223         }));
224
225         /// <summary>
226         /// StateProperty
227         /// </summary>
228         [EditorBrowsable(EditorBrowsableState.Never)]
229         public static readonly BindableProperty StateProperty = BindableProperty.Create(nameof(State), typeof(States), typeof(View), States.Normal, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
230         {
231             var view = (View)bindable;
232             if (newValue != null)
233             {
234                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.STATE, new Tizen.NUI.PropertyValue((int)newValue));
235             }
236         }),
237         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
238         {
239             var view = (View)bindable;
240             int temp = 0;
241             if (Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.STATE).Get(out temp) == false)
242             {
243                 NUILog.Error("State get error!");
244             }
245             switch (temp)
246             {
247                 case 0: return States.Normal;
248                 case 1: return States.Focused;
249                 case 2: return States.Disabled;
250                 default: return States.Normal;
251             }
252         }));
253
254         /// <summary>
255         /// SubStateProperty
256         /// </summary>
257         [EditorBrowsable(EditorBrowsableState.Never)]
258         public static readonly BindableProperty SubStateProperty = BindableProperty.Create(nameof(SubState), typeof(States), typeof(View), States.Normal, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
259         {
260             var view = (View)bindable;
261             string valueToString = "";
262             if (newValue != null)
263             {
264                 valueToString = ((States)newValue).GetDescription();
265                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SubState, new Tizen.NUI.PropertyValue(valueToString));
266             }
267         }),
268         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
269         {
270             var view = (View)bindable;
271             string temp;
272             if (Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SubState).Get(out temp) == false)
273             {
274                 NUILog.Error("subState get error!");
275             }
276             return temp.GetValueByDescription<States>();
277         }));
278
279         /// <summary>
280         /// TooltipProperty
281         /// </summary>
282         [EditorBrowsable(EditorBrowsableState.Never)]
283         public static readonly BindableProperty TooltipProperty = BindableProperty.Create(nameof(Tooltip), typeof(PropertyMap), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
284         {
285             var view = (View)bindable;
286             if (newValue != null)
287             {
288                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.TOOLTIP, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
289             }
290         }),
291         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
292         {
293             var view = (View)bindable;
294             Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
295             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.TOOLTIP).Get(temp);
296             return temp;
297         }));
298
299         /// <summary>
300         /// FlexProperty
301         /// </summary>
302         [EditorBrowsable(EditorBrowsableState.Never)]
303         public static readonly BindableProperty FlexProperty = BindableProperty.Create(nameof(Flex), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
304         {
305             var view = (View)bindable;
306             if (newValue != null)
307             {
308                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, FlexContainer.ChildProperty.FLEX, new Tizen.NUI.PropertyValue((float)newValue));
309             }
310         }),
311         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
312         {
313             var view = (View)bindable;
314             float temp = 0.0f;
315             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, FlexContainer.ChildProperty.FLEX).Get(out temp);
316             return temp;
317         }));
318
319         /// <summary>
320         /// AlignSelfProperty
321         /// </summary>
322         [EditorBrowsable(EditorBrowsableState.Never)]
323         public static readonly BindableProperty AlignSelfProperty = BindableProperty.Create(nameof(AlignSelf), typeof(int), typeof(View), default(int), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
324         {
325             var view = (View)bindable;
326             if (newValue != null)
327             {
328                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, FlexContainer.ChildProperty.AlignSelf, new Tizen.NUI.PropertyValue((int)newValue));
329             }
330         }),
331         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
332         {
333             var view = (View)bindable;
334             int temp = 0;
335             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, FlexContainer.ChildProperty.AlignSelf).Get(out temp);
336             return temp;
337         }));
338
339         /// <summary>
340         /// FlexMarginProperty
341         /// </summary>
342         [EditorBrowsable(EditorBrowsableState.Never)]
343         public static readonly BindableProperty FlexMarginProperty = BindableProperty.Create(nameof(FlexMargin), typeof(Vector4), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
344         {
345             var view = (View)bindable;
346             if (newValue != null)
347             {
348                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, FlexContainer.ChildProperty.FlexMargin, new Tizen.NUI.PropertyValue((Vector4)newValue));
349             }
350         }),
351         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
352         {
353             var view = (View)bindable;
354             Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
355             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, FlexContainer.ChildProperty.FlexMargin).Get(temp);
356             return temp;
357         }));
358
359         /// <summary>
360         /// CellIndexProperty
361         /// </summary>
362         [EditorBrowsable(EditorBrowsableState.Never)]
363         public static readonly BindableProperty CellIndexProperty = BindableProperty.Create(nameof(CellIndex), typeof(Vector2), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
364         {
365             var view = (View)bindable;
366             if (newValue != null)
367             {
368                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, TableView.ChildProperty.CellIndex, new Tizen.NUI.PropertyValue((Vector2)newValue));
369             }
370         }),
371         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
372         {
373             var view = (View)bindable;
374             Vector2 temp = new Vector2(0.0f, 0.0f);
375             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, TableView.ChildProperty.CellIndex).Get(temp);
376             return temp;
377         }));
378
379         /// <summary>
380         /// RowSpanProperty
381         /// </summary>
382         [EditorBrowsable(EditorBrowsableState.Never)]
383         public static readonly BindableProperty RowSpanProperty = BindableProperty.Create(nameof(RowSpan), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
384         {
385             var view = (View)bindable;
386             if (newValue != null)
387             {
388                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, TableView.ChildProperty.RowSpan, new Tizen.NUI.PropertyValue((float)newValue));
389             }
390         }),
391         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
392         {
393             var view = (View)bindable;
394             float temp = 0.0f;
395             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, TableView.ChildProperty.RowSpan).Get(out temp);
396             return temp;
397         }));
398
399         /// <summary>
400         /// ColumnSpanProperty
401         /// </summary>
402         [EditorBrowsable(EditorBrowsableState.Never)]
403         public static readonly BindableProperty ColumnSpanProperty = BindableProperty.Create(nameof(ColumnSpan), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
404         {
405             var view = (View)bindable;
406             if (newValue != null)
407             {
408                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, TableView.ChildProperty.ColumnSpan, new Tizen.NUI.PropertyValue((float)newValue));
409             }
410         }),
411         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
412         {
413             var view = (View)bindable;
414             float temp = 0.0f;
415             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, TableView.ChildProperty.ColumnSpan).Get(out temp);
416             return temp;
417         }));
418
419         /// <summary>
420         /// CellHorizontalAlignmentProperty
421         /// </summary>
422         [EditorBrowsable(EditorBrowsableState.Never)]
423         public static readonly BindableProperty CellHorizontalAlignmentProperty = BindableProperty.Create(nameof(CellHorizontalAlignment), typeof(HorizontalAlignmentType), typeof(View), HorizontalAlignmentType.Left, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
424         {
425             var view = (View)bindable;
426             string valueToString = "";
427
428             if (newValue != null)
429             {
430                 valueToString = ((HorizontalAlignmentType)newValue).GetDescription();
431                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, TableView.ChildProperty.CellHorizontalAlignment, new Tizen.NUI.PropertyValue(valueToString));
432             }
433         }),
434         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
435         {
436             var view = (View)bindable;
437             string temp;
438             if (Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, TableView.ChildProperty.CellHorizontalAlignment).Get(out temp) == false)
439             {
440                 NUILog.Error("CellHorizontalAlignment get error!");
441             }
442
443             return temp.GetValueByDescription<HorizontalAlignmentType>();
444         }));
445
446         /// <summary>
447         /// CellVerticalAlignmentProperty
448         /// </summary>
449         [EditorBrowsable(EditorBrowsableState.Never)]
450         public static readonly BindableProperty CellVerticalAlignmentProperty = BindableProperty.Create(nameof(CellVerticalAlignment), typeof(VerticalAlignmentType), typeof(View), VerticalAlignmentType.Top, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
451         {
452             var view = (View)bindable;
453             string valueToString = "";
454
455             if (newValue != null)
456             {
457                 valueToString = ((VerticalAlignmentType)newValue).GetDescription();
458                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, TableView.ChildProperty.CellVerticalAlignment, new Tizen.NUI.PropertyValue(valueToString));
459             }
460         }),
461         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
462         {
463             var view = (View)bindable;
464             string temp;
465             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, TableView.ChildProperty.CellVerticalAlignment).Get(out temp);
466             {
467                 NUILog.Error("CellVerticalAlignment get error!");
468             }
469
470             return temp.GetValueByDescription<VerticalAlignmentType>();
471         }));
472
473         /// <summary>
474         /// "Please DO NOT use! This will be deprecated! Please use 'View Weight' instead of BindableProperty"
475         /// This needs to be hidden as inhouse API until all applications using it have been updated.  Do not make public.
476         /// </summary>
477         [EditorBrowsable(EditorBrowsableState.Never)]
478         public static readonly BindableProperty WeightProperty = BindableProperty.Create(nameof(Weight), typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
479         {
480             var view = (View)bindable;
481             if (newValue != null)
482             {
483                 view.Weight = (float)newValue;
484             }
485         },
486
487         defaultValueCreator: (bindable) =>
488         {
489             var view = (View)bindable;
490             return view.Weight;
491         });
492
493         /// <summary>
494         /// LeftFocusableViewProperty
495         /// </summary>
496         [EditorBrowsable(EditorBrowsableState.Never)]
497         public static readonly BindableProperty LeftFocusableViewProperty = BindableProperty.Create(nameof(View.LeftFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
498         {
499             var view = (View)bindable;
500             if (newValue != null) { view.LeftFocusableViewId = (int)(newValue as View)?.GetId(); }
501             else { view.LeftFocusableViewId = -1; }
502         },
503         defaultValueCreator: (bindable) =>
504         {
505             var view = (View)bindable;
506             if (view.LeftFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.LeftFocusableViewId); }
507             return null;
508         });
509
510         /// <summary>
511         /// RightFocusableViewProperty
512         /// </summary>
513         [EditorBrowsable(EditorBrowsableState.Never)]
514         public static readonly BindableProperty RightFocusableViewProperty = BindableProperty.Create(nameof(View.RightFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
515         {
516             var view = (View)bindable;
517             if (newValue != null) { view.RightFocusableViewId = (int)(newValue as View)?.GetId(); }
518             else { view.RightFocusableViewId = -1; }
519         },
520         defaultValueCreator: (bindable) =>
521         {
522             var view = (View)bindable;
523             if (view.RightFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.RightFocusableViewId); }
524             return null;
525         });
526
527         /// <summary>
528         /// UpFocusableViewProperty
529         /// </summary>
530         [EditorBrowsable(EditorBrowsableState.Never)]
531         public static readonly BindableProperty UpFocusableViewProperty = BindableProperty.Create(nameof(View.UpFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
532         {
533             var view = (View)bindable;
534             if (newValue != null) { view.UpFocusableViewId = (int)(newValue as View)?.GetId(); }
535             else { view.UpFocusableViewId = -1; }
536         },
537         defaultValueCreator: (bindable) =>
538         {
539             var view = (View)bindable;
540             if (view.UpFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.UpFocusableViewId); }
541             return null;
542         });
543
544         /// <summary>
545         /// DownFocusableViewProperty
546         /// </summary>
547         [EditorBrowsable(EditorBrowsableState.Never)]
548         public static readonly BindableProperty DownFocusableViewProperty = BindableProperty.Create(nameof(View.DownFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
549         {
550             var view = (View)bindable;
551             if (newValue != null) { view.DownFocusableViewId = (int)(newValue as View)?.GetId(); }
552             else { view.DownFocusableViewId = -1; }
553         },
554         defaultValueCreator: (bindable) =>
555         {
556             var view = (View)bindable;
557             if (view.DownFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.DownFocusableViewId); }
558             return null;
559         });
560
561         /// <summary>
562         /// FocusableProperty
563         /// </summary>
564         [EditorBrowsable(EditorBrowsableState.Never)]
565         public static readonly BindableProperty FocusableProperty = BindableProperty.Create(nameof(Focusable), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
566         {
567             var view = (View)bindable;
568             if (newValue != null) { view.SetKeyboardFocusable((bool)newValue); }
569         },
570         defaultValueCreator: (bindable) =>
571         {
572             var view = (View)bindable;
573             return view.IsKeyboardFocusable();
574         });
575
576         /// <summary>
577         /// FocusableChildrenProperty
578         /// </summary>
579         [EditorBrowsable(EditorBrowsableState.Never)]
580         public static readonly BindableProperty FocusableChildrenProperty = BindableProperty.Create(nameof(FocusableChildren), typeof(bool), typeof(View), true, propertyChanged: (bindable, oldValue, newValue) =>
581         {
582             var view = (View)bindable;
583             if (newValue != null) { view.SetKeyboardFocusableChildren((bool)newValue); }
584         },
585         defaultValueCreator: (bindable) =>
586         {
587             var view = (View)bindable;
588             return view.AreChildrenKeyBoardFocusable();
589         });
590
591         /// <summary>
592         /// FocusableInTouchProperty
593         /// </summary>
594         [EditorBrowsable(EditorBrowsableState.Never)]
595         public static readonly BindableProperty FocusableInTouchProperty = BindableProperty.Create(nameof(FocusableInTouch), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
596         {
597             var view = (View)bindable;
598             if (newValue != null) { view.SetFocusableInTouch((bool)newValue); }
599         },
600         defaultValueCreator: (bindable) =>
601         {
602             var view = (View)bindable;
603             return view.IsFocusableInTouch();
604         });
605
606         /// <summary>
607         /// Size2DProperty
608         /// </summary>
609         [EditorBrowsable(EditorBrowsableState.Never)]
610         public static readonly BindableProperty Size2DProperty = BindableProperty.Create(nameof(Size2D), typeof(Size2D), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
611         {
612             var view = (View)bindable;
613             if (newValue != null)
614             {
615                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SIZE, new Tizen.NUI.PropertyValue(new Size((Size2D)newValue)));
616                 view.widthPolicy = ((Size2D)newValue).Width;
617                 view.heightPolicy = ((Size2D)newValue).Height;
618
619                 view.layout?.RequestLayout();
620             }
621         }),
622         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
623         {
624             var view = (View)bindable;
625             Size temp = new Size(0.0f, 0.0f, 0.0f);
626             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SIZE).Get(temp);
627             Size2D size = new Size2D((int)temp.Width, (int)temp.Height);
628             return size;
629         }));
630
631         /// <summary>
632         /// OpacityProperty
633         /// </summary>
634         [EditorBrowsable(EditorBrowsableState.Never)]
635         public static readonly BindableProperty OpacityProperty = BindableProperty.Create(nameof(Opacity), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
636         {
637             var view = (View)bindable;
638
639             view.themeData?.selectorData?.Opacity?.Reset(view);
640
641             if (newValue is Selector<float?> selector)
642             {
643                 if (selector.HasAll()) view.SetOpacity(selector.All);
644                 else view.EnsureSelectorData().Opacity = new TriggerableSelector<float?>(view, selector, view.SetOpacity, true);
645             }
646             else
647             {
648                 view.SetOpacity((float?)newValue);
649             }
650         }),
651         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
652         {
653             var view = (View)bindable;
654             float temp = 0.0f;
655             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.OPACITY).Get(out temp);
656             return temp;
657         }));
658
659         /// <summary>
660         /// Position2DProperty
661         /// </summary>
662         [EditorBrowsable(EditorBrowsableState.Never)]
663         public static readonly BindableProperty Position2DProperty = BindableProperty.Create(nameof(Position2D), typeof(Position2D), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
664         {
665             var view = (View)bindable;
666             if (newValue != null)
667             {
668                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.POSITION, new Tizen.NUI.PropertyValue(new Position((Position2D)newValue)));
669             }
670         }),
671         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
672         {
673             var view = (View)bindable;
674             Position temp = new Position(0.0f, 0.0f, 0.0f);
675             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.POSITION).Get(temp);
676             return new Position2D(temp);
677         }));
678
679         /// <summary>
680         /// PositionUsesPivotPointProperty
681         /// </summary>
682         [EditorBrowsable(EditorBrowsableState.Never)]
683         public static readonly BindableProperty PositionUsesPivotPointProperty = BindableProperty.Create(nameof(PositionUsesPivotPoint), typeof(bool), typeof(View), true, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
684         {
685             var view = (View)bindable;
686             if (newValue != null)
687             {
688                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.PositionUsesAnchorPoint, new Tizen.NUI.PropertyValue((bool)newValue));
689             }
690         }),
691         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
692         {
693             var view = (View)bindable;
694             bool temp = false;
695             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.PositionUsesAnchorPoint).Get(out temp);
696             return temp;
697         }));
698
699         /// <summary>
700         /// SiblingOrderProperty
701         /// </summary>
702         [EditorBrowsable(EditorBrowsableState.Never)]
703         public static readonly BindableProperty SiblingOrderProperty = BindableProperty.Create(nameof(SiblingOrder), typeof(int), typeof(View), default(int), propertyChanged: (bindable, oldValue, newValue) =>
704         {
705             var view = (View)bindable;
706             int value;
707             if (newValue != null)
708             {
709                 value = (int)newValue;
710                 if (value < 0)
711                 {
712                     NUILog.Error("SiblingOrder should be bigger than 0 or equal to 0.");
713                     return;
714                 }
715                 var siblings = view.GetParent()?.Children;
716                 if (siblings != null)
717                 {
718                     int currentOrder = siblings.IndexOf(view);
719                     if (value != currentOrder)
720                     {
721                         if (value == 0) { view.LowerToBottom(); }
722                         else if (value < siblings.Count - 1)
723                         {
724                             if (value > currentOrder) { view.RaiseAbove(siblings[value]); }
725                             else { view.LowerBelow(siblings[value]); }
726                         }
727                         else { view.RaiseToTop(); }
728                     }
729                 }
730             }
731         },
732         defaultValueCreator: (bindable) =>
733         {
734             var view = (View)bindable;
735             var parentChildren = view.GetParent()?.Children;
736             int currentOrder = 0;
737             if (parentChildren != null)
738             {
739                 currentOrder = parentChildren.IndexOf(view);
740
741                 if (currentOrder < 0) { return 0; }
742                 else if (currentOrder < parentChildren.Count) { return currentOrder; }
743             }
744
745             return 0;
746         });
747
748         /// <summary>
749         /// ParentOriginProperty
750         /// </summary>
751         [EditorBrowsable(EditorBrowsableState.Never)]
752         public static readonly BindableProperty ParentOriginProperty = BindableProperty.Create(nameof(ParentOrigin), typeof(Position), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
753         {
754             var view = (View)bindable;
755             if (newValue != null)
756             {
757                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ParentOrigin, new Tizen.NUI.PropertyValue((Position)newValue));
758             }
759         }),
760         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
761         {
762             var view = (View)bindable;
763             Position temp = new Position(0.0f, 0.0f, 0.0f);
764             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ParentOrigin).Get(temp);
765             return temp;
766         })
767         );
768
769         /// <summary>
770         /// PivotPointProperty
771         /// </summary>
772         [EditorBrowsable(EditorBrowsableState.Never)]
773         public static readonly BindableProperty PivotPointProperty = BindableProperty.Create(nameof(PivotPoint), typeof(Position), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
774         {
775             var view = (View)bindable;
776             if (newValue != null)
777             {
778                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AnchorPoint, new Tizen.NUI.PropertyValue((Position)newValue));
779             }
780         }),
781         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
782         {
783             var view = (View)bindable;
784             Position temp = new Position(0.0f, 0.0f, 0.0f);
785             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AnchorPoint).Get(temp);
786             return temp;
787         }));
788
789         /// <summary>
790         /// SizeWidthProperty
791         /// </summary>
792         [EditorBrowsable(EditorBrowsableState.Never)]
793         public static readonly BindableProperty SizeWidthProperty = BindableProperty.Create(nameof(SizeWidth), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
794         {
795             var view = (View)bindable;
796             if (newValue != null)
797             {
798                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeWidth, new Tizen.NUI.PropertyValue((float)newValue));
799                 view.WidthSpecification = (int)System.Math.Ceiling((float)newValue);
800             }
801         }),
802         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
803         {
804             var view = (View)bindable;
805             float temp = 0.0f;
806             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeWidth).Get(out temp);
807             return temp;
808         }));
809
810         /// <summary>
811         /// SizeHeightProperty
812         /// </summary>
813         [EditorBrowsable(EditorBrowsableState.Never)]
814         public static readonly BindableProperty SizeHeightProperty = BindableProperty.Create(nameof(SizeHeight), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
815         {
816             var view = (View)bindable;
817             if (newValue != null)
818             {
819                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeHeight, new Tizen.NUI.PropertyValue((float)newValue));
820                 view.HeightSpecification = (int)System.Math.Ceiling((float)newValue);
821             }
822         }),
823         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
824         {
825             var view = (View)bindable;
826             float temp = 0.0f;
827             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeHeight).Get(out temp);
828             return temp;
829         }));
830
831         /// <summary>
832         /// PositionProperty
833         /// </summary>
834         [EditorBrowsable(EditorBrowsableState.Never)]
835         public static readonly BindableProperty PositionProperty = BindableProperty.Create(nameof(Position), typeof(Position), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
836         {
837             var view = (View)bindable;
838             if (newValue != null)
839             {
840                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.POSITION, new Tizen.NUI.PropertyValue((Position)newValue));
841             }
842         }),
843         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
844         {
845             var view = (View)bindable;
846             Position temp = new Position(0.0f, 0.0f, 0.0f);
847             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.POSITION).Get(temp);
848             return temp;
849         }));
850
851         /// <summary>
852         /// PositionXProperty
853         /// </summary>
854         [EditorBrowsable(EditorBrowsableState.Never)]
855         public static readonly BindableProperty PositionXProperty = BindableProperty.Create(nameof(PositionX), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
856         {
857             var view = (View)bindable;
858             if (newValue != null)
859             {
860                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.PositionX, new Tizen.NUI.PropertyValue((float)newValue));
861             }
862         }),
863         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
864         {
865             var view = (View)bindable;
866             float temp = 0.0f;
867             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.PositionX).Get(out temp);
868             return temp;
869         }));
870
871         /// <summary>
872         /// PositionYProperty
873         /// </summary>
874         [EditorBrowsable(EditorBrowsableState.Never)]
875         public static readonly BindableProperty PositionYProperty = BindableProperty.Create(nameof(PositionY), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
876         {
877             var view = (View)bindable;
878             if (newValue != null)
879             {
880                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.PositionY, new Tizen.NUI.PropertyValue((float)newValue));
881             }
882         }),
883         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
884         {
885             var view = (View)bindable;
886             float temp = 0.0f;
887             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.PositionY).Get(out temp);
888             return temp;
889         }));
890
891         /// <summary>
892         /// PositionZProperty
893         /// </summary>
894         [EditorBrowsable(EditorBrowsableState.Never)]
895         public static readonly BindableProperty PositionZProperty = BindableProperty.Create(nameof(PositionZ), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
896         {
897             var view = (View)bindable;
898             if (newValue != null)
899             {
900                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.PositionZ, new Tizen.NUI.PropertyValue((float)newValue));
901             }
902         }),
903         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
904         {
905             var view = (View)bindable;
906             float temp = 0.0f;
907             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.PositionZ).Get(out temp);
908             return temp;
909         }));
910
911         /// <summary>
912         /// OrientationProperty
913         /// </summary>
914         [EditorBrowsable(EditorBrowsableState.Never)]
915         public static readonly BindableProperty OrientationProperty = BindableProperty.Create(nameof(Orientation), typeof(Rotation), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
916         {
917             var view = (View)bindable;
918             if (newValue != null)
919             {
920                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ORIENTATION, new Tizen.NUI.PropertyValue((Rotation)newValue));
921             }
922         }),
923         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
924         {
925             var view = (View)bindable;
926             Rotation temp = new Rotation();
927             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ORIENTATION).Get(temp);
928             return temp;
929         }));
930
931         /// <summary>
932         /// ScaleProperty
933         /// </summary>
934         [EditorBrowsable(EditorBrowsableState.Never)]
935         public static readonly BindableProperty ScaleProperty = BindableProperty.Create(nameof(Scale), typeof(Vector3), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
936         {
937             var view = (View)bindable;
938             if (newValue != null)
939             {
940                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SCALE, new Tizen.NUI.PropertyValue((Vector3)newValue));
941             }
942         }),
943         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
944         {
945             var view = (View)bindable;
946             Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
947             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SCALE).Get(temp);
948             return temp;
949         }));
950
951         /// <summary>
952         /// ScaleXProperty
953         /// </summary>
954         [EditorBrowsable(EditorBrowsableState.Never)]
955         public static readonly BindableProperty ScaleXProperty = BindableProperty.Create(nameof(ScaleX), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
956         {
957             var view = (View)bindable;
958             if (newValue != null)
959             {
960                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ScaleX, new Tizen.NUI.PropertyValue((float)newValue));
961             }
962         }),
963         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
964         {
965             var view = (View)bindable;
966             float temp = 0.0f;
967             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ScaleX).Get(out temp);
968             return temp;
969         }));
970
971         /// <summary>
972         /// ScaleYProperty
973         /// </summary>
974         [EditorBrowsable(EditorBrowsableState.Never)]
975         public static readonly BindableProperty ScaleYProperty = BindableProperty.Create(nameof(ScaleY), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
976         {
977             var view = (View)bindable;
978             if (newValue != null)
979             {
980                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ScaleY, new Tizen.NUI.PropertyValue((float)newValue));
981             }
982         }),
983         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
984         {
985             var view = (View)bindable;
986             float temp = 0.0f;
987             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ScaleY).Get(out temp);
988             return temp;
989         }));
990
991         /// <summary>
992         /// ScaleZProperty
993         /// </summary>
994         [EditorBrowsable(EditorBrowsableState.Never)]
995         public static readonly BindableProperty ScaleZProperty = BindableProperty.Create(nameof(ScaleZ), typeof(float), typeof(View), default(float), propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
996         {
997             var view = (View)bindable;
998             if (newValue != null)
999             {
1000                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ScaleZ, new Tizen.NUI.PropertyValue((float)newValue));
1001             }
1002         }),
1003         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1004         {
1005             var view = (View)bindable;
1006             float temp = 0.0f;
1007             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ScaleZ).Get(out temp);
1008             return temp;
1009         }));
1010
1011         /// <summary>
1012         /// NameProperty
1013         /// </summary>
1014         [EditorBrowsable(EditorBrowsableState.Never)]
1015         public static readonly BindableProperty NameProperty = BindableProperty.Create(nameof(Name), typeof(string), typeof(View), string.Empty, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1016         {
1017             var view = (View)bindable;
1018             if (newValue != null)
1019             {
1020                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.NAME, new Tizen.NUI.PropertyValue((string)newValue));
1021             }
1022         }),
1023         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1024         {
1025             var view = (View)bindable;
1026             string temp;
1027             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.NAME).Get(out temp);
1028             return temp;
1029         }));
1030
1031         /// <summary>
1032         /// SensitiveProperty
1033         /// </summary>
1034         [EditorBrowsable(EditorBrowsableState.Never)]
1035         public static readonly BindableProperty SensitiveProperty = BindableProperty.Create(nameof(Sensitive), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1036         {
1037             var view = (View)bindable;
1038             if (newValue != null)
1039             {
1040                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SENSITIVE, new Tizen.NUI.PropertyValue((bool)newValue));
1041             }
1042         }),
1043         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1044         {
1045             var view = (View)bindable;
1046             bool temp = false;
1047             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SENSITIVE).Get(out temp);
1048             return temp;
1049         }));
1050
1051         /// <summary>
1052         /// LeaveRequiredProperty
1053         /// </summary>
1054         [EditorBrowsable(EditorBrowsableState.Never)]
1055         public static readonly BindableProperty LeaveRequiredProperty = BindableProperty.Create(nameof(LeaveRequired), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1056         {
1057             var view = (View)bindable;
1058             if (newValue != null)
1059             {
1060                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.LeaveRequired, new Tizen.NUI.PropertyValue((bool)newValue));
1061             }
1062         }),
1063         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1064         {
1065             var view = (View)bindable;
1066             bool temp = false;
1067             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.LeaveRequired).Get(out temp);
1068             return temp;
1069         }));
1070
1071         /// <summary>
1072         /// InheritOrientationProperty
1073         /// </summary>
1074         [EditorBrowsable(EditorBrowsableState.Never)]
1075         public static readonly BindableProperty InheritOrientationProperty = BindableProperty.Create(nameof(InheritOrientation), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1076         {
1077             var view = (View)bindable;
1078             if (newValue != null)
1079             {
1080                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.InheritOrientation, new Tizen.NUI.PropertyValue((bool)newValue));
1081             }
1082         }),
1083         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1084         {
1085             var view = (View)bindable;
1086             bool temp = false;
1087             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.InheritOrientation).Get(out temp);
1088             return temp;
1089         }));
1090
1091         /// <summary>
1092         /// InheritScaleProperty
1093         /// </summary>
1094         [EditorBrowsable(EditorBrowsableState.Never)]
1095         public static readonly BindableProperty InheritScaleProperty = BindableProperty.Create(nameof(InheritScale), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1096         {
1097             var view = (View)bindable;
1098             if (newValue != null)
1099             {
1100                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.InheritScale, new Tizen.NUI.PropertyValue((bool)newValue));
1101             }
1102         }),
1103         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1104         {
1105             var view = (View)bindable;
1106             bool temp = false;
1107             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.InheritScale).Get(out temp);
1108             return temp;
1109         }));
1110
1111         /// <summary>
1112         /// DrawModeProperty
1113         /// </summary>
1114         [EditorBrowsable(EditorBrowsableState.Never)]
1115         public static readonly BindableProperty DrawModeProperty = BindableProperty.Create(nameof(DrawMode), typeof(DrawModeType), typeof(View), DrawModeType.Normal, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1116         {
1117             var view = (View)bindable;
1118             if (newValue != null)
1119             {
1120                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.DrawMode, new Tizen.NUI.PropertyValue((int)newValue));
1121             }
1122         }),
1123         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1124         {
1125             var view = (View)bindable;
1126             int temp;
1127             if (Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.DrawMode).Get(out temp) == false)
1128             {
1129                 NUILog.Error("DrawMode get error!");
1130             }
1131             return (DrawModeType)temp;
1132         }));
1133
1134         /// <summary>
1135         /// SizeModeFactorProperty
1136         /// </summary>
1137         [EditorBrowsable(EditorBrowsableState.Never)]
1138         public static readonly BindableProperty SizeModeFactorProperty = BindableProperty.Create(nameof(SizeModeFactor), typeof(Vector3), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1139         {
1140             var view = (View)bindable;
1141             if (newValue != null)
1142             {
1143                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeModeFactor, new Tizen.NUI.PropertyValue((Vector3)newValue));
1144             }
1145         }),
1146         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1147         {
1148             var view = (View)bindable;
1149             Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
1150             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeModeFactor).Get(temp);
1151             return temp;
1152         }));
1153
1154         /// <summary>
1155         /// WidthResizePolicyProperty
1156         /// </summary>
1157         [EditorBrowsable(EditorBrowsableState.Never)]
1158         public static readonly BindableProperty WidthResizePolicyProperty = BindableProperty.Create(nameof(WidthResizePolicy), typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1159         {
1160             var view = (View)bindable;
1161             if (newValue != null)
1162             {
1163                 if((ResizePolicyType)newValue == ResizePolicyType.KeepSizeFollowingParent)
1164                 {
1165                     if(view.widthConstraint == null)
1166                     {
1167                         view.widthConstraint = new EqualConstraintWithParentFloat((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeWidth, View.Property.SizeWidth);
1168                         view.widthConstraint.Apply();
1169                     }
1170                     Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.WidthResizePolicy, new Tizen.NUI.PropertyValue((int)ResizePolicyType.FillToParent));
1171                 }
1172                 else
1173                 {
1174                     view.widthConstraint?.Remove();
1175                     view.widthConstraint?.Dispose();
1176                     view.widthConstraint = null;
1177                     Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.WidthResizePolicy, new Tizen.NUI.PropertyValue((int)newValue));
1178                 }
1179                 // Match ResizePolicy to new Layouting.
1180                 // Parent relative policies can not be mapped at this point as parent size unknown.
1181                 switch ((ResizePolicyType)newValue)
1182                 {
1183                     case ResizePolicyType.UseNaturalSize:
1184                         {
1185                             view.WidthSpecification = LayoutParamPolicies.WrapContent;
1186                             break;
1187                         }
1188                     case ResizePolicyType.FillToParent:
1189                         {
1190                             view.WidthSpecification = LayoutParamPolicies.MatchParent;
1191                             break;
1192                         }
1193                     case ResizePolicyType.FitToChildren:
1194                         {
1195                             view.WidthSpecification = LayoutParamPolicies.WrapContent;
1196                             break;
1197                         }
1198                     default:
1199                         break;
1200                 }
1201             }
1202         }),
1203         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1204         {
1205             var view = (View)bindable;
1206             string temp;
1207             if (Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.WidthResizePolicy).Get(out temp) == false)
1208             {
1209                 NUILog.Error("WidthResizePolicy get error!");
1210             }
1211             return temp.GetValueByDescription<ResizePolicyType>();
1212         }));
1213
1214         /// <summary>
1215         /// HeightResizePolicyProperty
1216         /// </summary>
1217         [EditorBrowsable(EditorBrowsableState.Never)]
1218         public static readonly BindableProperty HeightResizePolicyProperty = BindableProperty.Create(nameof(HeightResizePolicy), typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1219         {
1220             var view = (View)bindable;
1221             if (newValue != null)
1222             {
1223                 if((ResizePolicyType)newValue == ResizePolicyType.KeepSizeFollowingParent)
1224                 {
1225                     if(view.heightConstraint == null)
1226                     {
1227                         view.heightConstraint = new EqualConstraintWithParentFloat((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeHeight, View.Property.SizeHeight);
1228                         view.heightConstraint.Apply();
1229                     }
1230                     Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.HeightResizePolicy, new Tizen.NUI.PropertyValue((int)ResizePolicyType.FillToParent));
1231                 }
1232                 else
1233                 {
1234                     view.heightConstraint?.Remove();
1235                     view.heightConstraint?.Dispose();
1236                     view.heightConstraint = null;
1237                     Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.HeightResizePolicy, new Tizen.NUI.PropertyValue((int)newValue));
1238                 }
1239                 // Match ResizePolicy to new Layouting.
1240                 // Parent relative policies can not be mapped at this point as parent size unknown.
1241                 switch ((ResizePolicyType)newValue)
1242                 {
1243                     case ResizePolicyType.UseNaturalSize:
1244                         {
1245                             view.HeightSpecification = LayoutParamPolicies.WrapContent;
1246                             break;
1247                         }
1248                     case ResizePolicyType.FillToParent:
1249                         {
1250                             view.HeightSpecification = LayoutParamPolicies.MatchParent;
1251                             break;
1252                         }
1253                     case ResizePolicyType.FitToChildren:
1254                         {
1255                             view.HeightSpecification = LayoutParamPolicies.WrapContent;
1256                             break;
1257                         }
1258                     default:
1259                         break;
1260                 }
1261             }
1262         }),
1263         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1264         {
1265             var view = (View)bindable;
1266             string temp;
1267             if (Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.HeightResizePolicy).Get(out temp) == false)
1268             {
1269                 NUILog.Error("HeightResizePolicy get error!");
1270             }
1271             return temp.GetValueByDescription<ResizePolicyType>();
1272         }));
1273
1274         /// <summary>
1275         /// SizeScalePolicyProperty
1276         /// </summary>
1277         [EditorBrowsable(EditorBrowsableState.Never)]
1278         public static readonly BindableProperty SizeScalePolicyProperty = BindableProperty.Create(nameof(SizeScalePolicy), typeof(SizeScalePolicyType), typeof(View), SizeScalePolicyType.UseSizeSet, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1279         {
1280             var view = (View)bindable;
1281             string valueToString = "";
1282             if (newValue != null)
1283             {
1284                 valueToString = ((SizeScalePolicyType)newValue).GetDescription();
1285                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeScalePolicy, new Tizen.NUI.PropertyValue(valueToString));
1286             }
1287         }),
1288         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1289         {
1290             var view = (View)bindable;
1291             int temp;
1292             if (Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SizeScalePolicy).Get(out temp) == false)
1293             {
1294                 NUILog.Error("SizeScalePolicy get error!");
1295             }
1296             return (SizeScalePolicyType)temp;
1297         }));
1298
1299         /// <summary>
1300         /// WidthForHeightProperty
1301         /// </summary>
1302         [EditorBrowsable(EditorBrowsableState.Never)]
1303         public static readonly BindableProperty WidthForHeightProperty = BindableProperty.Create(nameof(WidthForHeight), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1304         {
1305             var view = (View)bindable;
1306             if (newValue != null)
1307             {
1308                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.WidthForHeight, new Tizen.NUI.PropertyValue((bool)newValue));
1309             }
1310         }),
1311         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1312         {
1313             var view = (View)bindable;
1314             bool temp = false;
1315             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.WidthForHeight).Get(out temp);
1316             return temp;
1317         }));
1318
1319         /// <summary>
1320         /// HeightForWidthProperty
1321         /// </summary>
1322         [EditorBrowsable(EditorBrowsableState.Never)]
1323         public static readonly BindableProperty HeightForWidthProperty = BindableProperty.Create(nameof(HeightForWidth), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1324         {
1325             var view = (View)bindable;
1326             if (newValue != null)
1327             {
1328                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.HeightForWidth, new Tizen.NUI.PropertyValue((bool)newValue));
1329             }
1330         }),
1331         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1332         {
1333             var view = (View)bindable;
1334             bool temp = false;
1335             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.HeightForWidth).Get(out temp);
1336             return temp;
1337         }));
1338
1339         /// <summary>
1340         /// PaddingProperty
1341         /// </summary>
1342         [EditorBrowsable(EditorBrowsableState.Never)]
1343         public static readonly BindableProperty PaddingProperty = BindableProperty.Create(nameof(Padding), typeof(Extents), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1344         {
1345             var view = (View)bindable;
1346             if (newValue != null)
1347             {
1348                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.PADDING, new Tizen.NUI.PropertyValue((Extents)newValue));
1349             }
1350         }),
1351         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1352         {
1353             var view = (View)bindable;
1354             Extents temp = new Extents(0, 0, 0, 0);
1355             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.PADDING).Get(temp);
1356             return temp;
1357         }));
1358
1359         /// <summary>
1360         /// SizeProperty
1361         /// </summary>
1362         [EditorBrowsable(EditorBrowsableState.Never)]
1363         public static readonly BindableProperty SizeProperty = BindableProperty.Create(nameof(Size), typeof(Size), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1364         {
1365             var view = (View)bindable;
1366             if (newValue != null)
1367             {
1368                 Size size = (Size)newValue;
1369                 // Set Specification so when layouts measure this View it matches the value set here.
1370                 // All Views are currently Layouts.
1371                 view.WidthSpecification = (int)System.Math.Ceiling(size.Width);
1372                 view.HeightSpecification = (int)System.Math.Ceiling(size.Height);
1373                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SIZE, new Tizen.NUI.PropertyValue(size));
1374             }
1375         }),
1376         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1377         {
1378             var view = (View)bindable;
1379             Size temp = new Size(0, 0, 0);
1380             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SIZE).Get(temp);
1381             return temp;
1382         }));
1383
1384         /// <summary>
1385         /// MinimumSizeProperty
1386         /// </summary>
1387         [EditorBrowsable(EditorBrowsableState.Never)]
1388         public static readonly BindableProperty MinimumSizeProperty = BindableProperty.Create(nameof(MinimumSize), typeof(Size2D), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1389         {
1390             var view = (View)bindable;
1391             Size2D temp = newValue as Size2D;
1392             if (temp != null)
1393             {
1394                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.MinimumSize, new Tizen.NUI.PropertyValue(temp));
1395             }
1396             else
1397             {
1398                 Tizen.Log.Fatal("NUI", $"[ERROR] can't set MinimumSizeProperty!");
1399             }
1400         }),
1401         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1402         {
1403             var view = (View)bindable;
1404             Size2D temp = new Size2D(0, 0);
1405             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.MinimumSize).Get(temp);
1406             return temp;
1407         }));
1408
1409         /// <summary>
1410         /// MaximumSizeProperty
1411         /// </summary>
1412         [EditorBrowsable(EditorBrowsableState.Never)]
1413         public static readonly BindableProperty MaximumSizeProperty = BindableProperty.Create(nameof(MaximumSize), typeof(Size2D), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1414         {
1415             var view = (View)bindable;
1416             Size2D temp = newValue as Size2D;
1417             if (temp != null)
1418             {
1419                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.MaximumSize, new Tizen.NUI.PropertyValue(temp));
1420             }
1421             else
1422             {
1423                 Tizen.Log.Fatal("NUI", $"[ERROR] can't set MaximumSizeProperty!");
1424             }
1425         }),
1426         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1427         {
1428             var view = (View)bindable;
1429             Size2D temp = new Size2D(0, 0);
1430             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.MaximumSize).Get(temp);
1431             return temp;
1432         }));
1433
1434         /// <summary>
1435         /// InheritPositionProperty
1436         /// </summary>
1437         [EditorBrowsable(EditorBrowsableState.Never)]
1438         public static readonly BindableProperty InheritPositionProperty = BindableProperty.Create(nameof(InheritPosition), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1439         {
1440             var view = (View)bindable;
1441             if (newValue != null)
1442             {
1443                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.InheritPosition, new Tizen.NUI.PropertyValue((bool)newValue));
1444             }
1445         }),
1446         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1447         {
1448             var view = (View)bindable;
1449             bool temp = false;
1450             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.InheritPosition).Get(out temp);
1451             return temp;
1452         }));
1453
1454         /// <summary>
1455         /// ClippingModeProperty
1456         /// </summary>
1457         [EditorBrowsable(EditorBrowsableState.Never)]
1458         public static readonly BindableProperty ClippingModeProperty = BindableProperty.Create(nameof(ClippingMode), typeof(ClippingModeType), typeof(View), ClippingModeType.Disabled, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1459         {
1460             var view = (View)bindable;
1461             if (newValue != null)
1462             {
1463                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ClippingMode, new Tizen.NUI.PropertyValue((int)newValue));
1464             }
1465         }),
1466         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1467         {
1468             var view = (View)bindable;
1469             int temp = 0;
1470             if (Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.ClippingMode).Get(out temp) == false)
1471             {
1472                 NUILog.Error("ClippingMode get error!");
1473             }
1474             return (ClippingModeType)temp;
1475         }));
1476
1477         /// <summary>
1478         /// InheritLayoutDirectionProperty
1479         /// </summary>
1480         [EditorBrowsable(EditorBrowsableState.Never)]
1481         public static readonly BindableProperty InheritLayoutDirectionProperty = BindableProperty.Create(nameof(InheritLayoutDirection), typeof(bool), typeof(View), false, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1482         {
1483             var view = (View)bindable;
1484             if (newValue != null)
1485             {
1486                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.InheritLayoutDirection, new Tizen.NUI.PropertyValue((bool)newValue));
1487             }
1488         }),
1489         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1490         {
1491             var view = (View)bindable;
1492             bool temp = false;
1493             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.InheritLayoutDirection).Get(out temp);
1494             return temp;
1495         }));
1496
1497         /// <summary>
1498         /// LayoutDirectionProperty
1499         /// </summary>
1500         [EditorBrowsable(EditorBrowsableState.Never)]
1501         public static readonly BindableProperty LayoutDirectionProperty = BindableProperty.Create(nameof(LayoutDirection), typeof(ViewLayoutDirectionType), typeof(View), ViewLayoutDirectionType.LTR, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1502         {
1503             var view = (View)bindable;
1504             if (newValue != null)
1505             {
1506                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.LayoutDirection, new Tizen.NUI.PropertyValue((int)newValue));
1507             }
1508         }),
1509         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1510         {
1511             var view = (View)bindable;
1512             int temp;
1513             if (false == Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.LayoutDirection).Get(out temp))
1514             {
1515                 NUILog.Error("LAYOUT_DIRECTION get error!");
1516             }
1517             return (ViewLayoutDirectionType)temp;
1518         }));
1519
1520         /// <summary>
1521         /// MarginProperty
1522         /// </summary>
1523         [EditorBrowsable(EditorBrowsableState.Never)]
1524         public static readonly BindableProperty MarginProperty = BindableProperty.Create(nameof(Margin), typeof(Extents), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1525         {
1526             var view = (View)bindable;
1527             if (newValue != null)
1528             {
1529                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.MARGIN, new Tizen.NUI.PropertyValue((Extents)newValue));
1530             }
1531         }),
1532         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1533         {
1534             var view = (View)bindable;
1535             Extents temp = new Extents(0, 0, 0, 0);
1536             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.MARGIN).Get(temp);
1537             return temp;
1538         }));
1539
1540         /// <summary>
1541         /// UpdateSizeHintProperty
1542         /// </summary>
1543         [EditorBrowsable(EditorBrowsableState.Never)]
1544         public static readonly BindableProperty UpdateSizeHintProperty = BindableProperty.Create(nameof(UpdateSizeHint), typeof(Vector2), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1545         {
1546             var view = (View)bindable;
1547             if (newValue != null)
1548             {
1549                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, Interop.ViewProperty.UpdateSizeHintGet(), new Tizen.NUI.PropertyValue((Vector2)newValue));
1550             }
1551         }),
1552         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1553         {
1554             var view = (View)bindable;
1555
1556             Vector2 temp = new Vector2(0.0f, 0.0f);
1557             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, Interop.ViewProperty.UpdateSizeHintGet()).Get(temp);
1558             return temp;
1559         }));
1560
1561         /// <summary>
1562         /// ImageShadow Property
1563         /// </summary>
1564         [EditorBrowsable(EditorBrowsableState.Never)]
1565         public static readonly BindableProperty ImageShadowProperty = BindableProperty.Create(nameof(ImageShadow), typeof(ImageShadow), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1566         {
1567             var view = (View)bindable;
1568
1569             view.themeData?.selectorData?.ClearShadow(view);
1570
1571             if (newValue is Selector<ImageShadow> selector)
1572             {
1573                 if (selector.HasAll()) view.SetShadow(selector.All);
1574                 else view.EnsureSelectorData().ImageShadow = new TriggerableSelector<ImageShadow>(view, selector, view.SetShadow, true);
1575             }
1576             else
1577             {
1578                 view.SetShadow((ImageShadow)newValue);
1579             }
1580         }),
1581         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1582         {
1583             var view = (View)bindable;
1584
1585             PropertyMap map = new PropertyMap();
1586             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SHADOW).Get(map);
1587
1588             var shadow = new ImageShadow(map);
1589             return shadow.IsEmpty() ? null : shadow;
1590         }));
1591
1592         /// <summary>
1593         /// Shadow Property
1594         /// </summary>
1595         [EditorBrowsable(EditorBrowsableState.Never)]
1596         public static readonly BindableProperty BoxShadowProperty = BindableProperty.Create(nameof(BoxShadow), typeof(Shadow), typeof(View), null, propertyChanged: (BindableProperty.BindingPropertyChangedDelegate)((bindable, oldValue, newValue) =>
1597         {
1598             var view = (View)bindable;
1599
1600             view.themeData?.selectorData?.ClearShadow(view);
1601
1602             if (newValue is Selector<Shadow> selector)
1603             {
1604                 if (selector.HasAll()) view.SetShadow(selector.All);
1605                 else view.EnsureSelectorData().BoxShadow = new TriggerableSelector<Shadow>(view, selector, view.SetShadow, true);
1606             }
1607             else
1608             {
1609                 view.SetShadow((Shadow)newValue);
1610             }
1611         }),
1612         defaultValueCreator: (BindableProperty.CreateDefaultValueDelegate)((bindable) =>
1613         {
1614             var view = (View)bindable;
1615
1616             PropertyMap map = new PropertyMap();
1617             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.SHADOW).Get(map);
1618
1619             var shadow = new Shadow(map);
1620             return shadow.IsEmpty() ? null : shadow;
1621         }));
1622
1623         /// <summary>
1624         /// CornerRadius Property
1625         /// </summary>
1626         [EditorBrowsable(EditorBrowsableState.Never)]
1627         public static readonly BindableProperty CornerRadiusProperty = BindableProperty.Create(nameof(CornerRadius), typeof(Vector4), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1628         {
1629             var view = (View)bindable;
1630             (view.backgroundExtraData ?? (view.backgroundExtraData = new BackgroundExtraData())).CornerRadius = (Vector4)newValue;
1631             view.ApplyCornerRadius();
1632         },
1633         defaultValueCreator: (bindable) =>
1634         {
1635             var view = (View)bindable;
1636             return view.backgroundExtraData == null ? 0.0f : view.backgroundExtraData.CornerRadius;
1637         });
1638
1639         /// <summary>
1640         /// CornerRadiusPolicy Property
1641         /// </summary>
1642         [EditorBrowsable(EditorBrowsableState.Never)]
1643         public static readonly BindableProperty CornerRadiusPolicyProperty = BindableProperty.Create(nameof(CornerRadiusPolicy), typeof(VisualTransformPolicyType), typeof(View), VisualTransformPolicyType.Absolute, propertyChanged: (bindable, oldValue, newValue) =>
1644         {
1645             var view = (View)bindable;
1646             (view.backgroundExtraData ?? (view.backgroundExtraData = new BackgroundExtraData())).CornerRadiusPolicy = (VisualTransformPolicyType)newValue;
1647
1648             if (view.backgroundExtraData.CornerRadius != null)
1649             {
1650                 view.ApplyCornerRadius();
1651             }
1652         },
1653         defaultValueCreator: (bindable) =>
1654         {
1655             var view = (View)bindable;
1656             return view.backgroundExtraData == null ? VisualTransformPolicyType.Absolute : view.backgroundExtraData.CornerRadiusPolicy;
1657         });
1658
1659         /// <summary>
1660         /// BorderlineWidth Property
1661         /// </summary>
1662         [EditorBrowsable(EditorBrowsableState.Never)]
1663         public static readonly BindableProperty BorderlineWidthProperty = BindableProperty.Create(nameof(BorderlineWidth), typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
1664         {
1665             var view = (View)bindable;
1666             (view.backgroundExtraData ?? (view.backgroundExtraData = new BackgroundExtraData())).BorderlineWidth = (float)newValue;
1667             view.ApplyBorderline();
1668         },
1669         defaultValueCreator: (bindable) =>
1670         {
1671             var view = (View)bindable;
1672             return view.backgroundExtraData == null ? 0.0f : view.backgroundExtraData.BorderlineWidth;
1673         });
1674
1675         /// <summary>
1676         /// BorderlineColor Property
1677         /// </summary>
1678         [EditorBrowsable(EditorBrowsableState.Never)]
1679         public static readonly BindableProperty BorderlineColorProperty = BindableProperty.Create(nameof(BorderlineColor), typeof(Color), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1680         {
1681             var view = (View)bindable;
1682             (view.backgroundExtraData ?? (view.backgroundExtraData = new BackgroundExtraData())).BorderlineColor = (Color)newValue;
1683             view.ApplyBorderline();
1684         },
1685         defaultValueCreator: (bindable) =>
1686         {
1687             var view = (View)bindable;
1688             return view.backgroundExtraData == null ? Color.Black : view.backgroundExtraData.BorderlineColor;
1689         });
1690
1691         /// <summary>
1692         /// BorderlineOffset Property
1693         /// </summary>
1694         [EditorBrowsable(EditorBrowsableState.Never)]
1695         public static readonly BindableProperty BorderlineOffsetProperty = BindableProperty.Create(nameof(BorderlineOffset), typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
1696         {
1697             var view = (View)bindable;
1698             (view.backgroundExtraData ?? (view.backgroundExtraData = new BackgroundExtraData())).BorderlineOffset = (float)newValue;
1699             view.ApplyBorderline();
1700         },
1701         defaultValueCreator: (bindable) =>
1702         {
1703             var view = (View)bindable;
1704             return view.backgroundExtraData == null ? 0.0f : view.backgroundExtraData.BorderlineOffset;
1705         });
1706
1707         /// <summary>
1708         /// EnableControlState property
1709         /// </summary>
1710         [EditorBrowsable(EditorBrowsableState.Never)]
1711         public static readonly BindableProperty EnableControlStateProperty = BindableProperty.Create(nameof(EnableControlState), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1712         {
1713             var view = (View)bindable;
1714             bool prev = view.enableControlState;
1715             view.enableControlState = (bool)newValue;
1716
1717             if (prev != view.enableControlState)
1718             {
1719                 if (prev)
1720                 {
1721                     view.TouchEvent -= view.EmptyOnTouch;
1722                 }
1723                 else
1724                 {
1725                     view.TouchEvent += view.EmptyOnTouch;
1726                 }
1727             }
1728         },
1729         defaultValueCreator: (bindable) =>
1730         {
1731             return ((View)bindable).enableControlState;
1732         });
1733
1734         /// <summary>
1735         /// ThemeChangeSensitive property
1736         /// </summary>
1737         [EditorBrowsable(EditorBrowsableState.Never)]
1738         public static readonly BindableProperty ThemeChangeSensitiveProperty = BindableProperty.Create(nameof(ThemeChangeSensitive), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1739         {
1740             var view = (View)bindable;
1741
1742             if (view.ThemeChangeSensitive == (bool)newValue) return;
1743
1744             if (view.themeData == null) view.themeData = new ThemeData();
1745
1746             view.themeData.ThemeChangeSensitive = (bool)newValue;
1747
1748             if (!view.themeData.ThemeApplied) return;
1749
1750             if (view.themeData.ThemeChangeSensitive && !view.themeData.ListeningThemeChangeEvent)
1751             {
1752                 view.themeData.ListeningThemeChangeEvent = true;
1753                 ThemeManager.ThemeChangedInternal.Add(view.OnThemeChanged);
1754             }
1755             else if (!view.themeData.ThemeChangeSensitive && view.themeData.ListeningThemeChangeEvent)
1756             {
1757                 view.themeData.ListeningThemeChangeEvent = false;
1758                 ThemeManager.ThemeChangedInternal.Remove(view.OnThemeChanged);
1759             }
1760         },
1761         defaultValueCreator: (bindable) =>
1762         {
1763             return ((View)bindable).themeData?.ThemeChangeSensitive ?? ThemeManager.ApplicationThemeChangeSensitive;
1764         });
1765
1766         /// <summary>
1767         /// AccessibilityNameProperty
1768         /// </summary>
1769         [EditorBrowsable(EditorBrowsableState.Never)]
1770         public static readonly BindableProperty AccessibilityNameProperty = BindableProperty.Create(nameof(AccessibilityName), typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
1771         {
1772             var view = (View)bindable;
1773             if (newValue != null)
1774             {
1775                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AccessibilityName, new Tizen.NUI.PropertyValue((string)newValue));
1776             }
1777         },
1778         defaultValueCreator: (bindable) =>
1779         {
1780             var view = (View)bindable;
1781
1782             string temp;
1783             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AccessibilityName).Get(out temp);
1784             return temp;
1785         });
1786
1787         /// <summary>
1788         /// AccessibilityDescriptionProperty
1789         /// </summary>
1790         [EditorBrowsable(EditorBrowsableState.Never)]
1791         public static readonly BindableProperty AccessibilityDescriptionProperty = BindableProperty.Create(nameof(AccessibilityDescription), typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
1792         {
1793             var view = (View)bindable;
1794             if (newValue != null)
1795             {
1796                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AccessibilityDescription, new Tizen.NUI.PropertyValue((string)newValue));
1797             }
1798         },
1799         defaultValueCreator: (bindable) =>
1800         {
1801             var view = (View)bindable;
1802
1803             string temp;
1804             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AccessibilityDescription).Get(out temp);
1805             return temp;
1806         });
1807
1808         /// <summary>
1809         /// AccessibilityTranslationDomainProperty
1810         /// </summary>
1811         [EditorBrowsable(EditorBrowsableState.Never)]
1812         public static readonly BindableProperty AccessibilityTranslationDomainProperty = BindableProperty.Create(nameof(AccessibilityTranslationDomain), typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
1813         {
1814             var view = (View)bindable;
1815             if (newValue != null)
1816             {
1817                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AccessibilityTranslationDomain, new Tizen.NUI.PropertyValue((string)newValue));
1818             }
1819         },
1820         defaultValueCreator: (bindable) =>
1821         {
1822             var view = (View)bindable;
1823
1824             string temp;
1825             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AccessibilityTranslationDomain).Get(out temp);
1826             return temp;
1827         });
1828
1829         /// <summary>
1830         /// AccessibilityRoleProperty
1831         /// </summary>
1832         [EditorBrowsable(EditorBrowsableState.Never)]
1833         public static readonly BindableProperty AccessibilityRoleProperty = BindableProperty.Create(nameof(AccessibilityRole), typeof(int), typeof(View), default(int), propertyChanged: (bindable, oldValue, newValue) =>
1834         {
1835             var view = (View)bindable;
1836             if (newValue != null)
1837             {
1838                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AccessibilityRole, new Tizen.NUI.PropertyValue((int)newValue));
1839             }
1840         },
1841         defaultValueCreator: (bindable) =>
1842         {
1843             var view = (View)bindable;
1844
1845             int temp = 0;
1846             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AccessibilityRole).Get(out temp);
1847             return temp;
1848         });
1849
1850         /// <summary>
1851         /// AccessibilityHighlightableProperty
1852         /// </summary>
1853         [EditorBrowsable(EditorBrowsableState.Never)]
1854         public static readonly BindableProperty AccessibilityHighlightableProperty = BindableProperty.Create(nameof(AccessibilityHighlightable), typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1855         {
1856             var view = (View)bindable;
1857             if (newValue != null)
1858             {
1859                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AccessibilityHighlightable, new Tizen.NUI.PropertyValue((bool)newValue));
1860             }
1861         },
1862         defaultValueCreator: (bindable) =>
1863         {
1864             var view = (View)bindable;
1865             bool temp = false;
1866             Tizen.NUI.Object.GetProperty((System.Runtime.InteropServices.HandleRef)view.SwigCPtr, View.Property.AccessibilityHighlightable).Get(out temp);
1867             return temp;
1868         });
1869
1870         private void SetBackgroundImage(string value)
1871         {
1872             if (string.IsNullOrEmpty(value))
1873             {
1874                 // Clear background
1875                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)SwigCPtr, View.Property.BACKGROUND, new PropertyValue());
1876                 return;
1877             }
1878
1879             if (value.StartsWith("*Resource*"))
1880             {
1881                 string resource = Tizen.Applications.Application.Current.DirectoryInfo.Resource;
1882                 value = value.Replace("*Resource*", resource);
1883             }
1884
1885             if (backgroundExtraData == null)
1886             {
1887                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)SwigCPtr, View.Property.BACKGROUND, new PropertyValue(value));
1888                 BackgroundImageSynchronosLoading = backgroundImageSynchronosLoading;
1889
1890                 return;
1891             }
1892
1893             PropertyMap map = new PropertyMap();
1894
1895             map.Add(ImageVisualProperty.URL, new PropertyValue(value))
1896                .Add(Visual.Property.CornerRadius, new PropertyValue(backgroundExtraData.CornerRadius == null ? new PropertyValue() : new PropertyValue(backgroundExtraData.CornerRadius)))
1897                .Add(Visual.Property.CornerRadiusPolicy, new PropertyValue((int)(backgroundExtraData.CornerRadiusPolicy)))
1898                .Add(Visual.Property.BorderlineWidth, new PropertyValue(backgroundExtraData.BorderlineWidth))
1899                .Add(Visual.Property.BorderlineColor, new PropertyValue(backgroundExtraData.BorderlineColor == null ? new PropertyValue(Color.Black) : new PropertyValue(backgroundExtraData.BorderlineColor)))
1900                .Add(Visual.Property.BorderlineOffset, new PropertyValue(backgroundExtraData.BorderlineOffset))
1901                .Add(ImageVisualProperty.SynchronousLoading, new PropertyValue(backgroundImageSynchronosLoading));
1902
1903             if (backgroundExtraData.BackgroundImageBorder != null)
1904             {
1905                 map.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.NPatch))
1906                    .Add(NpatchImageVisualProperty.Border, new PropertyValue(backgroundExtraData.BackgroundImageBorder));
1907             }
1908             else
1909             {
1910                 map.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Image));
1911             }
1912
1913             Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)SwigCPtr, View.Property.BACKGROUND, new PropertyValue(map));
1914         }
1915
1916         private void SetBackgroundImageBorder(Rectangle value)
1917         {
1918             bool isEmptyValue = Rectangle.IsNullOrZero(value);
1919
1920             var backgroundImageBorder = isEmptyValue ? null : value;
1921
1922             (backgroundExtraData ?? (backgroundExtraData = new BackgroundExtraData())).BackgroundImageBorder = backgroundImageBorder;
1923
1924             if (isEmptyValue)
1925             {
1926                 return;
1927             }
1928
1929             PropertyMap map = Background;
1930
1931             if (map.Empty())
1932             {
1933                 return;
1934             }
1935
1936             map[NpatchImageVisualProperty.Border] = new PropertyValue(backgroundImageBorder);
1937
1938             int visualType = 0;
1939
1940             map.Find(Visual.Property.Type)?.Get(out visualType);
1941
1942             if (visualType == (int)Visual.Type.Image)
1943             {
1944                 map[Visual.Property.Type] = new PropertyValue((int)Visual.Type.NPatch);
1945             }
1946
1947             Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)SwigCPtr, View.Property.BACKGROUND, new PropertyValue(map));
1948         }
1949
1950         private void SetBackgroundColor(Color value)
1951         {
1952             if (value == null)
1953             {
1954                 return;
1955             }
1956
1957             if (backgroundExtraData == null)
1958             {
1959                 Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)SwigCPtr, View.Property.BACKGROUND, new PropertyValue(value));
1960                 return;
1961             }
1962
1963             PropertyMap map = new PropertyMap();
1964
1965             map.Add(Visual.Property.Type, new PropertyValue((int)Visual.Type.Color))
1966                .Add(ColorVisualProperty.MixColor, new PropertyValue(value))
1967                .Add(Visual.Property.CornerRadius, new PropertyValue(new PropertyValue(backgroundExtraData.CornerRadius == null ? new PropertyValue() : new PropertyValue(backgroundExtraData.CornerRadius))))
1968                .Add(Visual.Property.CornerRadiusPolicy, new PropertyValue((int)(backgroundExtraData.CornerRadiusPolicy)))
1969                .Add(Visual.Property.BorderlineWidth, new PropertyValue(backgroundExtraData.BorderlineWidth))
1970                .Add(Visual.Property.BorderlineColor, new PropertyValue(backgroundExtraData.BorderlineColor == null ? new PropertyValue(Color.Black) : new PropertyValue(backgroundExtraData.BorderlineColor)))
1971                .Add(Visual.Property.BorderlineOffset, new PropertyValue(backgroundExtraData.BorderlineOffset));
1972
1973
1974             Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)SwigCPtr, View.Property.BACKGROUND, new PropertyValue(map));
1975         }
1976
1977         private void SetColor(Color value)
1978         {
1979             if (value == null)
1980             {
1981                 return;
1982             }
1983
1984             Interop.ActorInternal.SetColor(SwigCPtr, value.SwigCPtr);
1985             if (NDalicPINVOKE.SWIGPendingException.Pending)
1986                 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1987         }
1988
1989         private void SetOpacity(float? value)
1990         {
1991             if (value == null)
1992             {
1993                 return;
1994             }
1995
1996             Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)SwigCPtr, View.Property.OPACITY, new Tizen.NUI.PropertyValue((float)value));
1997         }
1998
1999         private void SetShadow(ShadowBase value)
2000         {
2001             Tizen.NUI.Object.SetProperty((System.Runtime.InteropServices.HandleRef)SwigCPtr, View.Property.SHADOW, value == null ? new PropertyValue() : value.ToPropertyValue(this));
2002         }
2003     }
2004 }