2 * Copyright(c) 2019 Samsung Electronics Co., Ltd.
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 using System.Collections.Generic;
19 using System.ComponentModel;
21 using System.Runtime.InteropServices;
22 using Tizen.NUI.Binding;
25 namespace Tizen.NUI.BaseComponents
28 /// The View layout Direction type.
30 /// <since_tizen> 4 </since_tizen>
31 public enum ViewLayoutDirectionType
36 /// <since_tizen> 4 </since_tizen>
41 /// <since_tizen> 4 </since_tizen>
46 /// [Draft] Available policies for layout parameters
48 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
49 [EditorBrowsable(EditorBrowsableState.Never)]
50 public static class LayoutParamPolicies
53 /// Constant which indicates child size should match parent size
55 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
56 [EditorBrowsable(EditorBrowsableState.Never)]
57 public const int MatchParent = -1;
59 /// Constant which indicates parent should take the smallest size possible to wrap it's children with their desired size
61 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
62 [EditorBrowsable(EditorBrowsableState.Never)]
63 public const int WrapContent = -2;
66 internal enum ResourceLoadingStatusType
75 /// View is the base class for all views.
77 /// <since_tizen> 3 </since_tizen>
78 public class View : Container, IResourcesProvider
80 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
81 [EditorBrowsable(EditorBrowsableState.Never)]
82 public static readonly BindableProperty StyleNameProperty = BindableProperty.Create("StyleName", typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
84 var view = (View)bindable;
87 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.STYLE_NAME, new Tizen.NUI.PropertyValue((string)newValue));
90 defaultValueCreator: (bindable) =>
92 var view = (View)bindable;
94 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.STYLE_NAME).Get(out temp);
97 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
98 [EditorBrowsable(EditorBrowsableState.Never)]
99 public static readonly BindableProperty BackgroundColorProperty = BindableProperty.Create("BackgroundColor", typeof(Color), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
101 var view = (View)bindable;
102 if (newValue != null)
104 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.BACKGROUND, new Tizen.NUI.PropertyValue((Color)newValue));
107 defaultValueCreator: (bindable) =>
109 var view = (View)bindable;
110 Color backgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f);
112 Tizen.NUI.PropertyMap background = view.Background;
114 background.Find(Visual.Property.Type)?.Get(out visualType);
115 if (visualType == (int)Visual.Type.Color)
117 background.Find(ColorVisualProperty.MixColor)?.Get(backgroundColor);
120 return backgroundColor;
122 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
123 [EditorBrowsable(EditorBrowsableState.Never)]
124 public static readonly BindableProperty BackgroundImageProperty = BindableProperty.Create("BackgroundImage", typeof(string), typeof(View), default(string), propertyChanged: (bindable, oldValue, newValue) =>
126 var view = (View)bindable;
127 if (newValue != null)
129 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.BACKGROUND, new Tizen.NUI.PropertyValue((string)newValue));
132 defaultValueCreator: (bindable) =>
134 var view = (View)bindable;
135 string backgroundImage = "";
137 Tizen.NUI.PropertyMap background = view.Background;
139 background.Find(Visual.Property.Type)?.Get(out visualType);
140 if (visualType == (int)Visual.Type.Image)
142 background.Find(ImageVisualProperty.URL)?.Get(out backgroundImage);
145 return backgroundImage;
147 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
148 [EditorBrowsable(EditorBrowsableState.Never)]
149 public static readonly BindableProperty BackgroundProperty = BindableProperty.Create("Background", typeof(PropertyMap), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
151 var view = (View)bindable;
152 if (newValue != null)
154 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.BACKGROUND, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
157 defaultValueCreator: (bindable) =>
159 var view = (View)bindable;
160 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
161 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.BACKGROUND).Get(temp);
164 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
165 [EditorBrowsable(EditorBrowsableState.Never)]
166 public static readonly BindableProperty StateProperty = BindableProperty.Create("State", typeof(States), typeof(View), States.Normal, propertyChanged: (bindable, oldValue, newValue) =>
168 var view = (View)bindable;
169 if (newValue != null)
171 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.STATE, new Tizen.NUI.PropertyValue((int)newValue));
174 defaultValueCreator: (bindable) =>
176 var view = (View)bindable;
178 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.STATE).Get(out temp) == false)
180 NUILog.Error("State get error!");
184 case 0: return States.Normal;
185 case 1: return States.Focused;
186 case 2: return States.Disabled;
187 default: return States.Normal;
190 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
191 [EditorBrowsable(EditorBrowsableState.Never)]
192 public static readonly BindableProperty SubStateProperty = BindableProperty.Create("SubState", typeof(States), typeof(View), States.Normal, propertyChanged: (bindable, oldValue, newValue) =>
194 var view = (View)bindable;
195 string valueToString = "";
196 if (newValue != null)
198 switch ((States)newValue)
200 case States.Normal: { valueToString = "NORMAL"; break; }
201 case States.Focused: { valueToString = "FOCUSED"; break; }
202 case States.Disabled: { valueToString = "DISABLED"; break; }
203 default: { valueToString = "NORMAL"; break; }
205 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SUB_STATE, new Tizen.NUI.PropertyValue(valueToString));
208 defaultValueCreator: (bindable) =>
210 var view = (View)bindable;
212 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SUB_STATE).Get(out temp) == false)
214 NUILog.Error("subState get error!");
218 case "NORMAL": return States.Normal;
219 case "FOCUSED": return States.Focused;
220 case "DISABLED": return States.Disabled;
221 default: return States.Normal;
224 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
225 [EditorBrowsable(EditorBrowsableState.Never)]
226 public static readonly BindableProperty TooltipProperty = BindableProperty.Create("Tooltip", typeof(PropertyMap), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
228 var view = (View)bindable;
229 if (newValue != null)
231 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.TOOLTIP, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
234 defaultValueCreator: (bindable) =>
236 var view = (View)bindable;
237 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
238 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.TOOLTIP).Get(temp);
242 /// Only for XAML property binding. This will be changed as Inhouse API by ACR later.
243 public static readonly BindableProperty FlexProperty = BindableProperty.Create("Flex", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
245 var view = (View)bindable;
246 if (newValue != null)
248 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX, new Tizen.NUI.PropertyValue((float)newValue));
251 defaultValueCreator: (bindable) =>
253 var view = (View)bindable;
255 Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX).Get(out temp);
259 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
260 [EditorBrowsable(EditorBrowsableState.Never)]
261 public static readonly BindableProperty AlignSelfProperty = BindableProperty.Create("AlignSelf", typeof(int), typeof(View), default(int), propertyChanged: (bindable, oldValue, newValue) =>
263 var view = (View)bindable;
264 if (newValue != null)
266 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.ALIGN_SELF, new Tizen.NUI.PropertyValue((int)newValue));
269 defaultValueCreator: (bindable) =>
271 var view = (View)bindable;
273 Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.ALIGN_SELF).Get(out temp);
276 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
277 [EditorBrowsable(EditorBrowsableState.Never)]
278 public static readonly BindableProperty FlexMarginProperty = BindableProperty.Create("FlexMargin", typeof(Vector4), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
280 var view = (View)bindable;
281 if (newValue != null)
283 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX_MARGIN, new Tizen.NUI.PropertyValue((Vector4)newValue));
286 defaultValueCreator: (bindable) =>
288 var view = (View)bindable;
289 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
290 Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX_MARGIN).Get(temp);
293 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
294 [EditorBrowsable(EditorBrowsableState.Never)]
295 public static readonly BindableProperty CellIndexProperty = BindableProperty.Create("CellIndex", typeof(Vector2), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
297 var view = (View)bindable;
298 if (newValue != null)
300 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_INDEX, new Tizen.NUI.PropertyValue((Vector2)newValue));
303 defaultValueCreator: (bindable) =>
305 var view = (View)bindable;
306 Vector2 temp = new Vector2(0.0f, 0.0f);
307 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_INDEX).Get(temp);
310 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
311 [EditorBrowsable(EditorBrowsableState.Never)]
312 public static readonly BindableProperty RowSpanProperty = BindableProperty.Create("RowSpan", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
314 var view = (View)bindable;
315 if (newValue != null)
317 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.ROW_SPAN, new Tizen.NUI.PropertyValue((float)newValue));
320 defaultValueCreator: (bindable) =>
322 var view = (View)bindable;
324 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.ROW_SPAN).Get(out temp);
327 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
328 [EditorBrowsable(EditorBrowsableState.Never)]
329 public static readonly BindableProperty ColumnSpanProperty = BindableProperty.Create("ColumnSpan", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
331 var view = (View)bindable;
332 if (newValue != null)
334 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.COLUMN_SPAN, new Tizen.NUI.PropertyValue((float)newValue));
337 defaultValueCreator: (bindable) =>
339 var view = (View)bindable;
341 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.COLUMN_SPAN).Get(out temp);
344 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
345 [EditorBrowsable(EditorBrowsableState.Never)]
346 public static readonly BindableProperty CellHorizontalAlignmentProperty = BindableProperty.Create("CellHorizontalAlignment", typeof(HorizontalAlignmentType), typeof(View), HorizontalAlignmentType.Left, propertyChanged: (bindable, oldValue, newValue) =>
348 var view = (View)bindable;
349 string valueToString = "";
351 if (newValue != null)
353 switch ((HorizontalAlignmentType)newValue)
355 case Tizen.NUI.HorizontalAlignmentType.Left: { valueToString = "left"; break; }
356 case Tizen.NUI.HorizontalAlignmentType.Center: { valueToString = "center"; break; }
357 case Tizen.NUI.HorizontalAlignmentType.Right: { valueToString = "right"; break; }
358 default: { valueToString = "left"; break; }
360 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
363 defaultValueCreator: (bindable) =>
365 var view = (View)bindable;
367 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT).Get(out temp) == false)
369 NUILog.Error("CellHorizontalAlignment get error!");
374 case "left": return Tizen.NUI.HorizontalAlignmentType.Left;
375 case "center": return Tizen.NUI.HorizontalAlignmentType.Center;
376 case "right": return Tizen.NUI.HorizontalAlignmentType.Right;
377 default: return Tizen.NUI.HorizontalAlignmentType.Left;
380 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
381 [EditorBrowsable(EditorBrowsableState.Never)]
382 public static readonly BindableProperty CellVerticalAlignmentProperty = BindableProperty.Create("CellVerticalAlignment", typeof(VerticalAlignmentType), typeof(View), VerticalAlignmentType.Top, propertyChanged: (bindable, oldValue, newValue) =>
384 var view = (View)bindable;
385 string valueToString = "";
387 if (newValue != null)
389 switch ((VerticalAlignmentType)newValue)
391 case Tizen.NUI.VerticalAlignmentType.Top: { valueToString = "top"; break; }
392 case Tizen.NUI.VerticalAlignmentType.Center: { valueToString = "center"; break; }
393 case Tizen.NUI.VerticalAlignmentType.Bottom: { valueToString = "bottom"; break; }
394 default: { valueToString = "top"; break; }
396 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
399 defaultValueCreator: (bindable) =>
401 var view = (View)bindable;
403 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT).Get(out temp);
405 NUILog.Error("CellVerticalAlignment get error!");
410 case "top": return Tizen.NUI.VerticalAlignmentType.Top;
411 case "center": return Tizen.NUI.VerticalAlignmentType.Center;
412 case "bottom": return Tizen.NUI.VerticalAlignmentType.Bottom;
413 default: return Tizen.NUI.VerticalAlignmentType.Top;
418 /// "Please DO NOT use! This will be deprecated! Please use 'View Weight' instead of BindableProperty"
419 /// This needs to be hidden as inhouse API until all applications using it have been updated. Do not make public.
421 [EditorBrowsable(EditorBrowsableState.Never)]
422 public static readonly BindableProperty WeightProperty = BindableProperty.Create("Weight", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
424 var view = (View)bindable;
425 if (newValue != null)
427 view.Weight = (float)newValue;
431 defaultValueCreator: (bindable) =>
433 var view = (View)bindable;
437 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
438 [EditorBrowsable(EditorBrowsableState.Never)]
439 public static readonly BindableProperty LeftFocusableViewProperty = BindableProperty.Create(nameof(View.LeftFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
441 var view = (View)bindable;
442 if (newValue != null) { view.LeftFocusableViewId = (int)(newValue as View)?.GetId(); }
443 else { view.LeftFocusableViewId = -1; }
445 defaultValueCreator: (bindable) =>
447 var view = (View)bindable;
448 if (view.LeftFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.LeftFocusableViewId); }
451 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
452 [EditorBrowsable(EditorBrowsableState.Never)]
453 public static readonly BindableProperty RightFocusableViewProperty = BindableProperty.Create(nameof(View.RightFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
455 var view = (View)bindable;
456 if (newValue != null) { view.RightFocusableViewId = (int)(newValue as View)?.GetId(); }
457 else { view.RightFocusableViewId = -1; }
459 defaultValueCreator: (bindable) =>
461 var view = (View)bindable;
462 if (view.RightFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.RightFocusableViewId); }
465 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
466 [EditorBrowsable(EditorBrowsableState.Never)]
467 public static readonly BindableProperty UpFocusableViewProperty = BindableProperty.Create(nameof(View.UpFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
469 var view = (View)bindable;
470 if (newValue != null) { view.UpFocusableViewId = (int)(newValue as View)?.GetId(); }
471 else { view.UpFocusableViewId = -1; }
473 defaultValueCreator: (bindable) =>
475 var view = (View)bindable;
476 if (view.UpFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.UpFocusableViewId); }
479 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
480 [EditorBrowsable(EditorBrowsableState.Never)]
481 public static readonly BindableProperty DownFocusableViewProperty = BindableProperty.Create(nameof(View.DownFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
483 var view = (View)bindable;
484 if (newValue != null) { view.DownFocusableViewId = (int)(newValue as View)?.GetId(); }
485 else { view.DownFocusableViewId = -1; }
487 defaultValueCreator: (bindable) =>
489 var view = (View)bindable;
490 if (view.DownFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.DownFocusableViewId); }
493 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
494 [EditorBrowsable(EditorBrowsableState.Never)]
495 public static readonly BindableProperty FocusableProperty = BindableProperty.Create("Focusable", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
497 var view = (View)bindable;
498 if (newValue != null) { view.SetKeyboardFocusable((bool)newValue); }
500 defaultValueCreator: (bindable) =>
502 var view = (View)bindable;
503 return view.IsKeyboardFocusable();
505 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
506 [EditorBrowsable(EditorBrowsableState.Never)]
507 public static readonly BindableProperty Size2DProperty = BindableProperty.Create("Size2D", typeof(Size2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
509 var view = (View)bindable;
510 if (newValue != null)
512 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE, new Tizen.NUI.PropertyValue(new Size((Size2D)newValue)));
515 defaultValueCreator: (bindable) =>
517 var view = (View)bindable;
518 Size temp = new Size(0.0f, 0.0f, 0.0f);
519 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE).Get(temp);
520 Size2D size = new Size2D((int)temp.Width, (int)temp.Height);
523 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
524 [EditorBrowsable(EditorBrowsableState.Never)]
525 public static readonly BindableProperty OpacityProperty = BindableProperty.Create("Opacity", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
527 var view = (View)bindable;
528 if (newValue != null)
530 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.OPACITY, new Tizen.NUI.PropertyValue((float)newValue));
533 defaultValueCreator: (bindable) =>
535 var view = (View)bindable;
537 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.OPACITY).Get(out temp);
540 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
541 [EditorBrowsable(EditorBrowsableState.Never)]
542 public static readonly BindableProperty Position2DProperty = BindableProperty.Create("Position2D", typeof(Position2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
544 var view = (View)bindable;
545 if (newValue != null)
547 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION, new Tizen.NUI.PropertyValue(new Position((Position2D)newValue)));
550 defaultValueCreator: (bindable) =>
552 var view = (View)bindable;
553 Position temp = new Position(0.0f, 0.0f, 0.0f);
554 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION).Get(temp);
555 return new Position2D(temp);
557 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
558 [EditorBrowsable(EditorBrowsableState.Never)]
559 public static readonly BindableProperty PositionUsesPivotPointProperty = BindableProperty.Create("PositionUsesPivotPoint", typeof(bool), typeof(View), true, propertyChanged: (bindable, oldValue, newValue) =>
561 var view = (View)bindable;
562 if (newValue != null)
564 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue((bool)newValue));
567 defaultValueCreator: (bindable) =>
569 var view = (View)bindable;
571 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_USES_ANCHOR_POINT).Get(out temp);
574 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
575 [EditorBrowsable(EditorBrowsableState.Never)]
576 public static readonly BindableProperty SiblingOrderProperty = BindableProperty.Create("SiblingOrder", typeof(int), typeof(View), default(int), propertyChanged: (bindable, oldValue, newValue) =>
578 var view = (View)bindable;
580 if (newValue != null)
582 value = (int)newValue;
585 NUILog.Error("SiblingOrder should be bigger than 0 or equal to 0.");
588 var siblings = view.GetParent()?.Children;
589 if (siblings != null)
591 int currentOrder = siblings.IndexOf(view);
592 if (value != currentOrder)
594 if (value == 0) { view.LowerToBottom(); }
595 else if (value < siblings.Count - 1)
597 if (value > currentOrder) { view.RaiseAbove(siblings[value]); }
598 else { view.LowerBelow(siblings[value]); }
600 else { view.RaiseToTop(); }
605 defaultValueCreator: (bindable) =>
607 var view = (View)bindable;
608 var parentChildren = view.GetParent()?.Children;
609 int currentOrder = 0;
610 if (parentChildren != null)
612 currentOrder = parentChildren.IndexOf(view);
614 if (currentOrder < 0) { return 0; }
615 else if (currentOrder < parentChildren.Count) { return currentOrder; }
620 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
621 [EditorBrowsable(EditorBrowsableState.Never)]
622 public static readonly BindableProperty ParentOriginProperty = BindableProperty.Create("ParentOrigin", typeof(Position), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
624 var view = (View)bindable;
625 if (newValue != null)
627 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.PARENT_ORIGIN, new Tizen.NUI.PropertyValue((Position)newValue));
630 defaultValueCreator: (bindable) =>
632 var view = (View)bindable;
633 Position temp = new Position(0.0f, 0.0f, 0.0f);
634 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.PARENT_ORIGIN).Get(temp);
638 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
639 [EditorBrowsable(EditorBrowsableState.Never)]
640 public static readonly BindableProperty PivotPointProperty = BindableProperty.Create("PivotPoint", typeof(Position), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
642 var view = (View)bindable;
643 if (newValue != null)
645 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue((Position)newValue));
648 defaultValueCreator: (bindable) =>
650 var view = (View)bindable;
651 Position temp = new Position(0.0f, 0.0f, 0.0f);
652 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.ANCHOR_POINT).Get(temp);
655 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
656 [EditorBrowsable(EditorBrowsableState.Never)]
657 public static readonly BindableProperty SizeWidthProperty = BindableProperty.Create("SizeWidth", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
659 var view = (View)bindable;
660 if (newValue != null)
662 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_WIDTH, new Tizen.NUI.PropertyValue((float)newValue));
665 defaultValueCreator: (bindable) =>
667 var view = (View)bindable;
669 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_WIDTH).Get(out temp);
672 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
673 [EditorBrowsable(EditorBrowsableState.Never)]
674 public static readonly BindableProperty SizeHeightProperty = BindableProperty.Create("SizeHeight", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
676 var view = (View)bindable;
677 if (newValue != null)
679 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_HEIGHT, new Tizen.NUI.PropertyValue((float)newValue));
682 defaultValueCreator: (bindable) =>
684 var view = (View)bindable;
686 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_HEIGHT).Get(out temp);
689 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
690 [EditorBrowsable(EditorBrowsableState.Never)]
691 public static readonly BindableProperty PositionProperty = BindableProperty.Create("Position", typeof(Position), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
693 var view = (View)bindable;
694 if (newValue != null)
696 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION, new Tizen.NUI.PropertyValue((Position)newValue));
699 defaultValueCreator: (bindable) =>
701 var view = (View)bindable;
702 Position temp = new Position(0.0f, 0.0f, 0.0f);
703 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION).Get(temp);
706 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
707 [EditorBrowsable(EditorBrowsableState.Never)]
708 public static readonly BindableProperty PositionXProperty = BindableProperty.Create("PositionX", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
710 var view = (View)bindable;
711 if (newValue != null)
713 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_X, new Tizen.NUI.PropertyValue((float)newValue));
716 defaultValueCreator: (bindable) =>
718 var view = (View)bindable;
720 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_X).Get(out temp);
723 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
724 [EditorBrowsable(EditorBrowsableState.Never)]
725 public static readonly BindableProperty PositionYProperty = BindableProperty.Create("PositionY", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
727 var view = (View)bindable;
728 if (newValue != null)
730 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_Y, new Tizen.NUI.PropertyValue((float)newValue));
733 defaultValueCreator: (bindable) =>
735 var view = (View)bindable;
737 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_Y).Get(out temp);
740 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
741 [EditorBrowsable(EditorBrowsableState.Never)]
742 public static readonly BindableProperty PositionZProperty = BindableProperty.Create("PositionZ", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
744 var view = (View)bindable;
745 if (newValue != null)
747 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_Z, new Tizen.NUI.PropertyValue((float)newValue));
750 defaultValueCreator: (bindable) =>
752 var view = (View)bindable;
754 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_Z).Get(out temp);
757 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
758 [EditorBrowsable(EditorBrowsableState.Never)]
759 public static readonly BindableProperty OrientationProperty = BindableProperty.Create("Orientation", typeof(Rotation), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
761 var view = (View)bindable;
762 if (newValue != null)
764 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.ORIENTATION, new Tizen.NUI.PropertyValue((Rotation)newValue));
767 defaultValueCreator: (bindable) =>
769 var view = (View)bindable;
770 Rotation temp = new Rotation();
771 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.ORIENTATION).Get(temp);
774 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
775 [EditorBrowsable(EditorBrowsableState.Never)]
776 public static readonly BindableProperty ScaleProperty = BindableProperty.Create("Scale", typeof(Vector3), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
778 var view = (View)bindable;
779 if (newValue != null)
781 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE, new Tizen.NUI.PropertyValue((Vector3)newValue));
784 defaultValueCreator: (bindable) =>
786 var view = (View)bindable;
787 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
788 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE).Get(temp);
791 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
792 [EditorBrowsable(EditorBrowsableState.Never)]
793 public static readonly BindableProperty ScaleXProperty = BindableProperty.Create("ScaleX", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
795 var view = (View)bindable;
796 if (newValue != null)
798 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_X, new Tizen.NUI.PropertyValue((float)newValue));
801 defaultValueCreator: (bindable) =>
803 var view = (View)bindable;
805 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_X).Get(out temp);
808 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
809 [EditorBrowsable(EditorBrowsableState.Never)]
810 public static readonly BindableProperty ScaleYProperty = BindableProperty.Create("ScaleY", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
812 var view = (View)bindable;
813 if (newValue != null)
815 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_Y, new Tizen.NUI.PropertyValue((float)newValue));
818 defaultValueCreator: (bindable) =>
820 var view = (View)bindable;
822 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_Y).Get(out temp);
825 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
826 [EditorBrowsable(EditorBrowsableState.Never)]
827 public static readonly BindableProperty ScaleZProperty = BindableProperty.Create("ScaleZ", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
829 var view = (View)bindable;
830 if (newValue != null)
832 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_Z, new Tizen.NUI.PropertyValue((float)newValue));
835 defaultValueCreator: (bindable) =>
837 var view = (View)bindable;
839 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_Z).Get(out temp);
842 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
843 [EditorBrowsable(EditorBrowsableState.Never)]
844 public static readonly BindableProperty NameProperty = BindableProperty.Create("Name", typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
846 var view = (View)bindable;
847 if (newValue != null)
849 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.NAME, new Tizen.NUI.PropertyValue((string)newValue));
852 defaultValueCreator: (bindable) =>
854 var view = (View)bindable;
856 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.NAME).Get(out temp);
859 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
860 [EditorBrowsable(EditorBrowsableState.Never)]
861 public static readonly BindableProperty SensitiveProperty = BindableProperty.Create("Sensitive", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
863 var view = (View)bindable;
864 if (newValue != null)
866 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SENSITIVE, new Tizen.NUI.PropertyValue((bool)newValue));
869 defaultValueCreator: (bindable) =>
871 var view = (View)bindable;
873 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SENSITIVE).Get(out temp);
876 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
877 [EditorBrowsable(EditorBrowsableState.Never)]
878 public static readonly BindableProperty LeaveRequiredProperty = BindableProperty.Create("LeaveRequired", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
880 var view = (View)bindable;
881 if (newValue != null)
883 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.LEAVE_REQUIRED, new Tizen.NUI.PropertyValue((bool)newValue));
886 defaultValueCreator: (bindable) =>
888 var view = (View)bindable;
890 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.LEAVE_REQUIRED).Get(out temp);
893 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
894 [EditorBrowsable(EditorBrowsableState.Never)]
895 public static readonly BindableProperty InheritOrientationProperty = BindableProperty.Create("InheritOrientation", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
897 var view = (View)bindable;
898 if (newValue != null)
900 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_ORIENTATION, new Tizen.NUI.PropertyValue((bool)newValue));
903 defaultValueCreator: (bindable) =>
905 var view = (View)bindable;
907 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_ORIENTATION).Get(out temp);
910 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
911 [EditorBrowsable(EditorBrowsableState.Never)]
912 public static readonly BindableProperty InheritScaleProperty = BindableProperty.Create("InheritScale", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
914 var view = (View)bindable;
915 if (newValue != null)
917 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_SCALE, new Tizen.NUI.PropertyValue((bool)newValue));
920 defaultValueCreator: (bindable) =>
922 var view = (View)bindable;
924 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_SCALE).Get(out temp);
927 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
928 [EditorBrowsable(EditorBrowsableState.Never)]
929 public static readonly BindableProperty DrawModeProperty = BindableProperty.Create("DrawMode", typeof(DrawModeType), typeof(View), DrawModeType.Normal, propertyChanged: (bindable, oldValue, newValue) =>
931 var view = (View)bindable;
932 if (newValue != null)
934 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.DRAW_MODE, new Tizen.NUI.PropertyValue((int)newValue));
937 defaultValueCreator: (bindable) =>
939 var view = (View)bindable;
941 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.DRAW_MODE).Get(out temp) == false)
943 NUILog.Error("DrawMode get error!");
947 case "NORMAL": return DrawModeType.Normal;
948 case "OVERLAY_2D": return DrawModeType.Overlay2D;
949 #pragma warning disable CS0618 // Disable deprecated warning as we do need to use the deprecated API here.
950 case "STENCIL": return DrawModeType.Stencil;
951 #pragma warning restore CS0618
952 default: return DrawModeType.Normal;
955 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
956 [EditorBrowsable(EditorBrowsableState.Never)]
957 public static readonly BindableProperty SizeModeFactorProperty = BindableProperty.Create("SizeModeFactor", typeof(Vector3), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
959 var view = (View)bindable;
960 if (newValue != null)
962 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_MODE_FACTOR, new Tizen.NUI.PropertyValue((Vector3)newValue));
965 defaultValueCreator: (bindable) =>
967 var view = (View)bindable;
968 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
969 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_MODE_FACTOR).Get(temp);
972 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
973 [EditorBrowsable(EditorBrowsableState.Never)]
974 public static readonly BindableProperty WidthResizePolicyProperty = BindableProperty.Create("WidthResizePolicy", typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (bindable, oldValue, newValue) =>
976 var view = (View)bindable;
977 if (newValue != null)
979 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.WIDTH_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)newValue));
982 defaultValueCreator: (bindable) =>
984 var view = (View)bindable;
986 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.WIDTH_RESIZE_POLICY).Get(out temp) == false)
988 NUILog.Error("WidthResizePolicy get error!");
992 case "FIXED": return ResizePolicyType.Fixed;
993 case "USE_NATURAL_SIZE": return ResizePolicyType.UseNaturalSize;
994 case "FILL_TO_PARENT": return ResizePolicyType.FillToParent;
995 case "SIZE_RELATIVE_TO_PARENT": return ResizePolicyType.SizeRelativeToParent;
996 case "SIZE_FIXED_OFFSET_FROM_PARENT": return ResizePolicyType.SizeFixedOffsetFromParent;
997 case "FIT_TO_CHILDREN": return ResizePolicyType.FitToChildren;
998 case "DIMENSION_DEPENDENCY": return ResizePolicyType.DimensionDependency;
999 case "USE_ASSIGNED_SIZE": return ResizePolicyType.UseAssignedSize;
1000 default: return ResizePolicyType.Fixed;
1003 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1004 [EditorBrowsable(EditorBrowsableState.Never)]
1005 public static readonly BindableProperty HeightResizePolicyProperty = BindableProperty.Create("HeightResizePolicy", typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (bindable, oldValue, newValue) =>
1007 var view = (View)bindable;
1008 if (newValue != null)
1010 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.HEIGHT_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)newValue));
1013 defaultValueCreator: (bindable) =>
1015 var view = (View)bindable;
1017 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.HEIGHT_RESIZE_POLICY).Get(out temp) == false)
1019 NUILog.Error("HeightResizePolicy get error!");
1023 case "FIXED": return ResizePolicyType.Fixed;
1024 case "USE_NATURAL_SIZE": return ResizePolicyType.UseNaturalSize;
1025 case "FILL_TO_PARENT": return ResizePolicyType.FillToParent;
1026 case "SIZE_RELATIVE_TO_PARENT": return ResizePolicyType.SizeRelativeToParent;
1027 case "SIZE_FIXED_OFFSET_FROM_PARENT": return ResizePolicyType.SizeFixedOffsetFromParent;
1028 case "FIT_TO_CHILDREN": return ResizePolicyType.FitToChildren;
1029 case "DIMENSION_DEPENDENCY": return ResizePolicyType.DimensionDependency;
1030 case "USE_ASSIGNED_SIZE": return ResizePolicyType.UseAssignedSize;
1031 default: return ResizePolicyType.Fixed;
1034 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1035 [EditorBrowsable(EditorBrowsableState.Never)]
1036 public static readonly BindableProperty SizeScalePolicyProperty = BindableProperty.Create("SizeScalePolicy", typeof(SizeScalePolicyType), typeof(View), SizeScalePolicyType.UseSizeSet, propertyChanged: (bindable, oldValue, newValue) =>
1038 var view = (View)bindable;
1039 string valueToString = "";
1040 if (newValue != null)
1042 switch ((SizeScalePolicyType)newValue)
1044 case SizeScalePolicyType.UseSizeSet: { valueToString = "USE_SIZE_SET"; break; }
1045 case SizeScalePolicyType.FitWithAspectRatio: { valueToString = "FIT_WITH_ASPECT_RATIO"; break; }
1046 case SizeScalePolicyType.FillWithAspectRatio: { valueToString = "FILL_WITH_ASPECT_RATIO"; break; }
1047 default: { valueToString = "USE_SIZE_SET"; break; }
1049 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_SCALE_POLICY, new Tizen.NUI.PropertyValue(valueToString));
1052 defaultValueCreator: (bindable) =>
1054 var view = (View)bindable;
1056 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_SCALE_POLICY).Get(out temp) == false)
1058 NUILog.Error("SizeScalePolicy get error!");
1062 case "USE_SIZE_SET": return SizeScalePolicyType.UseSizeSet;
1063 case "FIT_WITH_ASPECT_RATIO": return SizeScalePolicyType.FitWithAspectRatio;
1064 case "FILL_WITH_ASPECT_RATIO": return SizeScalePolicyType.FillWithAspectRatio;
1065 default: return SizeScalePolicyType.UseSizeSet;
1068 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1069 [EditorBrowsable(EditorBrowsableState.Never)]
1070 public static readonly BindableProperty WidthForHeightProperty = BindableProperty.Create("WidthForHeight", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1072 var view = (View)bindable;
1073 if (newValue != null)
1075 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.WIDTH_FOR_HEIGHT, new Tizen.NUI.PropertyValue((bool)newValue));
1078 defaultValueCreator: (bindable) =>
1080 var view = (View)bindable;
1082 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.WIDTH_FOR_HEIGHT).Get(out temp);
1085 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1086 [EditorBrowsable(EditorBrowsableState.Never)]
1087 public static readonly BindableProperty HeightForWidthProperty = BindableProperty.Create("HeightForWidth", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1089 var view = (View)bindable;
1090 if (newValue != null)
1092 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.HEIGHT_FOR_WIDTH, new Tizen.NUI.PropertyValue((bool)newValue));
1095 defaultValueCreator: (bindable) =>
1097 var view = (View)bindable;
1099 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.HEIGHT_FOR_WIDTH).Get(out temp);
1102 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1103 [EditorBrowsable(EditorBrowsableState.Never)]
1104 public static readonly BindableProperty PaddingProperty = BindableProperty.Create("Padding", typeof(Extents), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1106 var view = (View)bindable;
1107 if (newValue != null)
1109 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.PADDING, new Tizen.NUI.PropertyValue((Extents)newValue));
1112 defaultValueCreator: (bindable) =>
1114 var view = (View)bindable;
1115 Extents temp = new Extents(0, 0, 0, 0);
1116 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.PADDING).Get(temp);
1119 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1120 [EditorBrowsable(EditorBrowsableState.Never)]
1121 public static readonly BindableProperty SizeProperty = BindableProperty.Create("Size", typeof(Size), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1123 var view = (View)bindable;
1124 if (newValue != null)
1126 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE, new Tizen.NUI.PropertyValue((Size)newValue));
1129 defaultValueCreator: (bindable) =>
1131 var view = (View)bindable;
1132 Size temp = new Size(0, 0, 0);
1133 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE).Get(temp);
1136 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1137 [EditorBrowsable(EditorBrowsableState.Never)]
1138 public static readonly BindableProperty MinimumSizeProperty = BindableProperty.Create("MinimumSize", typeof(Size2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1140 var view = (View)bindable;
1141 if (newValue != null)
1143 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MINIMUM_SIZE, new Tizen.NUI.PropertyValue((Size2D)newValue));
1146 defaultValueCreator: (bindable) =>
1148 var view = (View)bindable;
1149 Size2D temp = new Size2D(0, 0);
1150 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MINIMUM_SIZE).Get(temp);
1153 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1154 [EditorBrowsable(EditorBrowsableState.Never)]
1155 public static readonly BindableProperty MaximumSizeProperty = BindableProperty.Create("MaximumSize", typeof(Size2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1157 var view = (View)bindable;
1158 if (newValue != null)
1160 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MAXIMUM_SIZE, new Tizen.NUI.PropertyValue((Size2D)newValue));
1163 defaultValueCreator: (bindable) =>
1165 var view = (View)bindable;
1166 Size2D temp = new Size2D(0, 0);
1167 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MAXIMUM_SIZE).Get(temp);
1170 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1171 [EditorBrowsable(EditorBrowsableState.Never)]
1172 public static readonly BindableProperty InheritPositionProperty = BindableProperty.Create("InheritPosition", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1174 var view = (View)bindable;
1175 if (newValue != null)
1177 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_POSITION, new Tizen.NUI.PropertyValue((bool)newValue));
1180 defaultValueCreator: (bindable) =>
1182 var view = (View)bindable;
1184 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_POSITION).Get(out temp);
1187 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1188 [EditorBrowsable(EditorBrowsableState.Never)]
1189 public static readonly BindableProperty ClippingModeProperty = BindableProperty.Create("ClippingMode", typeof(ClippingModeType), typeof(View), ClippingModeType.Disabled, propertyChanged: (bindable, oldValue, newValue) =>
1191 var view = (View)bindable;
1192 if (newValue != null)
1194 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.CLIPPING_MODE, new Tizen.NUI.PropertyValue((int)newValue));
1197 defaultValueCreator: (bindable) =>
1199 var view = (View)bindable;
1201 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.CLIPPING_MODE).Get(out temp) == false)
1203 NUILog.Error("ClippingMode get error!");
1205 return (ClippingModeType)temp;
1207 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1208 [EditorBrowsable(EditorBrowsableState.Never)]
1209 public static readonly BindableProperty InheritLayoutDirectionProperty = BindableProperty.Create("InheritLayoutDirection", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1211 var view = (View)bindable;
1212 if (newValue != null)
1214 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue((bool)newValue));
1217 defaultValueCreator: (bindable) =>
1219 var view = (View)bindable;
1221 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_LAYOUT_DIRECTION).Get(out temp);
1224 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1225 [EditorBrowsable(EditorBrowsableState.Never)]
1226 public static readonly BindableProperty LayoutDirectionProperty = BindableProperty.Create("LayoutDirection", typeof(ViewLayoutDirectionType), typeof(View), ViewLayoutDirectionType.LTR, propertyChanged: (bindable, oldValue, newValue) =>
1228 var view = (View)bindable;
1229 if (newValue != null)
1231 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue((int)newValue));
1234 defaultValueCreator: (bindable) =>
1236 var view = (View)bindable;
1238 if (false == Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.LAYOUT_DIRECTION).Get(out temp))
1240 NUILog.Error("LAYOUT_DIRECTION get error!");
1242 return (ViewLayoutDirectionType)temp;
1244 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1245 [EditorBrowsable(EditorBrowsableState.Never)]
1246 public static readonly BindableProperty MarginProperty = BindableProperty.Create("Margin", typeof(Extents), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1248 var view = (View)bindable;
1249 if (newValue != null)
1251 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MARGIN, new Tizen.NUI.PropertyValue((Extents)newValue));
1254 defaultValueCreator: (bindable) =>
1256 var view = (View)bindable;
1257 Extents temp = new Extents(0, 0, 0, 0);
1258 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MARGIN).Get(temp);
1261 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1262 [EditorBrowsable(EditorBrowsableState.Never)]
1263 public static readonly BindableProperty XamlStyleProperty = BindableProperty.Create("XamlStyle", typeof(Style), typeof(View), default(Style), propertyChanged: (bindable, oldvalue, newvalue) => ((View)bindable)._mergedStyle.Style = (Style)newvalue);
1266 /// Flag to indicate if layout set explicitly via API call or View was automatically given a Layout.
1268 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
1269 [EditorBrowsable(EditorBrowsableState.Never)]
1270 public bool layoutSet = false;
1273 /// Flag to allow Layouting to be disabled for Views.
1274 /// Once a View has a Layout set then any children added to Views from then on will receive
1275 /// automatic Layouts.
1277 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
1278 [EditorBrowsable(EditorBrowsableState.Never)]
1279 public static bool layoutingDisabled{get; set;} = true;
1281 private MergedStyle mergedStyle = null;
1282 internal MergedStyle _mergedStyle
1286 if (null == mergedStyle)
1288 mergedStyle = new MergedStyle(GetType(), this);
1295 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
1296 private LayoutItem _layout; // Exclusive layout assigned to this View.
1298 // List of transitions paired with the condition that uses the transition.
1299 private Dictionary<TransitionCondition, TransitionList> _layoutTransitions;
1300 private int _widthPolicy = LayoutParamPolicies.WrapContent; // Layout width policy
1301 private int _heightPolicy = LayoutParamPolicies.WrapContent; // Layout height policy
1302 private float _weight = 0.0f; // Weighting of child View in a Layout
1303 private MeasureSpecification _measureSpecificationWidth; // Layout width and internal Mode
1304 private MeasureSpecification _measureSpecificationHeight; // Layout height and internal Mode
1305 private bool _backgroundImageSynchronosLoading = false;
1306 private EventHandler _offWindowEventHandler;
1307 private OffWindowEventCallbackType _offWindowEventCallback;
1308 private EventHandlerWithReturnType<object, WheelEventArgs, bool> _wheelEventHandler;
1309 private WheelEventCallbackType _wheelEventCallback;
1310 private EventHandlerWithReturnType<object, KeyEventArgs, bool> _keyEventHandler;
1311 private KeyCallbackType _keyCallback;
1312 private EventHandlerWithReturnType<object, TouchEventArgs, bool> _touchDataEventHandler;
1313 private TouchDataCallbackType _touchDataCallback;
1314 private EventHandlerWithReturnType<object, HoverEventArgs, bool> _hoverEventHandler;
1315 private HoverEventCallbackType _hoverEventCallback;
1316 private EventHandler<VisibilityChangedEventArgs> _visibilityChangedEventHandler;
1317 private VisibilityChangedEventCallbackType _visibilityChangedEventCallback;
1318 private EventHandler _keyInputFocusGainedEventHandler;
1319 private KeyInputFocusGainedCallbackType _keyInputFocusGainedCallback;
1320 private EventHandler _keyInputFocusLostEventHandler;
1321 private KeyInputFocusLostCallbackType _keyInputFocusLostCallback;
1322 private EventHandler _onRelayoutEventHandler;
1323 private OnRelayoutEventCallbackType _onRelayoutEventCallback;
1324 private EventHandler _onWindowEventHandler;
1325 private OnWindowEventCallbackType _onWindowEventCallback;
1326 private EventHandler<LayoutDirectionChangedEventArgs> _layoutDirectionChangedEventHandler;
1327 private LayoutDirectionChangedEventCallbackType _layoutDirectionChangedEventCallback;
1328 // Resource Ready Signal
1329 private EventHandler _resourcesLoadedEventHandler;
1330 private ResourcesLoadedCallbackType _ResourcesLoadedCallback;
1331 private EventHandler<BackgroundResourceLoadedEventArgs> _backgroundResourceLoadedEventHandler;
1332 private _backgroundResourceLoadedCallbackType _backgroundResourceLoadedCallback;
1334 private OnWindowEventCallbackType _onWindowSendEventCallback;
1336 private void SendViewAddedEventToWindow(IntPtr data)
1338 Window.Instance?.SendViewAdded(this);
1342 /// Creates a new instance of a view.
1344 /// <since_tizen> 3 </since_tizen>
1345 public View() : this(Interop.View.View_New(), true)
1347 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1351 /// Create a new instance of a View with setting the status of shown or hidden.
1353 /// <param name="shown">false : Not displayed (hidden), true : displayed (shown)</param>
1354 /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI).
1355 [EditorBrowsable(EditorBrowsableState.Never)]
1356 public View(bool shown) : this(Interop.View.View_New(), true)
1358 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1362 internal View(View uiControl, bool shown = true) : this(Interop.View.new_View__SWIG_1(View.getCPtr(uiControl)), true)
1364 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1371 internal View(global::System.IntPtr cPtr, bool cMemoryOwn, bool shown = true) : base(Interop.View.View_SWIGUpcast(cPtr), cMemoryOwn)
1373 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
1376 PositionUsesPivotPoint = false;
1379 _onWindowSendEventCallback = SendViewAddedEventToWindow;
1380 this.OnWindowSignal().Connect(_onWindowSendEventCallback);
1388 internal View(ViewImpl implementation, bool shown = true) : this(Interop.View.new_View__SWIG_2(ViewImpl.getCPtr(implementation)), true)
1390 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1398 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1399 private delegate void OffWindowEventCallbackType(IntPtr control);
1400 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1401 private delegate bool WheelEventCallbackType(IntPtr view, IntPtr wheelEvent);
1402 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1403 private delegate bool KeyCallbackType(IntPtr control, IntPtr keyEvent);
1404 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1405 private delegate bool TouchDataCallbackType(IntPtr view, IntPtr touchData);
1406 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1407 private delegate bool HoverEventCallbackType(IntPtr view, IntPtr hoverEvent);
1408 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1409 private delegate void VisibilityChangedEventCallbackType(IntPtr data, bool visibility, VisibilityChangeType type);
1410 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1411 private delegate void ResourcesLoadedCallbackType(IntPtr control);
1412 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1413 private delegate void _backgroundResourceLoadedCallbackType(IntPtr view);
1414 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1415 private delegate void KeyInputFocusGainedCallbackType(IntPtr control);
1416 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1417 private delegate void KeyInputFocusLostCallbackType(IntPtr control);
1418 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1419 private delegate void OnRelayoutEventCallbackType(IntPtr control);
1420 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1421 private delegate void OnWindowEventCallbackType(IntPtr control);
1422 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1423 private delegate void LayoutDirectionChangedEventCallbackType(IntPtr data, ViewLayoutDirectionType type);
1426 /// Event when a child is removed.
1428 /// <since_tizen> 5 </since_tizen>
1429 public new event EventHandler<ChildRemovedEventArgs> ChildRemoved;
1431 /// Event when a child is added.
1433 /// <since_tizen> 5 </since_tizen>
1434 public new event EventHandler<ChildAddedEventArgs> ChildAdded;
1437 /// An event for the KeyInputFocusGained signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1438 /// The KeyInputFocusGained signal is emitted when the control gets the key input focus.<br />
1440 /// <since_tizen> 3 </since_tizen>
1441 public event EventHandler FocusGained
1445 if (_keyInputFocusGainedEventHandler == null)
1447 _keyInputFocusGainedCallback = OnKeyInputFocusGained;
1448 this.KeyInputFocusGainedSignal().Connect(_keyInputFocusGainedCallback);
1451 _keyInputFocusGainedEventHandler += value;
1456 _keyInputFocusGainedEventHandler -= value;
1458 if (_keyInputFocusGainedEventHandler == null && KeyInputFocusGainedSignal().Empty() == false)
1460 this.KeyInputFocusGainedSignal().Disconnect(_keyInputFocusGainedCallback);
1466 /// An event for the KeyInputFocusLost signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1467 /// The KeyInputFocusLost signal is emitted when the control loses the key input focus.<br />
1469 /// <since_tizen> 3 </since_tizen>
1470 public event EventHandler FocusLost
1474 if (_keyInputFocusLostEventHandler == null)
1476 _keyInputFocusLostCallback = OnKeyInputFocusLost;
1477 this.KeyInputFocusLostSignal().Connect(_keyInputFocusLostCallback);
1480 _keyInputFocusLostEventHandler += value;
1485 _keyInputFocusLostEventHandler -= value;
1487 if (_keyInputFocusLostEventHandler == null && KeyInputFocusLostSignal().Empty() == false)
1489 this.KeyInputFocusLostSignal().Disconnect(_keyInputFocusLostCallback);
1495 /// An event for the KeyPressed signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1496 /// The KeyPressed signal is emitted when the key event is received.<br />
1498 /// <since_tizen> 3 </since_tizen>
1499 public event EventHandlerWithReturnType<object, KeyEventArgs, bool> KeyEvent
1503 if (_keyEventHandler == null)
1505 _keyCallback = OnKeyEvent;
1506 this.KeyEventSignal().Connect(_keyCallback);
1509 _keyEventHandler += value;
1514 _keyEventHandler -= value;
1516 if (_keyEventHandler == null && KeyEventSignal().Empty() == false)
1518 this.KeyEventSignal().Disconnect(_keyCallback);
1524 /// An event for the OnRelayout signal which can be used to subscribe or unsubscribe the event handler.<br />
1525 /// The OnRelayout signal is emitted after the size has been set on the view during relayout.<br />
1527 /// <since_tizen> 3 </since_tizen>
1528 public event EventHandler Relayout
1532 if (_onRelayoutEventHandler == null)
1534 _onRelayoutEventCallback = OnRelayout;
1535 this.OnRelayoutSignal().Connect(_onRelayoutEventCallback);
1538 _onRelayoutEventHandler += value;
1543 _onRelayoutEventHandler -= value;
1545 if (_onRelayoutEventHandler == null && OnRelayoutSignal().Empty() == false)
1547 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
1554 /// An event for the touched signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1555 /// The touched signal is emitted when the touch input is received.<br />
1557 /// <since_tizen> 3 </since_tizen>
1558 public event EventHandlerWithReturnType<object, TouchEventArgs, bool> TouchEvent
1562 if (_touchDataEventHandler == null)
1564 _touchDataCallback = OnTouch;
1565 this.TouchSignal().Connect(_touchDataCallback);
1568 _touchDataEventHandler += value;
1573 _touchDataEventHandler -= value;
1575 if (_touchDataEventHandler == null && TouchSignal().Empty() == false)
1577 this.TouchSignal().Disconnect(_touchDataCallback);
1584 /// An event for the hovered signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1585 /// The hovered signal is emitted when the hover input is received.<br />
1587 /// <since_tizen> 3 </since_tizen>
1588 public event EventHandlerWithReturnType<object, HoverEventArgs, bool> HoverEvent
1592 if (_hoverEventHandler == null)
1594 _hoverEventCallback = OnHoverEvent;
1595 this.HoveredSignal().Connect(_hoverEventCallback);
1598 _hoverEventHandler += value;
1603 _hoverEventHandler -= value;
1605 if (_hoverEventHandler == null && HoveredSignal().Empty() == false)
1607 this.HoveredSignal().Disconnect(_hoverEventCallback);
1614 /// An event for the WheelMoved signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1615 /// The WheelMoved signal is emitted when the wheel event is received.<br />
1617 /// <since_tizen> 3 </since_tizen>
1618 public event EventHandlerWithReturnType<object, WheelEventArgs, bool> WheelEvent
1622 if (_wheelEventHandler == null)
1624 _wheelEventCallback = OnWheelEvent;
1625 this.WheelEventSignal().Connect(_wheelEventCallback);
1628 _wheelEventHandler += value;
1633 _wheelEventHandler -= value;
1635 if (_wheelEventHandler == null && WheelEventSignal().Empty() == false)
1637 this.WheelEventSignal().Disconnect(_wheelEventCallback);
1644 /// An event for the OnWindow signal which can be used to subscribe or unsubscribe the event handler.<br />
1645 /// The OnWindow signal is emitted after the view has been connected to the window.<br />
1647 /// <since_tizen> 3 </since_tizen>
1648 public event EventHandler AddedToWindow
1652 if (_onWindowEventHandler == null)
1654 _onWindowEventCallback = OnWindow;
1655 this.OnWindowSignal().Connect(_onWindowEventCallback);
1658 _onWindowEventHandler += value;
1663 _onWindowEventHandler -= value;
1665 if (_onWindowEventHandler == null && OnWindowSignal().Empty() == false)
1667 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
1673 /// An event for the OffWindow signal, which can be used to subscribe or unsubscribe the event handler.<br />
1674 /// OffWindow signal is emitted after the view has been disconnected from the window.<br />
1676 /// <since_tizen> 3 </since_tizen>
1677 public event EventHandler RemovedFromWindow
1681 if (_offWindowEventHandler == null)
1683 _offWindowEventCallback = OffWindow;
1684 this.OffWindowSignal().Connect(_offWindowEventCallback);
1687 _offWindowEventHandler += value;
1692 _offWindowEventHandler -= value;
1694 if (_offWindowEventHandler == null && OffWindowSignal().Empty() == false)
1696 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
1702 /// An event for visibility change which can be used to subscribe or unsubscribe the event handler.<br />
1703 /// This signal is emitted when the visible property of this or a parent view is changed.<br />
1705 /// <since_tizen> 3 </since_tizen>
1706 public event EventHandler<VisibilityChangedEventArgs> VisibilityChanged
1710 if (_visibilityChangedEventHandler == null)
1712 _visibilityChangedEventCallback = OnVisibilityChanged;
1713 VisibilityChangedSignal(this).Connect(_visibilityChangedEventCallback);
1716 _visibilityChangedEventHandler += value;
1721 _visibilityChangedEventHandler -= value;
1723 if (_visibilityChangedEventHandler == null && VisibilityChangedSignal(this).Empty() == false)
1725 VisibilityChangedSignal(this).Disconnect(_visibilityChangedEventCallback);
1731 /// Event for layout direction change which can be used to subscribe/unsubscribe the event handler.<br />
1732 /// This signal is emitted when the layout direction property of this or a parent view is changed.<br />
1734 /// <since_tizen> 4 </since_tizen>
1735 public event EventHandler<LayoutDirectionChangedEventArgs> LayoutDirectionChanged
1739 if (_layoutDirectionChangedEventHandler == null)
1741 _layoutDirectionChangedEventCallback = OnLayoutDirectionChanged;
1742 LayoutDirectionChangedSignal(this).Connect(_layoutDirectionChangedEventCallback);
1745 _layoutDirectionChangedEventHandler += value;
1750 _layoutDirectionChangedEventHandler -= value;
1752 if (_layoutDirectionChangedEventHandler == null && LayoutDirectionChangedSignal(this).Empty() == false)
1754 LayoutDirectionChangedSignal(this).Disconnect(_layoutDirectionChangedEventCallback);
1760 /// An event for the ResourcesLoadedSignal signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1761 /// This signal is emitted after all resources required by a view are loaded and ready.<br />
1763 /// <since_tizen> 3 </since_tizen>
1764 public event EventHandler ResourcesLoaded
1768 if (_resourcesLoadedEventHandler == null)
1770 _ResourcesLoadedCallback = OnResourcesLoaded;
1771 this.ResourcesLoadedSignal().Connect(_ResourcesLoadedCallback);
1774 _resourcesLoadedEventHandler += value;
1779 _resourcesLoadedEventHandler -= value;
1781 if (_resourcesLoadedEventHandler == null && ResourcesLoadedSignal().Empty() == false)
1783 this.ResourcesLoadedSignal().Disconnect(_ResourcesLoadedCallback);
1788 internal event EventHandler<BackgroundResourceLoadedEventArgs> BackgroundResourceLoaded
1792 if (_backgroundResourceLoadedEventHandler == null)
1794 _backgroundResourceLoadedCallback = OnBackgroundResourceLoaded;
1795 this.ResourcesLoadedSignal().Connect(_backgroundResourceLoadedCallback);
1798 _backgroundResourceLoadedEventHandler += value;
1802 _backgroundResourceLoadedEventHandler -= value;
1804 if (_backgroundResourceLoadedEventHandler == null && ResourcesLoadedSignal().Empty() == false)
1806 this.ResourcesLoadedSignal().Disconnect(_backgroundResourceLoadedCallback);
1812 /// Enumeration for describing the states of the view.
1814 /// <since_tizen> 3 </since_tizen>
1818 /// The normal state.
1822 /// The focused state.
1826 /// The disabled state.
1832 /// Describes the direction to move the focus towards.
1834 /// <since_tizen> 3 </since_tizen>
1835 public enum FocusDirection
1838 /// Move keyboard focus towards the left direction.
1840 /// <since_tizen> 3 </since_tizen>
1843 /// Move keyboard focus towards the right direction.
1845 /// <since_tizen> 3 </since_tizen>
1848 /// Move keyboard focus towards the up direction.
1850 /// <since_tizen> 3 </since_tizen>
1853 /// Move keyboard focus towards the down direction.
1855 /// <since_tizen> 3 </since_tizen>
1858 /// Move keyboard focus towards the previous page direction.
1860 /// <since_tizen> 3 </since_tizen>
1863 /// Move keyboard focus towards the next page direction.
1865 /// <since_tizen> 3 </since_tizen>
1869 internal enum PropertyRange
1871 PROPERTY_START_INDEX = PropertyRanges.PROPERTY_REGISTRATION_START_INDEX,
1872 CONTROL_PROPERTY_START_INDEX = PROPERTY_START_INDEX,
1873 CONTROL_PROPERTY_END_INDEX = CONTROL_PROPERTY_START_INDEX + 1000
1876 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1877 [EditorBrowsable(EditorBrowsableState.Never)]
1878 public bool IsResourcesCreated
1882 return Application.Current.IsResourcesCreated;
1886 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1887 [EditorBrowsable(EditorBrowsableState.Never)]
1888 public ResourceDictionary XamlResources
1892 return Application.Current.XamlResources;
1896 Application.Current.XamlResources = value;
1901 /// The StyleName, type string.
1903 /// <since_tizen> 3 </since_tizen>
1904 public string StyleName
1908 return (string)GetValue(StyleNameProperty);
1912 SetValue(StyleNameProperty, value);
1913 NotifyPropertyChanged();
1918 /// The mutually exclusive with BACKGROUND_IMAGE and BACKGROUND type Vector4.
1920 /// <since_tizen> 3 </since_tizen>
1921 public Color BackgroundColor
1925 return (Color)GetValue(BackgroundColorProperty);
1929 SetValue(BackgroundColorProperty, value);
1930 NotifyPropertyChanged();
1935 /// The mutually exclusive with BACKGROUND_COLOR and BACKGROUND type Map.
1937 /// <since_tizen> 3 </since_tizen>
1938 public string BackgroundImage
1942 return (string)GetValue(BackgroundImageProperty);
1946 SetValue(BackgroundImageProperty, value);
1947 NotifyPropertyChanged();
1952 /// The background of view.
1954 /// <since_tizen> 3 </since_tizen>
1955 public Tizen.NUI.PropertyMap Background
1959 return (PropertyMap)GetValue(BackgroundProperty);
1963 SetValue(BackgroundProperty, value);
1964 NotifyPropertyChanged();
1970 /// The current state of the view.
1972 /// <since_tizen> 3 </since_tizen>
1977 return (States)GetValue(StateProperty);
1981 SetValue(StateProperty, value);
1982 NotifyPropertyChanged();
1987 /// The current sub state of the view.
1989 /// <since_tizen> 3 </since_tizen>
1990 public States SubState
1994 return (States)GetValue(SubStateProperty);
1998 SetValue(SubStateProperty, value);
1999 NotifyPropertyChanged();
2004 /// Displays a tooltip
2006 /// <since_tizen> 3 </since_tizen>
2007 public Tizen.NUI.PropertyMap Tooltip
2011 return (PropertyMap)GetValue(TooltipProperty);
2015 SetValue(TooltipProperty, value);
2016 NotifyPropertyChanged();
2021 /// Displays a tooltip as a text.
2023 /// <since_tizen> 3 </since_tizen>
2024 public string TooltipText
2028 SetProperty(View.Property.TOOLTIP, new Tizen.NUI.PropertyValue(value));
2029 NotifyPropertyChanged();
2034 /// The Child property of FlexContainer.<br />
2035 /// The proportion of the free space in the container, the flex item will receive.<br />
2036 /// If all items in the container set this property, their sizes will be proportional to the specified flex factor.<br />
2038 /// <since_tizen> 3 </since_tizen>
2043 return (float)GetValue(FlexProperty);
2047 SetValue(FlexProperty, value);
2048 NotifyPropertyChanged();
2053 /// The Child property of FlexContainer.<br />
2054 /// The alignment of the flex item along the cross axis, which, if set, overides the default alignment for all items in the container.<br />
2056 /// <since_tizen> 3 </since_tizen>
2057 public int AlignSelf
2061 return (int)GetValue(AlignSelfProperty);
2065 SetValue(AlignSelfProperty, value);
2066 NotifyPropertyChanged();
2071 /// The Child property of FlexContainer.<br />
2072 /// The space around the flex item.<br />
2074 /// <since_tizen> 3 </since_tizen>
2075 public Vector4 FlexMargin
2079 return (Vector4)GetValue(FlexMarginProperty);
2083 SetValue(FlexMarginProperty, value);
2084 NotifyPropertyChanged();
2089 /// The top-left cell this child occupies, if not set, the first available cell is used.
2091 /// <since_tizen> 3 </since_tizen>
2092 public Vector2 CellIndex
2096 return (Vector2)GetValue(CellIndexProperty);
2100 SetValue(CellIndexProperty, value);
2101 NotifyPropertyChanged();
2106 /// The number of rows this child occupies, if not set, the default value is 1.
2108 /// <since_tizen> 3 </since_tizen>
2109 public float RowSpan
2113 return (float)GetValue(RowSpanProperty);
2117 SetValue(RowSpanProperty, value);
2118 NotifyPropertyChanged();
2123 /// The number of columns this child occupies, if not set, the default value is 1.
2125 /// <since_tizen> 3 </since_tizen>
2126 public float ColumnSpan
2130 return (float)GetValue(ColumnSpanProperty);
2134 SetValue(ColumnSpanProperty, value);
2135 NotifyPropertyChanged();
2140 /// The horizontal alignment of this child inside the cells, if not set, the default value is 'left'.
2142 /// <since_tizen> 3 </since_tizen>
2143 public Tizen.NUI.HorizontalAlignmentType CellHorizontalAlignment
2147 return (HorizontalAlignmentType)GetValue(CellHorizontalAlignmentProperty);
2151 SetValue(CellHorizontalAlignmentProperty, value);
2152 NotifyPropertyChanged();
2157 /// The vertical alignment of this child inside the cells, if not set, the default value is 'top'.
2159 /// <since_tizen> 3 </since_tizen>
2160 public Tizen.NUI.VerticalAlignmentType CellVerticalAlignment
2164 return (VerticalAlignmentType)GetValue(CellVerticalAlignmentProperty);
2168 SetValue(CellVerticalAlignmentProperty, value);
2169 NotifyPropertyChanged();
2174 /// The left focusable view.<br />
2175 /// This will return null if not set.<br />
2176 /// This will also return null if the specified left focusable view is not on a window.<br />
2178 /// <since_tizen> 3 </since_tizen>
2179 public View LeftFocusableView
2181 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
2184 return (View)GetValue(LeftFocusableViewProperty);
2188 SetValue(LeftFocusableViewProperty, value);
2189 NotifyPropertyChanged();
2194 /// The right focusable view.<br />
2195 /// This will return null if not set.<br />
2196 /// This will also return null if the specified right focusable view is not on a window.<br />
2198 /// <since_tizen> 3 </since_tizen>
2199 public View RightFocusableView
2201 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
2204 return (View)GetValue(RightFocusableViewProperty);
2208 SetValue(RightFocusableViewProperty, value);
2209 NotifyPropertyChanged();
2214 /// The up focusable view.<br />
2215 /// This will return null if not set.<br />
2216 /// This will also return null if the specified up focusable view is not on a window.<br />
2218 /// <since_tizen> 3 </since_tizen>
2219 public View UpFocusableView
2221 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
2224 return (View)GetValue(UpFocusableViewProperty);
2228 SetValue(UpFocusableViewProperty, value);
2229 NotifyPropertyChanged();
2234 /// The down focusable view.<br />
2235 /// This will return null if not set.<br />
2236 /// This will also return null if the specified down focusable view is not on a window.<br />
2238 /// <since_tizen> 3 </since_tizen>
2239 public View DownFocusableView
2241 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
2244 return (View)GetValue(DownFocusableViewProperty);
2248 SetValue(DownFocusableViewProperty, value);
2249 NotifyPropertyChanged();
2254 /// Whether the view should be focusable by keyboard navigation.
2256 /// <since_tizen> 3 </since_tizen>
2257 public bool Focusable
2261 SetValue(FocusableProperty, value);
2262 NotifyPropertyChanged();
2266 return (bool)GetValue(FocusableProperty);
2271 /// Retrieves the position of the view.<br />
2272 /// The coordinates are relative to the view's parent.<br />
2274 /// <since_tizen> 3 </since_tizen>
2275 public Position CurrentPosition
2279 return GetCurrentPosition();
2284 /// Sets the size of a view for the width and the height.<br />
2285 /// Geometry can be scaled to fit within this area.<br />
2286 /// This does not interfere with the view's scale factor.<br />
2287 /// The views default depth is the minimum of width and height.<br />
2290 /// This NUI object (Size2D) typed property can be configured by multiple cascade setting. <br />
2291 /// For example, this code ( view.Size2D.Width = 100; view.Size2D.Height = 100; ) is equivalent to this ( view.Size2D = new Size2D(100, 100); ). <br />
2292 /// Please note that this multi-cascade setting is especially possible for this NUI object (Size2D). <br />
2293 /// This means by default others are impossible so it is recommended that NUI object typed properties are configured by their constructor with parameters. <br />
2294 /// For example, this code is working fine : view.Scale = new Vector3( 2.0f, 1.5f, 0.0f); <br />
2295 /// but this will not work! : view.Scale.X = 2.0f; view.Scale.Y = 1.5f; <br />
2296 /// It may not match the current value in some cases, i.e. when the animation is progressing or the maximum or minimum size is set. <br />
2298 /// <since_tizen> 3 </since_tizen>
2299 public Size2D Size2D
2303 Size2D temp = (Size2D)GetValue(Size2DProperty);
2304 return new Size2D(OnSize2DChanged, temp.Width, temp.Height);
2308 SetValue(Size2DProperty, value);
2309 // Set Specification so when layouts measure this View it matches the value set here.
2310 // All Views are currently Layouts.
2311 MeasureSpecificationWidth = new MeasureSpecification(new LayoutLength(value.Width), MeasureSpecification.ModeType.Exactly);
2312 MeasureSpecificationHeight = new MeasureSpecification(new LayoutLength(value.Height), MeasureSpecification.ModeType.Exactly);
2313 _widthPolicy = value.Width;
2314 _heightPolicy = value.Height;
2315 _layout?.RequestLayout();
2316 NotifyPropertyChanged();
2321 /// Retrieves the size of the view.<br />
2322 /// The coordinates are relative to the view's parent.<br />
2324 /// <since_tizen> 3 </since_tizen>
2325 public Size2D CurrentSize
2329 return GetCurrentSize();
2334 /// Retrieves and sets the view's opacity.<br />
2336 /// <since_tizen> 3 </since_tizen>
2337 public float Opacity
2341 return (float)GetValue(OpacityProperty);
2345 SetValue(OpacityProperty, value);
2346 NotifyPropertyChanged();
2351 /// Sets the position of the view for X and Y.<br />
2352 /// By default, sets the position vector between the parent origin and the pivot point (default).<br />
2353 /// If the position inheritance is disabled, sets the world position.<br />
2356 /// This NUI object (Position2D) typed property can be configured by multiple cascade setting. <br />
2357 /// For example, this code ( view.Position2D.X = 100; view.Position2D.Y = 100; ) is equivalent to this ( view.Position2D = new Position2D(100, 100); ). <br />
2358 /// Please note that this multi-cascade setting is especially possible for this NUI object (Position2D). <br />
2359 /// This means by default others are impossible so it is recommended that NUI object typed properties are configured by their constructor with parameters. <br />
2360 /// For example, this code is working fine : view.Scale = new Vector3( 2.0f, 1.5f, 0.0f); <br />
2361 /// but this will not work! : view.Scale.X = 2.0f; view.Scale.Y = 1.5f; <br />
2363 /// <since_tizen> 3 </since_tizen>
2364 public Position2D Position2D
2368 Position2D temp = (Position2D)GetValue(Position2DProperty);
2369 return new Position2D(OnPosition2DChanged, temp.X, temp.Y);
2373 SetValue(Position2DProperty, value);
2374 NotifyPropertyChanged();
2379 /// Retrieves the screen postion of the view.<br />
2381 /// <since_tizen> 3 </since_tizen>
2382 public Vector2 ScreenPosition
2386 Vector2 temp = new Vector2(0.0f, 0.0f);
2387 GetProperty(View.Property.SCREEN_POSITION).Get(temp);
2393 /// Determines whether the pivot point should be used to determine the position of the view.
2394 /// This is true by default.
2396 /// <remarks>If false, then the top-left of the view is used for the position.
2397 /// Setting this to false will allow scaling or rotation around the pivot point without affecting the view's position.
2399 /// <since_tizen> 3 </since_tizen>
2400 public bool PositionUsesPivotPoint
2404 return (bool)GetValue(PositionUsesPivotPointProperty);
2408 SetValue(PositionUsesPivotPointProperty, value);
2409 NotifyPropertyChanged();
2414 /// Deprecated in API5; Will be removed in API8. Please use PositionUsesPivotPoint instead!
2416 /// <since_tizen> 3 </since_tizen>
2417 [Obsolete("Deprecated in API5; Will be removed in API8. Please use PositionUsesPivotPoint instead! " +
2419 "View view = new View(); " +
2420 "view.PivotPoint = PivotPoint.Center; " +
2421 "view.PositionUsesPivotPoint = true;" +
2422 " Deprecated in API5: Will be removed in API8")]
2423 [EditorBrowsable(EditorBrowsableState.Never)]
2424 public bool PositionUsesAnchorPoint
2429 GetProperty(View.Property.POSITION_USES_ANCHOR_POINT).Get(out temp);
2434 SetProperty(View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
2435 NotifyPropertyChanged();
2440 /// Queries whether the view is connected to the stage.<br />
2441 /// When a view is connected, it will be directly or indirectly parented to the root view.<br />
2443 /// <since_tizen> 3 </since_tizen>
2444 public bool IsOnWindow
2453 /// Gets the depth in the hierarchy for the view.
2455 /// <since_tizen> 3 </since_tizen>
2456 public int HierarchyDepth
2460 return GetHierarchyDepth();
2465 /// Sets the sibling order of the view so the depth position can be defined within the same parent.
2468 /// Note the initial value is 0. SiblingOrder should be bigger than 0 or equal to 0.
2469 /// Raise, Lower, RaiseToTop, LowerToBottom, RaiseAbove, and LowerBelow will override the sibling order.
2470 /// The values set by this property will likely change.
2472 /// <since_tizen> 3 </since_tizen>
2473 public int SiblingOrder
2477 return (int)GetValue(SiblingOrderProperty);
2481 SetValue(SiblingOrderProperty, value);
2482 NotifyPropertyChanged();
2487 /// Returns the natural size of the view.
2490 /// Deriving classes stipulate the natural size and by default a view has a zero natural size.
2492 /// <since_tizen> 5 </since_tizen>
2493 public Vector3 NaturalSize
2497 Vector3 ret = new Vector3(Interop.Actor.Actor_GetNaturalSize(swigCPtr), true);
2498 if (NDalicPINVOKE.SWIGPendingException.Pending)
2499 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2505 /// Returns the natural size (Size2D) of the view.
2508 /// Deriving classes stipulate the natural size and by default a view has a zero natural size.
2510 /// <since_tizen> 4 </since_tizen>
2511 public Size2D NaturalSize2D
2515 Vector3 temp = new Vector3(Interop.Actor.Actor_GetNaturalSize(swigCPtr), true);
2516 if (NDalicPINVOKE.SWIGPendingException.Pending)
2517 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2519 return new Size2D((int)temp.Width, (int)temp.Height);
2524 /// Gets or sets the origin of a view within its parent's area.<br />
2525 /// This is expressed in unit coordinates, such that (0.0, 0.0, 0.5) is the top-left corner of the parent, and (1.0, 1.0, 0.5) is the bottom-right corner.<br />
2526 /// The default parent-origin is ParentOrigin.TopLeft (0.0, 0.0, 0.5).<br />
2527 /// A view's position is the distance between this origin and the view's anchor-point.<br />
2529 /// <pre>The view has been initialized.</pre>
2530 /// <since_tizen> 3 </since_tizen>
2531 public Position ParentOrigin
2535 Position tmp = (Position)GetValue(ParentOriginProperty);
2536 return new Position(OnParentOriginChanged, tmp.X, tmp.Y, tmp.Z);
2540 SetValue(ParentOriginProperty, value);
2541 NotifyPropertyChanged();
2546 /// Gets or sets the anchor-point of a view.<br />
2547 /// This is expressed in unit coordinates, such that (0.0, 0.0, 0.5) is the top-left corner of the view, and (1.0, 1.0, 0.5) is the bottom-right corner.<br />
2548 /// The default pivot point is PivotPoint.Center (0.5, 0.5, 0.5).<br />
2549 /// A view position is the distance between its parent-origin and this anchor-point.<br />
2550 /// A view's orientation is the rotation from its default orientation, the rotation is centered around its anchor-point.<br />
2551 /// <pre>The view has been initialized.</pre>
2553 /// <since_tizen> 3 </since_tizen>
2554 public Position PivotPoint
2558 Position tmp = (Position)GetValue(PivotPointProperty);
2559 return new Position(OnPivotPointChanged, tmp.X, tmp.Y, tmp.Z);
2563 SetValue(PivotPointProperty, value);
2564 NotifyPropertyChanged();
2569 /// Gets or sets the size width of the view.
2571 /// <since_tizen> 3 </since_tizen>
2572 public float SizeWidth
2576 return (float)GetValue(SizeWidthProperty);
2580 SetValue(SizeWidthProperty, value);
2581 WidthSpecification = (int)Math.Ceiling(value);
2582 NotifyPropertyChanged();
2587 /// Gets or sets the size height of the view.
2589 /// <since_tizen> 3 </since_tizen>
2590 public float SizeHeight
2594 return (float)GetValue(SizeHeightProperty);
2598 SetValue(SizeHeightProperty, value);
2599 HeightSpecification = (int)Math.Ceiling(value);
2600 NotifyPropertyChanged();
2605 /// Gets or sets the position of the view.<br />
2606 /// By default, sets the position vector between the parent origin and pivot point (default).<br />
2607 /// If the position inheritance is disabled, sets the world position.<br />
2609 /// <since_tizen> 3 </since_tizen>
2610 public Position Position
2614 Position tmp = (Position)GetValue(PositionProperty);
2615 return new Position(OnPositionChanged, tmp.X, tmp.Y, tmp.Z);
2619 SetValue(PositionProperty, value);
2620 NotifyPropertyChanged();
2625 /// Gets or sets the position X of the view.
2627 /// <since_tizen> 3 </since_tizen>
2628 public float PositionX
2632 return (float)GetValue(PositionXProperty);
2636 SetValue(PositionXProperty, value);
2637 NotifyPropertyChanged();
2642 /// Gets or sets the position Y of the view.
2644 /// <since_tizen> 3 </since_tizen>
2645 public float PositionY
2649 return (float)GetValue(PositionYProperty);
2653 SetValue(PositionYProperty, value);
2654 NotifyPropertyChanged();
2659 /// Gets or sets the position Z of the view.
2661 /// <since_tizen> 3 </since_tizen>
2662 public float PositionZ
2666 return (float)GetValue(PositionZProperty);
2670 SetValue(PositionZProperty, value);
2671 NotifyPropertyChanged();
2676 /// Gets or sets the world position of the view.
2678 /// <since_tizen> 3 </since_tizen>
2679 public Vector3 WorldPosition
2683 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
2684 GetProperty(View.Property.WORLD_POSITION).Get(temp);
2690 /// Gets or sets the orientation of the view.<br />
2691 /// The view's orientation is the rotation from its default orientation, and the rotation is centered around its anchor-point.<br />
2693 /// <remarks>This is an asynchronous method.</remarks>
2694 /// <since_tizen> 3 </since_tizen>
2695 public Rotation Orientation
2699 return (Rotation)GetValue(OrientationProperty);
2703 SetValue(OrientationProperty, value);
2704 NotifyPropertyChanged();
2709 /// Gets or sets the world orientation of the view.<br />
2711 /// <since_tizen> 3 </since_tizen>
2712 public Rotation WorldOrientation
2716 Rotation temp = new Rotation();
2717 GetProperty(View.Property.WORLD_ORIENTATION).Get(temp);
2723 /// Gets or sets the scale factor applied to the view.<br />
2725 /// <since_tizen> 3 </since_tizen>
2726 public Vector3 Scale
2730 return (Vector3)GetValue(ScaleProperty);
2734 SetValue(ScaleProperty, value);
2735 NotifyPropertyChanged();
2740 /// Gets or sets the scale X factor applied to the view.
2742 /// <since_tizen> 3 </since_tizen>
2747 return (float)GetValue(ScaleXProperty);
2751 SetValue(ScaleXProperty, value);
2752 NotifyPropertyChanged();
2757 /// Gets or sets the scale Y factor applied to the view.
2759 /// <since_tizen> 3 </since_tizen>
2764 return (float)GetValue(ScaleYProperty);
2768 SetValue(ScaleYProperty, value);
2769 NotifyPropertyChanged();
2774 /// Gets or sets the scale Z factor applied to the view.
2776 /// <since_tizen> 3 </since_tizen>
2781 return (float)GetValue(ScaleZProperty);
2785 SetValue(ScaleZProperty, value);
2786 NotifyPropertyChanged();
2791 /// Gets the world scale of the view.
2793 /// <since_tizen> 3 </since_tizen>
2794 public Vector3 WorldScale
2798 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
2799 GetProperty(View.Property.WORLD_SCALE).Get(temp);
2805 /// Retrieves the visibility flag of the view.
2808 /// If the view is not visible, then the view and its children will not be rendered.
2809 /// This is regardless of the individual visibility values of the children, i.e., the view will only be rendered if all of its parents have visibility set to true.
2811 /// <since_tizen> 3 </since_tizen>
2812 public bool Visibility
2817 GetProperty(View.Property.VISIBLE).Get(out temp);
2823 /// Gets the view's world color.
2825 /// <since_tizen> 3 </since_tizen>
2826 public Vector4 WorldColor
2830 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
2831 GetProperty(View.Property.WORLD_COLOR).Get(temp);
2837 /// Gets or sets the view's name.
2839 /// <since_tizen> 3 </since_tizen>
2844 return (string)GetValue(NameProperty);
2848 SetValue(NameProperty, value);
2849 NotifyPropertyChanged();
2854 /// Get the number of children held by the view.
2856 /// <since_tizen> 3 </since_tizen>
2857 public new uint ChildCount
2861 return GetChildCount();
2866 /// Gets the view's ID.
2869 /// <since_tizen> 3 </since_tizen>
2879 /// Gets or sets the status of whether the view should emit touch or hover signals.
2881 /// <since_tizen> 3 </since_tizen>
2882 public bool Sensitive
2886 return (bool)GetValue(SensitiveProperty);
2890 SetValue(SensitiveProperty, value);
2891 NotifyPropertyChanged();
2896 /// Gets or sets the status of whether the view should receive a notification when touch or hover motion events leave the boundary of the view.
2898 /// <since_tizen> 3 </since_tizen>
2899 public bool LeaveRequired
2903 return (bool)GetValue(LeaveRequiredProperty);
2907 SetValue(LeaveRequiredProperty, value);
2908 NotifyPropertyChanged();
2913 /// Gets or sets the status of whether a child view inherits it's parent's orientation.
2915 /// <since_tizen> 3 </since_tizen>
2916 public bool InheritOrientation
2920 return (bool)GetValue(InheritOrientationProperty);
2924 SetValue(InheritOrientationProperty, value);
2925 NotifyPropertyChanged();
2930 /// Gets or sets the status of whether a child view inherits it's parent's scale.
2932 /// <since_tizen> 3 </since_tizen>
2933 public bool InheritScale
2937 return (bool)GetValue(InheritScaleProperty);
2941 SetValue(InheritScaleProperty, value);
2942 NotifyPropertyChanged();
2947 /// Gets or sets the status of how the view and its children should be drawn.<br />
2948 /// Not all views are renderable, but DrawMode can be inherited from any view.<br />
2949 /// If an object is in a 3D layer, it will be depth-tested against other objects in the world, i.e., it may be obscured if other objects are in front.<br />
2950 /// If DrawMode.Overlay2D is used, the view and its children will be drawn as a 2D overlay.<br />
2951 /// Overlay views are drawn in a separate pass, after all non-overlay views within the layer.<br />
2952 /// For overlay views, the drawing order is with respect to tree levels of views, and depth-testing will not be used.<br />
2954 /// <since_tizen> 3 </since_tizen>
2955 public DrawModeType DrawMode
2959 return (DrawModeType)GetValue(DrawModeProperty);
2963 SetValue(DrawModeProperty, value);
2964 NotifyPropertyChanged();
2969 /// Gets or sets the relative to parent size factor of the view.<br />
2970 /// This factor is only used when ResizePolicyType is set to either: ResizePolicyType.SizeRelativeToParent or ResizePolicyType.SizeFixedOffsetFromParent.<br />
2971 /// This view's size is set to the view's size multiplied by or added to this factor, depending on ResizePolicyType.<br />
2973 /// <since_tizen> 3 </since_tizen>
2974 public Vector3 SizeModeFactor
2978 return (Vector3)GetValue(SizeModeFactorProperty);
2982 SetValue(SizeModeFactorProperty, value);
2983 NotifyPropertyChanged();
2988 /// Gets or sets the width resize policy to be used.
2990 /// <since_tizen> 3 </since_tizen>
2991 public ResizePolicyType WidthResizePolicy
2995 return (ResizePolicyType)GetValue(WidthResizePolicyProperty);
2999 SetValue(WidthResizePolicyProperty, value);
3000 // Match ResizePolicy to new Layouting.
3001 // Parent relative policies can not be mapped at this point as parent size unknown.
3004 case ResizePolicyType.UseNaturalSize:
3006 WidthSpecification = LayoutParamPolicies.WrapContent;
3009 case ResizePolicyType.FillToParent:
3011 WidthSpecification = LayoutParamPolicies.MatchParent;
3014 case ResizePolicyType.FitToChildren:
3016 WidthSpecification = LayoutParamPolicies.WrapContent;
3022 NotifyPropertyChanged();
3027 /// Gets or sets the height resize policy to be used.
3029 /// <since_tizen> 3 </since_tizen>
3030 public ResizePolicyType HeightResizePolicy
3034 return (ResizePolicyType)GetValue(HeightResizePolicyProperty);
3038 SetValue(HeightResizePolicyProperty, value);
3039 // Match ResizePolicy to new Layouting.
3040 // Parent relative policies can not be mapped at this point as parent size unknown.
3043 case ResizePolicyType.UseNaturalSize:
3045 HeightSpecification = LayoutParamPolicies.WrapContent;
3048 case ResizePolicyType.FillToParent:
3050 HeightSpecification = LayoutParamPolicies.MatchParent;
3053 case ResizePolicyType.FitToChildren:
3055 HeightSpecification = LayoutParamPolicies.WrapContent;
3061 NotifyPropertyChanged();
3066 /// Gets or sets the policy to use when setting size with size negotiation.<br />
3067 /// Defaults to SizeScalePolicyType.UseSizeSet.<br />
3069 /// <since_tizen> 3 </since_tizen>
3070 public SizeScalePolicyType SizeScalePolicy
3074 return (SizeScalePolicyType)GetValue(SizeScalePolicyProperty);
3078 SetValue(SizeScalePolicyProperty, value);
3079 NotifyPropertyChanged();
3084 /// Gets or sets the status of whether the width size is dependent on the height size.
3086 /// <since_tizen> 3 </since_tizen>
3087 public bool WidthForHeight
3091 return (bool)GetValue(WidthForHeightProperty);
3095 SetValue(WidthForHeightProperty, value);
3096 NotifyPropertyChanged();
3101 /// Gets or sets the status of whether the height size is dependent on the width size.
3103 /// <since_tizen> 3 </since_tizen>
3104 public bool HeightForWidth
3108 return (bool)GetValue(HeightForWidthProperty);
3112 SetValue(HeightForWidthProperty, value);
3113 NotifyPropertyChanged();
3118 /// Gets or sets the padding for use in layout.
3120 /// <since_tizen> 5 </since_tizen>
3121 public Extents Padding
3125 // If View has a Layout then padding in stored in the base Layout class
3128 return Layout.Padding;
3132 return (Extents)GetValue(PaddingProperty);
3134 // Two return points to prevent creating a zeroed Extent native object before assignment
3138 Extents padding = value;
3141 // Layout set so store Padding in LayoutItem instead of in View.
3142 // If View stores the Padding value then Legacy Size Negotiation will overwrite
3143 // the position and sizes measure in the Layouting.
3144 Layout.Padding = value;
3145 // If Layout is a LayoutItem then it could be a View that handles it's own padding.
3146 // Let the View keeps it's padding. Still store Padding in Layout to reduce code paths.
3147 if( Layout.GetType() != typeof(LayoutItem)) // If a Layout container of some kind.
3149 padding = new Extents(0,0,0,0); // Reset value stored in View.
3151 _layout?.RequestLayout();
3153 SetValue(PaddingProperty, padding);
3154 NotifyPropertyChanged();
3155 _layout?.RequestLayout();
3160 /// Gets or sets the minimum size the view can be assigned in size negotiation.
3162 /// <since_tizen> 3 </since_tizen>
3163 public Size2D MinimumSize
3167 Size2D tmp = (Size2D)GetValue(MinimumSizeProperty);
3168 return new Size2D(OnMinimumSizeChanged, tmp.Width, tmp.Height);
3172 if (_layout != null)
3174 // Note: it only works if minimum size is >= than natural size.
3175 // To force the size it should be done through the width&height spec or Size2D.
3176 _layout.MinimumWidth = new Tizen.NUI.LayoutLength(value.Width);
3177 _layout.MinimumHeight = new Tizen.NUI.LayoutLength(value.Height);
3178 _layout.RequestLayout();
3180 SetValue(MinimumSizeProperty, value);
3181 NotifyPropertyChanged();
3186 /// Gets or sets the maximum size the view can be assigned in size negotiation.
3188 /// <since_tizen> 3 </since_tizen>
3189 public Size2D MaximumSize
3193 Size2D tmp = (Size2D)GetValue(MaximumSizeProperty);
3194 return new Size2D(OnMaximumSizeChanged, tmp.Width, tmp.Height);
3198 // We don't have Layout.Maximum(Width|Height) so we cannot apply it to layout.
3199 // MATCH_PARENT spec + parent container size can be used to limit
3200 if (_layout != null)
3202 // Note: it only works if minimum size is >= than natural size.
3203 // To force the size it should be done through the width&height spec or Size2D.
3204 _layout.MinimumHeight = new Tizen.NUI.LayoutLength(value.Width);
3205 _layout.MinimumWidth = new Tizen.NUI.LayoutLength(value.Height);
3206 _layout.RequestLayout();
3208 SetValue(MaximumSizeProperty, value);
3209 NotifyPropertyChanged();
3214 /// Gets or sets whether a child view inherits it's parent's position.<br />
3215 /// Default is to inherit.<br />
3216 /// Switching this off means that using position sets the view's world position, i.e., translates from the world origin (0,0,0) to the pivot point of the view.<br />
3218 /// <since_tizen> 3 </since_tizen>
3219 public bool InheritPosition
3223 return (bool)GetValue(InheritPositionProperty);
3227 SetValue(InheritPositionProperty, value);
3228 NotifyPropertyChanged();
3233 /// Gets or sets the clipping behavior (mode) of it's children.
3235 /// <since_tizen> 3 </since_tizen>
3236 public ClippingModeType ClippingMode
3240 return (ClippingModeType)GetValue(ClippingModeProperty);
3244 SetValue(ClippingModeProperty, value);
3245 NotifyPropertyChanged();
3250 /// Gets the number of renderers held by the view.
3252 /// <since_tizen> 3 </since_tizen>
3253 public uint RendererCount
3257 return GetRendererCount();
3262 /// Deprecated in API5; Will be removed in API8. Please use PivotPoint instead!
3264 /// <since_tizen> 3 </since_tizen>
3265 [Obsolete("Deprecated in API5; Will be removed in API8. Please use PivotPoint instead! " +
3267 "View view = new View(); " +
3268 "view.PivotPoint = PivotPoint.Center; " +
3269 "view.PositionUsesPivotPoint = true;")]
3270 [EditorBrowsable(EditorBrowsableState.Never)]
3271 public Position AnchorPoint
3275 Position temp = new Position(0.0f, 0.0f, 0.0f);
3276 GetProperty(View.Property.ANCHOR_POINT).Get(temp);
3281 SetProperty(View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
3282 NotifyPropertyChanged();
3287 /// Sets the size of a view for the width, the height and the depth.<br />
3288 /// Geometry can be scaled to fit within this area.<br />
3289 /// This does not interfere with the view's scale factor.<br />
3290 /// The views default depth is the minimum of width and height.<br />
3293 /// Please note that multi-cascade setting is not possible for this NUI object. <br />
3294 /// It is recommended that NUI object typed properties are configured by their constructor with parameters. <br />
3295 /// For example, this code is working fine : view.Size = new Size( 1.0f, 1.0f, 0.0f); <br />
3296 /// but this will not work! : view.Size.Width = 2.0f; view.Size.Height = 2.0f; <br />
3297 /// It may not match the current value in some cases, i.e. when the animation is progressing or the maximum or minimu size is set. <br />
3299 /// <since_tizen> 5 </since_tizen>
3304 Size tmp = (Size)GetValue(SizeProperty);
3305 return new Size(OnSizeChanged, tmp.Width, tmp.Height, tmp.Depth);
3309 SetValue(SizeProperty, value);
3310 // Set Specification so when layouts measure this View it matches the value set here.
3311 // All Views are currently Layouts.
3312 WidthSpecification = (int)Math.Ceiling(value.Width);
3313 HeightSpecification = (int)Math.Ceiling(value.Height);
3314 NotifyPropertyChanged();
3319 /// Deprecated in API5; Will be removed in API8. Please use 'Container GetParent() for derived class' instead!
3321 /// <since_tizen> 3 </since_tizen>
3322 [Obsolete("Deprecated in API5; Will be removed in API8. Please use 'Container GetParent() for derived class' instead! " +
3324 "Container parent = view.GetParent(); " +
3325 "View view = parent as View;")]
3326 [EditorBrowsable(EditorBrowsableState.Never)]
3327 public new View Parent
3332 IntPtr cPtr = Interop.Actor.Actor_GetParent(swigCPtr);
3333 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
3334 BaseHandle basehandle = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle);
3336 if (basehandle is Layer layer)
3338 ret = new View(Layer.getCPtr(layer).Handle, false);
3339 NUILog.Error("This Parent property is deprecated, shoud do not be used");
3343 ret = basehandle as View;
3346 Interop.BaseHandle.delete_BaseHandle(CPtr);
3347 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
3349 if (NDalicPINVOKE.SWIGPendingException.Pending)
3350 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3356 /// Gets/Sets whether inherit parent's the layout Direction.
3358 /// <since_tizen> 4 </since_tizen>
3359 public bool InheritLayoutDirection
3363 return (bool)GetValue(InheritLayoutDirectionProperty);
3367 SetValue(InheritLayoutDirectionProperty, value);
3368 NotifyPropertyChanged();
3373 /// Gets/Sets the layout Direction.
3375 /// <since_tizen> 4 </since_tizen>
3376 public ViewLayoutDirectionType LayoutDirection
3380 return (ViewLayoutDirectionType)GetValue(LayoutDirectionProperty);
3384 SetValue(LayoutDirectionProperty, value);
3385 NotifyPropertyChanged();
3386 _layout?.RequestLayout();
3391 /// Gets or sets the Margin for use in layout.
3394 /// Margin property is supported by Layout algorithms and containers.
3395 /// Please Set Layout if you want to use Margin property.
3397 /// <since_tizen> 4 </since_tizen>
3398 public Extents Margin
3402 // If View has a Layout then margin is stored in Layout.
3405 return Layout.Margin;
3409 // If Layout not set then return margin stored in View.
3410 return (Extents)GetValue(MarginProperty);
3412 // Two return points to prevent creating a zeroed Extent native object before assignment
3418 // Layout set so store Margin in LayoutItem instead of View.
3419 // If View stores the Margin too then the Legacy Size Negotiation will
3420 // overwrite the position and size values measured in the Layouting.
3421 Layout.Margin = value;
3422 SetValue(MarginProperty, new Extents(0,0,0,0));
3423 _layout?.RequestLayout();
3427 SetValue(MarginProperty, value);
3429 NotifyPropertyChanged();
3430 _layout?.RequestLayout();
3435 /// The required policy for this dimension, LayoutParamPolicies enum or exact value.
3437 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
3439 /// Previously named LayoutWidthSpecification
3441 [EditorBrowsable(EditorBrowsableState.Never)]
3442 public int WidthSpecification
3446 return _widthPolicy;
3450 _widthPolicy = value;
3451 if (_widthPolicy >= 0)
3453 _measureSpecificationWidth = new MeasureSpecification( new LayoutLength(value), MeasureSpecification.ModeType.Exactly );
3454 //Tizen.NUI.Object.SetProperty(swigCPtr, View.Property.SIZE_WIDTH, new Tizen.NUI.PropertyValue(value));
3455 Size2D.Width = _widthPolicy;
3457 _layout?.RequestLayout();
3462 /// The required policy for this dimension, LayoutParamPolicies enum or exact value.
3464 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
3466 /// Previously named LayoutHeightSpecification
3468 [EditorBrowsable(EditorBrowsableState.Never)]
3469 public int HeightSpecification
3473 return _heightPolicy;
3477 _heightPolicy = value;
3478 if (_heightPolicy >= 0)
3480 _measureSpecificationHeight = new MeasureSpecification( new LayoutLength(value), MeasureSpecification.ModeType.Exactly );
3481 //Tizen.NUI.Object.SetProperty(swigCPtr, View.Property.SIZE_HEIGHT, new Tizen.NUI.PropertyValue(value));
3482 Size2D.Height = _heightPolicy;
3484 _layout?.RequestLayout();
3489 /// Gets the List of transitions for this View.
3491 /// Hidden-API which is usually used as Inhouse-API. If required to be opened as Public-API, ACR process is needed.
3492 [EditorBrowsable(EditorBrowsableState.Never)]
3493 public Dictionary<TransitionCondition, TransitionList> LayoutTransitions
3497 if (_layoutTransitions == null)
3499 _layoutTransitions = new Dictionary<TransitionCondition, TransitionList>();
3501 return _layoutTransitions;
3505 internal LayoutTransition LayoutTransition
3509 if (_layoutTransitions == null)
3511 _layoutTransitions = new Dictionary<TransitionCondition, TransitionList>();
3513 LayoutTransitionsHelper.AddTransitionForCondition(_layoutTransitions,value.Condition,value, true);
3515 AttachTransitionsToChildren(value);
3520 /// Deprecated in API5; Will be removed in API8. Please use Padding instead.
3522 /// <since_tizen> 4 </since_tizen>
3523 [Obsolete("Deprecated in API5; Will be removed in API8. Please use Padding instead.")]
3524 [EditorBrowsable(EditorBrowsableState.Never)]
3525 public Extents PaddingEX
3529 Extents temp = new Extents(0, 0, 0, 0);
3530 GetProperty(View.Property.PADDING).Get(temp);
3535 SetProperty(View.Property.PADDING, new Tizen.NUI.PropertyValue(value));
3536 NotifyPropertyChanged();
3537 _layout?.RequestLayout();
3541 /// <since_tizen> 6 </since_tizen>
3542 /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
3543 [EditorBrowsable(EditorBrowsableState.Never)]
3544 public Style XamlStyle
3548 return (Style)GetValue(XamlStyleProperty);
3552 SetValue(XamlStyleProperty, value);
3557 /// The Color of View. This is an RGBA value.
3559 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
3560 [EditorBrowsable(EditorBrowsableState.Never)]
3569 return GetCurrentColor();
3574 /// The color mode of View.
3575 /// This specifies whether the View uses its own color, or inherits its parent color.
3576 /// The default is ColorMode.UseOwnMultiplyParentColor.
3578 internal ColorMode ColorMode
3582 SetColorMode(value);
3586 return GetColorMode();
3590 internal float Weight
3599 _layout?.RequestLayout();
3604 /// Whether to load the BackgroundImage synchronously.
3605 /// If not specified, the default is false, i.e. the BackgroundImage is loaded asynchronously.
3606 /// Note: For Normal Quad images only.
3608 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
3609 [EditorBrowsable(EditorBrowsableState.Never)]
3610 public bool BackgroundImageSynchronosLoading
3614 return _backgroundImageSynchronosLoading;
3618 if (value != _backgroundImageSynchronosLoading)
3621 PropertyMap bgMap = this.Background;
3623 bgMap.Find(Visual.Property.Type)?.Get(out visualType);
3624 if (visualType == (int)Visual.Type.Image)
3626 bgMap.Find(ImageVisualProperty.URL)?.Get(out bgUrl);
3628 if (bgUrl.Length != 0)
3630 _backgroundImageSynchronosLoading = value;
3631 bgMap.Add("synchronousLoading", new PropertyValue(_backgroundImageSynchronosLoading));
3632 this.Background = bgMap;
3638 internal float WorldPositionX
3643 GetProperty(View.Property.WORLD_POSITION_X).Get(out temp);
3648 internal float WorldPositionY
3653 GetProperty(View.Property.WORLD_POSITION_Y).Get(out temp);
3658 internal float WorldPositionZ
3663 GetProperty(View.Property.WORLD_POSITION_Z).Get(out temp);
3668 internal bool FocusState
3672 return IsKeyboardFocusable();
3676 SetKeyboardFocusable(value);
3681 /// Set the layout on this View. Replaces any existing Layout.
3683 internal LayoutItem Layout
3691 // Do nothing if layout provided is already set on this View.
3692 if (value == _layout)
3697 Log.Info("NUI", "Setting Layout on:" + Name + "\n");
3698 layoutingDisabled = false;
3701 // If new layout being set already has a owner then that owner receives a replacement default layout.
3702 // First check if the layout to be set already has a owner.
3703 if (value?.Owner != null)
3705 Log.Info("NUI", "Set layout already in use by another View: " + value.Owner.Name + "will get a LayoutGroup\n");
3706 // Previous owner of the layout gets a default layout as a replacement.
3707 value.Owner.Layout = new LayoutGroup();
3709 // Copy Margin and Padding to replacement LayoutGroup.
3710 value.Owner.Layout.Margin = value.Margin;
3711 value.Owner.Layout.Padding = value.Padding;
3714 // Copy Margin and Padding to new layout being set or restore padding and margin back to
3715 // View if no replacement. Previously margin and padding values would have been moved from
3716 // the View to the layout.
3717 if (_layout != null ) // Existing layout
3721 // Existing layout being replaced so copy over margin and padding values.
3722 value.Margin = _layout.Margin;
3723 value.Padding = _layout.Padding;
3727 // Layout not being replaced so restore margin and padding to View.
3728 SetValue(MarginProperty, _layout.Margin);
3729 SetValue(PaddingProperty, _layout.Padding);
3730 NotifyPropertyChanged();
3735 // First Layout to be added to the View hence copy
3737 // Do not try to set Margins or Padding on a null Layout (when a layout is being removed from a View)
3740 if (Margin.Top != 0 || Margin.Bottom !=0 || Margin.Start !=0 || Margin.End != 0)
3742 // If View already has a margin set then store it in Layout instead.
3743 value.Margin = Margin;
3744 SetValue(MarginProperty, new Extents(0,0,0,0));
3745 NotifyPropertyChanged();
3748 if (Padding.Top != 0 || Padding.Bottom !=0 || Padding.Start !=0 || Padding.End != 0)
3750 // If View already has a padding set then store it in Layout instead.
3751 value.Padding = Padding;
3752 SetValue(PaddingProperty, new Extents(0,0,0,0));
3753 NotifyPropertyChanged();
3758 // Remove existing layout from it's parent layout group.
3759 _layout?.Unparent();
3761 // Set layout to this view
3766 internal void SetLayout(LayoutItem layout)
3769 _layout?.AttachToOwner(this);
3770 _layout?.RequestLayout();
3774 /// Stores the calculated width value and its ModeType. Width component.
3776 internal MeasureSpecification MeasureSpecificationWidth
3780 _measureSpecificationWidth = value;
3781 _layout?.RequestLayout();
3785 return _measureSpecificationWidth;
3790 /// Stores the calculated width value and its ModeType. Height component.
3792 internal MeasureSpecification MeasureSpecificationHeight
3796 _measureSpecificationHeight = value;
3797 _layout?.RequestLayout();
3801 return _measureSpecificationHeight;
3805 internal void AttachTransitionsToChildren(LayoutTransition transition)
3807 // Iterate children, adding the transition unless a transition
3808 // for the same condition and property has already been
3809 // explicitly added.
3810 foreach (View view in Children)
3812 LayoutTransitionsHelper.AddTransitionForCondition(view.LayoutTransitions,transition.Condition, transition, false);
3816 internal float ParentOriginX
3821 GetProperty(View.Property.PARENT_ORIGIN_X).Get(out temp);
3826 SetProperty(View.Property.PARENT_ORIGIN_X, new Tizen.NUI.PropertyValue(value));
3827 NotifyPropertyChanged();
3831 internal float ParentOriginY
3836 GetProperty(View.Property.PARENT_ORIGIN_Y).Get(out temp);
3841 SetProperty(View.Property.PARENT_ORIGIN_Y, new Tizen.NUI.PropertyValue(value));
3842 NotifyPropertyChanged();
3846 internal float ParentOriginZ
3851 GetProperty(View.Property.PARENT_ORIGIN_Z).Get(out temp);
3856 SetProperty(View.Property.PARENT_ORIGIN_Z, new Tizen.NUI.PropertyValue(value));
3857 NotifyPropertyChanged();
3861 internal float PivotPointX
3866 GetProperty(View.Property.ANCHOR_POINT_X).Get(out temp);
3871 SetProperty(View.Property.ANCHOR_POINT_X, new Tizen.NUI.PropertyValue(value));
3875 internal float PivotPointY
3880 GetProperty(View.Property.ANCHOR_POINT_Y).Get(out temp);
3885 SetProperty(View.Property.ANCHOR_POINT_Y, new Tizen.NUI.PropertyValue(value));
3889 internal float PivotPointZ
3894 GetProperty(View.Property.ANCHOR_POINT_Z).Get(out temp);
3899 SetProperty(View.Property.ANCHOR_POINT_Z, new Tizen.NUI.PropertyValue(value));
3903 internal Matrix WorldMatrix
3907 Matrix temp = new Matrix();
3908 GetProperty(View.Property.WORLD_MATRIX).Get(temp);
3913 private int LeftFocusableViewId
3918 GetProperty(View.Property.LEFT_FOCUSABLE_VIEW_ID).Get(out temp);
3923 SetProperty(View.Property.LEFT_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
3927 private int RightFocusableViewId
3932 GetProperty(View.Property.RIGHT_FOCUSABLE_VIEW_ID).Get(out temp);
3937 SetProperty(View.Property.RIGHT_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
3941 private int UpFocusableViewId
3946 GetProperty(View.Property.UP_FOCUSABLE_VIEW_ID).Get(out temp);
3951 SetProperty(View.Property.UP_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
3955 private int DownFocusableViewId
3960 GetProperty(View.Property.DOWN_FOCUSABLE_VIEW_ID).Get(out temp);
3965 SetProperty(View.Property.DOWN_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
3970 /// Perform an action on a visual registered to this view. <br />
3971 /// Visuals will have actions. This API is used to perform one of these actions with the given attributes.
3973 /// <param name="propertyIndexOfVisual">The Property index of the visual.</param>
3974 /// <param name="propertyIndexOfActionId">The action to perform. See Visual to find the supported actions.</param>
3975 /// <param name="attributes">Optional attributes for the action.</param>
3976 /// <since_tizen> 5 </since_tizen>
3977 public void DoAction(int propertyIndexOfVisual, int propertyIndexOfActionId, PropertyValue attributes)
3979 Interop.View.View_DoAction(swigCPtr, propertyIndexOfVisual, propertyIndexOfActionId, PropertyValue.getCPtr(attributes));
3980 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3984 /// Creates an animation to animate the background color visual. If there is no
3985 /// background visual, creates one with transparent black as it's mixColor.
3987 /// <since_tizen> 3 </since_tizen>
3988 public Animation AnimateBackgroundColor(object destinationValue,
3991 AlphaFunction.BuiltinFunctions? alphaFunction = null,
3992 object initialValue = null)
3994 Tizen.NUI.PropertyMap background = Background;
3996 if (background.Empty())
3998 // If there is no background yet, ensure there is a transparent
4000 BackgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f);
4001 background = Background;
4003 return AnimateColor("background", destinationValue, startTime, endTime, alphaFunction, initialValue);
4007 /// Creates an animation to animate the mixColor of the named visual.
4009 /// <since_tizen> 3 </since_tizen>
4010 public Animation AnimateColor(string targetVisual, object destinationColor, int startTime, int endTime, AlphaFunction.BuiltinFunctions? alphaFunction = null, object initialColor = null)
4012 Animation animation = null;
4014 PropertyMap _animator = new PropertyMap();
4015 if (alphaFunction != null)
4017 _animator.Add("alphaFunction", new PropertyValue(AlphaFunction.BuiltinToPropertyKey(alphaFunction)));
4020 PropertyMap _timePeriod = new PropertyMap();
4021 _timePeriod.Add("duration", new PropertyValue((endTime - startTime) / 1000.0f));
4022 _timePeriod.Add("delay", new PropertyValue(startTime / 1000.0f));
4023 _animator.Add("timePeriod", new PropertyValue(_timePeriod));
4025 PropertyMap _transition = new PropertyMap();
4026 _transition.Add("animator", new PropertyValue(_animator));
4027 _transition.Add("target", new PropertyValue(targetVisual));
4028 _transition.Add("property", new PropertyValue("mixColor"));
4030 if (initialColor != null)
4032 PropertyValue initValue = PropertyValue.CreateFromObject(initialColor);
4033 _transition.Add("initialValue", initValue);
4036 PropertyValue destValue = PropertyValue.CreateFromObject(destinationColor);
4037 _transition.Add("targetValue", destValue);
4038 TransitionData _transitionData = new TransitionData(_transition);
4040 animation = new Animation(Interop.View.View_CreateTransition(swigCPtr, TransitionData.getCPtr(_transitionData)), true);
4041 if (NDalicPINVOKE.SWIGPendingException.Pending)
4042 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4047 // From Container Base class
4049 /// Adds a child view to this view.
4051 /// <seealso cref="Container.Add" />
4052 /// <since_tizen> 4 </since_tizen>
4053 public override void Add(View child)
4055 bool hasLayout = (_layout != null);
4056 Log.Info("NUI", "Add:" + child.Name + " to View:" + Name + " which has layout[" + hasLayout + "] + \n");
4060 Tizen.Log.Fatal("NUI", "Child is null");
4064 Container oldParent = child.GetParent();
4065 if (oldParent != this)
4067 // If child already has a parent then re-parent child
4068 if (oldParent != null)
4070 oldParent.Remove(child);
4072 child.InternalParent = this;
4074 Interop.Actor.Actor_Add(swigCPtr, View.getCPtr(child));
4076 if (NDalicPINVOKE.SWIGPendingException.Pending)
4077 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4078 Children.Add(child);
4080 if (ChildAdded != null)
4082 ChildAddedEventArgs e = new ChildAddedEventArgs
4086 ChildAdded(this, e);
4088 BindableObject.SetInheritedBindingContext(child, this?.BindingContext);
4093 /// Removes a child view from this View. If the view was not a child of this view, this is a no-op.
4095 /// <seealso cref="Container.Remove" />
4096 /// <since_tizen> 4 </since_tizen>
4097 public override void Remove(View child)
4099 if (!child || child.GetParent()==null) // Early out if child null.
4102 bool hasLayout = (_layout != null);
4103 Log.Info("NUI","Removing View:" + child.Name + " layout[" + hasLayout.ToString() +"]\n");
4105 // If View has a layout then do a deferred child removal
4106 // Actual child removal is performed by the layouting system so
4107 // transitions can be completed.
4110 (_layout as LayoutGroup)?.RemoveChildFromLayoutGroup( child );
4119 /// Retrieves a child view by index.
4121 /// <seealso cref="Container.GetChildAt" />
4122 /// <since_tizen> 4 </since_tizen>
4123 public override View GetChildAt(uint index)
4125 if (index < Children.Count)
4127 return Children[Convert.ToInt32(index)];
4136 /// Retrieves the number of children held by the view.
4138 /// <seealso cref="Container.GetChildCount" />
4139 /// <since_tizen> 4 </since_tizen>
4140 public override uint GetChildCount()
4142 return Convert.ToUInt32(Children.Count);
4146 /// Gets the views parent.
4148 /// <seealso cref="Container.GetParent()" />
4149 /// <since_tizen> 4 </since_tizen>
4150 public override Container GetParent()
4152 return this.InternalParent as Container;
4156 /// Queries whether the view has a focus.
4158 /// <returns>True if this view has a focus.</returns>
4159 /// <since_tizen> 3 </since_tizen>
4160 public bool HasFocus()
4163 if (swigCPtr.Handle != global::System.IntPtr.Zero)
4165 ret = Interop.View.View_HasKeyInputFocus(swigCPtr);
4166 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4170 Tizen.Log.Error("NUI", "swigCPtr of view is aleady disposed.");
4176 /// Sets the name of the style to be applied to the view.
4178 /// <param name="styleName">A string matching a style described in a stylesheet.</param>
4179 /// <since_tizen> 3 </since_tizen>
4180 public void SetStyleName(string styleName)
4182 Interop.View.View_SetStyleName(swigCPtr, styleName);
4183 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4187 /// Retrieves the name of the style to be applied to the view (if any).
4189 /// <returns>A string matching a style, or an empty string.</returns>
4190 /// <since_tizen> 3 </since_tizen>
4191 public string GetStyleName()
4193 string ret = Interop.View.View_GetStyleName(swigCPtr);
4194 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4199 /// Clears the background.
4201 /// <since_tizen> 3 </since_tizen>
4202 public void ClearBackground()
4204 Interop.View.View_ClearBackground(swigCPtr);
4205 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4212 /// This is an asynchronous method.
4214 /// <since_tizen> 3 </since_tizen>
4224 /// This is an asynchronous method.
4225 /// If the view is hidden, then the view and its children will not be rendered.
4226 /// This is regardless of the individual visibility of the children, i.e., the view will only be rendered if all of its parents are shown.
4228 /// <since_tizen> 3 </since_tizen>
4235 /// Raises the view above all other views.
4238 /// Sibling order of views within the parent will be updated automatically.
4239 /// Once a raise or lower API is used, that view will then have an exclusive sibling order independent of insertion.
4241 /// <since_tizen> 3 </since_tizen>
4242 public void RaiseToTop()
4244 var parentChildren = GetParent()?.Children;
4246 if (parentChildren != null)
4248 parentChildren.Remove(this);
4249 parentChildren.Add(this);
4251 Interop.NDalic.RaiseToTop(swigCPtr);
4252 if (NDalicPINVOKE.SWIGPendingException.Pending)
4253 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4259 /// Lowers the view to the bottom of all views.
4262 /// The sibling order of views within the parent will be updated automatically.
4263 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
4265 /// <since_tizen> 3 </since_tizen>
4266 public void LowerToBottom()
4268 var parentChildren = GetParent()?.Children;
4270 if (parentChildren != null)
4272 parentChildren.Remove(this);
4273 parentChildren.Insert(0, this);
4275 Interop.NDalic.LowerToBottom(swigCPtr);
4276 if (NDalicPINVOKE.SWIGPendingException.Pending)
4277 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4282 /// Queries if all resources required by a view are loaded and ready.
4284 /// <remarks>Most resources are only loaded when the control is placed on the stage.
4286 /// <since_tizen> 3 </since_tizen>
4287 public bool IsResourceReady()
4289 bool ret = Interop.View.IsResourceReady(swigCPtr);
4290 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4295 /// Gets the parent layer of this view.If a view has no parent, this method does not do anything.
4297 /// <pre>The view has been initialized. </pre>
4298 /// <returns>The parent layer of view </returns>
4299 /// <since_tizen> 5 </since_tizen>
4300 public Layer GetLayer()
4302 //to fix memory leak issue, match the handle count with native side.
4303 IntPtr cPtr = Interop.Actor.Actor_GetLayer(swigCPtr);
4304 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
4305 Layer ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as Layer;
4306 Interop.BaseHandle.delete_BaseHandle(CPtr);
4307 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
4309 if (NDalicPINVOKE.SWIGPendingException.Pending)
4310 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4315 /// Removes a view from its parent view or layer. If a view has no parent, this method does nothing.
4317 /// <pre>The (child) view has been initialized. </pre>
4318 /// <since_tizen> 4 </since_tizen>
4319 public void Unparent()
4321 GetParent()?.Remove(this);
4325 /// Search through this view's hierarchy for a view with the given name.
4326 /// The view itself is also considered in the search.
4328 /// <pre>The view has been initialized.</pre>
4329 /// <param name="viewName">The name of the view to find.</param>
4330 /// <returns>A handle to the view if found, or an empty handle if not.</returns>
4331 /// <since_tizen> 3 </since_tizen>
4332 public View FindChildByName(string viewName)
4334 //to fix memory leak issue, match the handle count with native side.
4335 IntPtr cPtr = Interop.Actor.Actor_FindChildByName(swigCPtr, viewName);
4336 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
4337 View ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as View;
4338 Interop.BaseHandle.delete_BaseHandle(CPtr);
4339 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
4341 if (NDalicPINVOKE.SWIGPendingException.Pending)
4342 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4347 /// Converts screen coordinates into the view's coordinate system using the default camera.
4349 /// <pre>The view has been initialized.</pre>
4350 /// <remarks>The view coordinates are relative to the top-left(0.0, 0.0, 0.5).</remarks>
4351 /// <param name="localX">On return, the X-coordinate relative to the view.</param>
4352 /// <param name="localY">On return, the Y-coordinate relative to the view.</param>
4353 /// <param name="screenX">The screen X-coordinate.</param>
4354 /// <param name="screenY">The screen Y-coordinate.</param>
4355 /// <returns>True if the conversion succeeded.</returns>
4356 /// <since_tizen> 3 </since_tizen>
4357 public bool ScreenToLocal(out float localX, out float localY, float screenX, float screenY)
4359 bool ret = Interop.Actor.Actor_ScreenToLocal(swigCPtr, out localX, out localY, screenX, screenY);
4360 if (NDalicPINVOKE.SWIGPendingException.Pending)
4361 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4366 /// Sets the relative to parent size factor of the view.<br />
4367 /// This factor is only used when ResizePolicy is set to either:
4368 /// ResizePolicy::SIZE_RELATIVE_TO_PARENT or ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT.<br />
4369 /// This view's size is set to the view's size multiplied by or added to this factor, depending on ResizePolicy.<br />
4371 /// <pre>The view has been initialized.</pre>
4372 /// <param name="factor">A Vector3 representing the relative factor to be applied to each axis.</param>
4373 /// <since_tizen> 3 </since_tizen>
4374 public void SetSizeModeFactor(Vector3 factor)
4376 Interop.Actor.Actor_SetSizeModeFactor(swigCPtr, Vector3.getCPtr(factor));
4377 if (NDalicPINVOKE.SWIGPendingException.Pending)
4378 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4381 /// Calculates the height of the view given a width.<br />
4382 /// The natural size is used for default calculation.<br />
4383 /// Size 0 is treated as aspect ratio 1:1.<br />
4385 /// <param name="width">The width to use.</param>
4386 /// <returns>The height based on the width.</returns>
4387 /// <since_tizen> 3 </since_tizen>
4388 public float GetHeightForWidth(float width)
4390 float ret = Interop.Actor.Actor_GetHeightForWidth(swigCPtr, width);
4391 if (NDalicPINVOKE.SWIGPendingException.Pending)
4392 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4397 /// Calculates the width of the view given a height.<br />
4398 /// The natural size is used for default calculation.<br />
4399 /// Size 0 is treated as aspect ratio 1:1.<br />
4401 /// <param name="height">The height to use.</param>
4402 /// <returns>The width based on the height.</returns>
4403 /// <since_tizen> 3 </since_tizen>
4404 public float GetWidthForHeight(float height)
4406 float ret = Interop.Actor.Actor_GetWidthForHeight(swigCPtr, height);
4407 if (NDalicPINVOKE.SWIGPendingException.Pending)
4408 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4413 /// Return the amount of size allocated for relayout.
4415 /// <param name="dimension">The dimension to retrieve.</param>
4416 /// <returns>Return the size.</returns>
4417 /// <since_tizen> 3 </since_tizen>
4418 public float GetRelayoutSize(DimensionType dimension)
4420 float ret = Interop.Actor.Actor_GetRelayoutSize(swigCPtr, (int)dimension);
4421 if (NDalicPINVOKE.SWIGPendingException.Pending)
4422 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4427 /// Set the padding for the view.
4429 /// <param name="padding">Padding for the view.</param>
4430 /// <since_tizen> 3 </since_tizen>
4431 public void SetPadding(PaddingType padding)
4433 Interop.Actor.Actor_SetPadding(swigCPtr, PaddingType.getCPtr(padding));
4434 if (NDalicPINVOKE.SWIGPendingException.Pending)
4435 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4439 /// Return the value of padding for the view.
4441 /// <param name="paddingOut">the value of padding for the view</param>
4442 /// <since_tizen> 3 </since_tizen>
4443 public void GetPadding(PaddingType paddingOut)
4445 Interop.Actor.Actor_GetPadding(swigCPtr, PaddingType.getCPtr(paddingOut));
4446 if (NDalicPINVOKE.SWIGPendingException.Pending)
4447 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4450 /// <since_tizen> 3 </since_tizen>
4451 public uint AddRenderer(Renderer renderer)
4453 uint ret = Interop.Actor.Actor_AddRenderer(swigCPtr, Renderer.getCPtr(renderer));
4454 if (NDalicPINVOKE.SWIGPendingException.Pending)
4455 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4459 /// <since_tizen> 3 </since_tizen>
4460 public Renderer GetRendererAt(uint index)
4462 //to fix memory leak issue, match the handle count with native side.
4463 IntPtr cPtr = Interop.Actor.Actor_GetRendererAt(swigCPtr, index);
4464 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
4465 Renderer ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as Renderer;
4466 if (cPtr != null && ret == null)
4468 ret = new Renderer(cPtr, false);
4469 if (NDalicPINVOKE.SWIGPendingException.Pending)
4470 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4473 Interop.BaseHandle.delete_BaseHandle(CPtr);
4474 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
4476 if (NDalicPINVOKE.SWIGPendingException.Pending)
4477 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4481 /// <since_tizen> 3 </since_tizen>
4482 public void RemoveRenderer(Renderer renderer)
4484 Interop.Actor.Actor_RemoveRenderer__SWIG_0(swigCPtr, Renderer.getCPtr(renderer));
4485 if (NDalicPINVOKE.SWIGPendingException.Pending)
4486 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4489 /// <since_tizen> 3 </since_tizen>
4490 public void RemoveRenderer(uint index)
4492 Interop.Actor.Actor_RemoveRenderer__SWIG_1(swigCPtr, index);
4493 if (NDalicPINVOKE.SWIGPendingException.Pending)
4494 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4497 internal void Raise()
4499 var parentChildren = GetParent()?.Children;
4501 if (parentChildren != null)
4503 int currentIndex = parentChildren.IndexOf(this);
4505 // If the view is not already the last item in the list.
4506 if (currentIndex >= 0 && currentIndex < parentChildren.Count - 1)
4508 View temp = parentChildren[currentIndex + 1];
4509 parentChildren[currentIndex + 1] = this;
4510 parentChildren[currentIndex] = temp;
4512 Interop.NDalic.Raise(swigCPtr);
4513 if (NDalicPINVOKE.SWIGPendingException.Pending)
4514 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4519 internal void Lower()
4521 var parentChildren = GetParent()?.Children;
4523 if (parentChildren != null)
4525 int currentIndex = parentChildren.IndexOf(this);
4527 // If the view is not already the first item in the list.
4528 if (currentIndex > 0 && currentIndex < parentChildren.Count)
4530 View temp = parentChildren[currentIndex - 1];
4531 parentChildren[currentIndex - 1] = this;
4532 parentChildren[currentIndex] = temp;
4534 Interop.NDalic.Lower(swigCPtr);
4535 if (NDalicPINVOKE.SWIGPendingException.Pending)
4536 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4542 /// Raises the view to above the target view.
4544 /// <remarks>The sibling order of views within the parent will be updated automatically.
4545 /// Views on the level above the target view will still be shown above this view.
4546 /// Raising this view above views with the same sibling order as each other will raise this view above them.
4547 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
4549 /// <param name="target">Will be raised above this view.</param>
4550 internal void RaiseAbove(View target)
4552 var parentChildren = GetParent()?.Children;
4554 if (parentChildren != null)
4556 int currentIndex = parentChildren.IndexOf(this);
4557 int targetIndex = parentChildren.IndexOf(target);
4559 if (currentIndex < 0 || targetIndex < 0 ||
4560 currentIndex >= parentChildren.Count || targetIndex >= parentChildren.Count)
4562 NUILog.Error("index should be bigger than 0 and less than children of layer count");
4565 // If the currentIndex is less than the target index and the target has the same parent.
4566 if (currentIndex < targetIndex)
4568 parentChildren.Remove(this);
4569 parentChildren.Insert(targetIndex, this);
4571 Interop.NDalic.RaiseAbove(swigCPtr, View.getCPtr(target));
4572 if (NDalicPINVOKE.SWIGPendingException.Pending)
4573 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4580 /// Lowers the view to below the target view.
4582 /// <remarks>The sibling order of views within the parent will be updated automatically.
4583 /// Lowering this view below views with the same sibling order as each other will lower this view above them.
4584 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
4586 /// <param name="target">Will be lowered below this view.</param>
4587 internal void LowerBelow(View target)
4589 var parentChildren = GetParent()?.Children;
4591 if (parentChildren != null)
4593 int currentIndex = parentChildren.IndexOf(this);
4594 int targetIndex = parentChildren.IndexOf(target);
4595 if (currentIndex < 0 || targetIndex < 0 ||
4596 currentIndex >= parentChildren.Count || targetIndex >= parentChildren.Count)
4598 NUILog.Error("index should be bigger than 0 and less than children of layer count");
4602 // If the currentIndex is not already the 0th index and the target has the same parent.
4603 if ((currentIndex != 0) && (targetIndex != -1) &&
4604 (currentIndex > targetIndex))
4606 parentChildren.Remove(this);
4607 parentChildren.Insert(targetIndex, this);
4609 Interop.NDalic.LowerBelow(swigCPtr, View.getCPtr(target));
4610 if (NDalicPINVOKE.SWIGPendingException.Pending)
4611 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4617 internal string GetName()
4619 string ret = Interop.Actor.Actor_GetName(swigCPtr);
4620 if (NDalicPINVOKE.SWIGPendingException.Pending)
4621 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4625 internal void SetName(string name)
4627 Interop.Actor.Actor_SetName(swigCPtr, name);
4628 if (NDalicPINVOKE.SWIGPendingException.Pending)
4629 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4632 internal uint GetId()
4634 uint ret = Interop.Actor.Actor_GetId(swigCPtr);
4635 if (NDalicPINVOKE.SWIGPendingException.Pending)
4636 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4640 internal bool IsRoot()
4642 bool ret = Interop.ActorInternal.Actor_IsRoot(swigCPtr);
4643 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4647 internal bool OnWindow()
4649 bool ret = Interop.Actor.Actor_OnStage(swigCPtr);
4650 if (NDalicPINVOKE.SWIGPendingException.Pending)
4651 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4655 internal View FindChildById(uint id)
4657 //to fix memory leak issue, match the handle count with native side.
4658 IntPtr cPtr = Interop.Actor.Actor_FindChildById(swigCPtr, id);
4659 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
4660 View ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as View;
4661 Interop.BaseHandle.delete_BaseHandle(CPtr);
4662 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
4664 if (NDalicPINVOKE.SWIGPendingException.Pending)
4665 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4669 internal override View FindCurrentChildById(uint id)
4671 return FindChildById(id);
4674 internal void SetParentOrigin(Vector3 origin)
4676 Interop.ActorInternal.Actor_SetParentOrigin(swigCPtr, Vector3.getCPtr(origin));
4677 if (NDalicPINVOKE.SWIGPendingException.Pending)
4678 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4681 internal Vector3 GetCurrentParentOrigin()
4683 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetCurrentParentOrigin(swigCPtr), true);
4684 if (NDalicPINVOKE.SWIGPendingException.Pending)
4685 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4689 internal void SetAnchorPoint(Vector3 anchorPoint)
4691 Interop.Actor.Actor_SetAnchorPoint(swigCPtr, Vector3.getCPtr(anchorPoint));
4692 if (NDalicPINVOKE.SWIGPendingException.Pending)
4693 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4696 internal Vector3 GetCurrentAnchorPoint()
4698 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetCurrentAnchorPoint(swigCPtr), true);
4699 if (NDalicPINVOKE.SWIGPendingException.Pending)
4700 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4704 internal void SetSize(float width, float height)
4706 Interop.ActorInternal.Actor_SetSize__SWIG_0(swigCPtr, width, height);
4707 if (NDalicPINVOKE.SWIGPendingException.Pending)
4708 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4711 internal void SetSize(float width, float height, float depth)
4713 Interop.ActorInternal.Actor_SetSize__SWIG_1(swigCPtr, width, height, depth);
4714 if (NDalicPINVOKE.SWIGPendingException.Pending)
4715 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4718 internal void SetSize(Vector2 size)
4720 Interop.ActorInternal.Actor_SetSize__SWIG_2(swigCPtr, Vector2.getCPtr(size));
4721 if (NDalicPINVOKE.SWIGPendingException.Pending)
4722 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4725 internal void SetSize(Vector3 size)
4727 Interop.ActorInternal.Actor_SetSize__SWIG_3(swigCPtr, Vector3.getCPtr(size));
4728 if (NDalicPINVOKE.SWIGPendingException.Pending)
4729 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4732 internal Vector3 GetTargetSize()
4734 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetTargetSize(swigCPtr), true);
4735 if (NDalicPINVOKE.SWIGPendingException.Pending)
4736 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4740 internal Size2D GetCurrentSize()
4742 Size ret = new Size(Interop.Actor.Actor_GetCurrentSize(swigCPtr), true);
4743 if (NDalicPINVOKE.SWIGPendingException.Pending)
4744 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4745 Size2D size = new Size2D((int)ret.Width, (int)ret.Height);
4749 internal Vector3 GetNaturalSize()
4751 Vector3 ret = new Vector3(Interop.Actor.Actor_GetNaturalSize(swigCPtr), true);
4752 if (NDalicPINVOKE.SWIGPendingException.Pending)
4753 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4757 internal void SetPosition(float x, float y)
4759 Interop.ActorInternal.Actor_SetPosition__SWIG_0(swigCPtr, x, y);
4760 if (NDalicPINVOKE.SWIGPendingException.Pending)
4761 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4764 internal void SetPosition(float x, float y, float z)
4766 Interop.ActorInternal.Actor_SetPosition__SWIG_1(swigCPtr, x, y, z);
4767 if (NDalicPINVOKE.SWIGPendingException.Pending)
4768 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4771 internal void SetPosition(Vector3 position)
4773 Interop.ActorInternal.Actor_SetPosition__SWIG_2(swigCPtr, Vector3.getCPtr(position));
4774 if (NDalicPINVOKE.SWIGPendingException.Pending)
4775 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4778 internal void SetX(float x)
4780 Interop.ActorInternal.Actor_SetX(swigCPtr, x);
4781 if (NDalicPINVOKE.SWIGPendingException.Pending)
4782 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4785 internal void SetY(float y)
4787 Interop.ActorInternal.Actor_SetY(swigCPtr, y);
4788 if (NDalicPINVOKE.SWIGPendingException.Pending)
4789 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4792 internal void SetZ(float z)
4794 Interop.ActorInternal.Actor_SetZ(swigCPtr, z);
4795 if (NDalicPINVOKE.SWIGPendingException.Pending)
4796 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4799 internal void TranslateBy(Vector3 distance)
4801 Interop.ActorInternal.Actor_TranslateBy(swigCPtr, Vector3.getCPtr(distance));
4802 if (NDalicPINVOKE.SWIGPendingException.Pending)
4803 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4806 internal Position GetCurrentPosition()
4808 Position ret = new Position(Interop.Actor.Actor_GetCurrentPosition(swigCPtr), true);
4809 if (NDalicPINVOKE.SWIGPendingException.Pending)
4810 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4814 internal Vector3 GetCurrentWorldPosition()
4816 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetCurrentWorldPosition(swigCPtr), true);
4817 if (NDalicPINVOKE.SWIGPendingException.Pending)
4818 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4822 internal void SetInheritPosition(bool inherit)
4824 Interop.ActorInternal.Actor_SetInheritPosition(swigCPtr, inherit);
4825 if (NDalicPINVOKE.SWIGPendingException.Pending)
4826 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4829 internal bool IsPositionInherited()
4831 bool ret = Interop.ActorInternal.Actor_IsPositionInherited(swigCPtr);
4832 if (NDalicPINVOKE.SWIGPendingException.Pending)
4833 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4837 internal void SetOrientation(Degree angle, Vector3 axis)
4839 Interop.ActorInternal.Actor_SetOrientation__SWIG_0(swigCPtr, Degree.getCPtr(angle), Vector3.getCPtr(axis));
4840 if (NDalicPINVOKE.SWIGPendingException.Pending)
4841 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4844 internal void SetOrientation(Radian angle, Vector3 axis)
4846 Interop.ActorInternal.Actor_SetOrientation__SWIG_1(swigCPtr, Radian.getCPtr(angle), Vector3.getCPtr(axis));
4847 if (NDalicPINVOKE.SWIGPendingException.Pending)
4848 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4851 internal void SetOrientation(Rotation orientation)
4853 Interop.ActorInternal.Actor_SetOrientation__SWIG_2(swigCPtr, Rotation.getCPtr(orientation));
4854 if (NDalicPINVOKE.SWIGPendingException.Pending)
4855 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4858 internal void RotateBy(Degree angle, Vector3 axis)
4860 Interop.ActorInternal.Actor_RotateBy__SWIG_0(swigCPtr, Degree.getCPtr(angle), Vector3.getCPtr(axis));
4861 if (NDalicPINVOKE.SWIGPendingException.Pending)
4862 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4865 internal void RotateBy(Radian angle, Vector3 axis)
4867 Interop.ActorInternal.Actor_RotateBy__SWIG_1(swigCPtr, Radian.getCPtr(angle), Vector3.getCPtr(axis));
4868 if (NDalicPINVOKE.SWIGPendingException.Pending)
4869 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4872 internal void RotateBy(Rotation relativeRotation)
4874 Interop.ActorInternal.Actor_RotateBy__SWIG_2(swigCPtr, Rotation.getCPtr(relativeRotation));
4875 if (NDalicPINVOKE.SWIGPendingException.Pending)
4876 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4879 internal Rotation GetCurrentOrientation()
4881 Rotation ret = new Rotation(Interop.ActorInternal.Actor_GetCurrentOrientation(swigCPtr), true);
4882 if (NDalicPINVOKE.SWIGPendingException.Pending)
4883 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4887 internal void SetInheritOrientation(bool inherit)
4889 Interop.ActorInternal.Actor_SetInheritOrientation(swigCPtr, inherit);
4890 if (NDalicPINVOKE.SWIGPendingException.Pending)
4891 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4894 internal bool IsOrientationInherited()
4896 bool ret = Interop.ActorInternal.Actor_IsOrientationInherited(swigCPtr);
4897 if (NDalicPINVOKE.SWIGPendingException.Pending)
4898 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4902 internal Rotation GetCurrentWorldOrientation()
4904 Rotation ret = new Rotation(Interop.ActorInternal.Actor_GetCurrentWorldOrientation(swigCPtr), true);
4905 if (NDalicPINVOKE.SWIGPendingException.Pending)
4906 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4910 internal void SetScale(float scale)
4912 Interop.ActorInternal.Actor_SetScale__SWIG_0(swigCPtr, scale);
4913 if (NDalicPINVOKE.SWIGPendingException.Pending)
4914 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4917 internal void SetScale(float scaleX, float scaleY, float scaleZ)
4919 Interop.ActorInternal.Actor_SetScale__SWIG_1(swigCPtr, scaleX, scaleY, scaleZ);
4920 if (NDalicPINVOKE.SWIGPendingException.Pending)
4921 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4924 internal void SetScale(Vector3 scale)
4926 Interop.ActorInternal.Actor_SetScale__SWIG_2(swigCPtr, Vector3.getCPtr(scale));
4927 if (NDalicPINVOKE.SWIGPendingException.Pending)
4928 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4931 internal void ScaleBy(Vector3 relativeScale)
4933 Interop.ActorInternal.Actor_ScaleBy(swigCPtr, Vector3.getCPtr(relativeScale));
4934 if (NDalicPINVOKE.SWIGPendingException.Pending)
4935 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4938 internal Vector3 GetCurrentScale()
4940 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetCurrentScale(swigCPtr), true);
4941 if (NDalicPINVOKE.SWIGPendingException.Pending)
4942 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4946 internal Vector3 GetCurrentWorldScale()
4948 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetCurrentWorldScale(swigCPtr), true);
4949 if (NDalicPINVOKE.SWIGPendingException.Pending)
4950 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4954 internal void SetInheritScale(bool inherit)
4956 Interop.ActorInternal.Actor_SetInheritScale(swigCPtr, inherit);
4957 if (NDalicPINVOKE.SWIGPendingException.Pending)
4958 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4961 internal bool IsScaleInherited()
4963 bool ret = Interop.ActorInternal.Actor_IsScaleInherited(swigCPtr);
4964 if (NDalicPINVOKE.SWIGPendingException.Pending)
4965 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4969 internal Matrix GetCurrentWorldMatrix()
4971 Matrix ret = new Matrix(Interop.ActorInternal.Actor_GetCurrentWorldMatrix(swigCPtr), true);
4972 if (NDalicPINVOKE.SWIGPendingException.Pending)
4973 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4977 internal void SetVisible(bool visible)
4979 Interop.Actor.Actor_SetVisible(swigCPtr, visible);
4980 if (NDalicPINVOKE.SWIGPendingException.Pending)
4981 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4984 internal bool IsVisible()
4986 bool ret = Interop.ActorInternal.Actor_IsVisible(swigCPtr);
4987 if (NDalicPINVOKE.SWIGPendingException.Pending)
4988 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4992 internal void SetOpacity(float opacity)
4994 Interop.ActorInternal.Actor_SetOpacity(swigCPtr, opacity);
4995 if (NDalicPINVOKE.SWIGPendingException.Pending)
4996 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4999 internal float GetCurrentOpacity()
5001 float ret = Interop.ActorInternal.Actor_GetCurrentOpacity(swigCPtr);
5002 if (NDalicPINVOKE.SWIGPendingException.Pending)
5003 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5007 internal void SetColor(Vector4 color)
5009 Interop.ActorInternal.Actor_SetColor(swigCPtr, Vector4.getCPtr(color));
5010 if (NDalicPINVOKE.SWIGPendingException.Pending)
5011 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5014 internal Vector4 GetCurrentColor()
5016 Vector4 ret = new Vector4(Interop.ActorInternal.Actor_GetCurrentColor(swigCPtr), true);
5017 if (NDalicPINVOKE.SWIGPendingException.Pending)
5018 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5022 /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API.
5023 [EditorBrowsable(EditorBrowsableState.Never)]
5024 public void SetColorMode(ColorMode colorMode)
5026 Interop.ActorInternal.Actor_SetColorMode(swigCPtr, (int)colorMode);
5027 if (NDalicPINVOKE.SWIGPendingException.Pending)
5028 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5031 internal ColorMode GetColorMode()
5033 ColorMode ret = (ColorMode)Interop.ActorInternal.Actor_GetColorMode(swigCPtr);
5034 if (NDalicPINVOKE.SWIGPendingException.Pending)
5035 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5039 internal Vector4 GetCurrentWorldColor()
5041 Vector4 ret = new Vector4(Interop.ActorInternal.Actor_GetCurrentWorldColor(swigCPtr), true);
5042 if (NDalicPINVOKE.SWIGPendingException.Pending)
5043 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5047 internal void SetDrawMode(DrawModeType drawMode)
5049 Interop.ActorInternal.Actor_SetDrawMode(swigCPtr, (int)drawMode);
5050 if (NDalicPINVOKE.SWIGPendingException.Pending)
5051 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5054 internal DrawModeType GetDrawMode()
5056 DrawModeType ret = (DrawModeType)Interop.ActorInternal.Actor_GetDrawMode(swigCPtr);
5057 if (NDalicPINVOKE.SWIGPendingException.Pending)
5058 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5062 internal void SetKeyboardFocusable(bool focusable)
5064 Interop.ActorInternal.Actor_SetKeyboardFocusable(swigCPtr, focusable);
5065 if (NDalicPINVOKE.SWIGPendingException.Pending)
5066 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5069 internal bool IsKeyboardFocusable()
5071 bool ret = Interop.ActorInternal.Actor_IsKeyboardFocusable(swigCPtr);
5072 if (NDalicPINVOKE.SWIGPendingException.Pending)
5073 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5077 internal void SetResizePolicy(ResizePolicyType policy, DimensionType dimension)
5079 Interop.Actor.Actor_SetResizePolicy(swigCPtr, (int)policy, (int)dimension);
5080 if (NDalicPINVOKE.SWIGPendingException.Pending)
5081 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5084 internal ResizePolicyType GetResizePolicy(DimensionType dimension)
5086 ResizePolicyType ret = (ResizePolicyType)Interop.Actor.Actor_GetResizePolicy(swigCPtr, (int)dimension);
5087 if (NDalicPINVOKE.SWIGPendingException.Pending)
5088 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5092 internal Vector3 GetSizeModeFactor()
5094 Vector3 ret = new Vector3(Interop.Actor.Actor_GetSizeModeFactor(swigCPtr), true);
5095 if (NDalicPINVOKE.SWIGPendingException.Pending)
5096 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5100 internal void SetMinimumSize(Vector2 size)
5102 Interop.ActorInternal.Actor_SetMinimumSize(swigCPtr, Vector2.getCPtr(size));
5103 if (NDalicPINVOKE.SWIGPendingException.Pending)
5104 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5107 internal Vector2 GetMinimumSize()
5109 Vector2 ret = new Vector2(Interop.ActorInternal.Actor_GetMinimumSize(swigCPtr), true);
5110 if (NDalicPINVOKE.SWIGPendingException.Pending)
5111 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5115 internal void SetMaximumSize(Vector2 size)
5117 Interop.ActorInternal.Actor_SetMaximumSize(swigCPtr, Vector2.getCPtr(size));
5118 if (NDalicPINVOKE.SWIGPendingException.Pending)
5119 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5122 internal Vector2 GetMaximumSize()
5124 Vector2 ret = new Vector2(Interop.ActorInternal.Actor_GetMaximumSize(swigCPtr), true);
5125 if (NDalicPINVOKE.SWIGPendingException.Pending)
5126 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5130 internal int GetHierarchyDepth()
5132 int ret = Interop.Actor.Actor_GetHierarchyDepth(swigCPtr);
5133 if (NDalicPINVOKE.SWIGPendingException.Pending)
5134 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5138 internal uint GetRendererCount()
5140 uint ret = Interop.Actor.Actor_GetRendererCount(swigCPtr);
5141 if (NDalicPINVOKE.SWIGPendingException.Pending)
5142 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5146 internal TouchDataSignal TouchSignal()
5148 TouchDataSignal ret = new TouchDataSignal(Interop.ActorSignal.Actor_TouchSignal(swigCPtr), false);
5149 if (NDalicPINVOKE.SWIGPendingException.Pending)
5150 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5154 internal HoverSignal HoveredSignal()
5156 HoverSignal ret = new HoverSignal(Interop.ActorSignal.Actor_HoveredSignal(swigCPtr), false);
5157 if (NDalicPINVOKE.SWIGPendingException.Pending)
5158 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5162 internal WheelSignal WheelEventSignal()
5164 WheelSignal ret = new WheelSignal(Interop.ActorSignal.Actor_WheelEventSignal(swigCPtr), false);
5165 if (NDalicPINVOKE.SWIGPendingException.Pending)
5166 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5170 internal ViewSignal OnWindowSignal()
5172 ViewSignal ret = new ViewSignal(Interop.ActorSignal.Actor_OnStageSignal(swigCPtr), false);
5173 if (NDalicPINVOKE.SWIGPendingException.Pending)
5174 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5178 internal ViewSignal OffWindowSignal()
5180 ViewSignal ret = new ViewSignal(Interop.ActorSignal.Actor_OffStageSignal(swigCPtr), false);
5181 if (NDalicPINVOKE.SWIGPendingException.Pending)
5182 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5186 internal ViewSignal OnRelayoutSignal()
5188 ViewSignal ret = new ViewSignal(Interop.ActorSignal.Actor_OnRelayoutSignal(swigCPtr), false);
5189 if (NDalicPINVOKE.SWIGPendingException.Pending)
5190 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5194 internal ViewVisibilityChangedSignal VisibilityChangedSignal(View view)
5196 ViewVisibilityChangedSignal ret = new ViewVisibilityChangedSignal(Interop.NDalic.VisibilityChangedSignal(View.getCPtr(view)), false);
5197 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5201 internal ViewLayoutDirectionChangedSignal LayoutDirectionChangedSignal(View view)
5203 ViewLayoutDirectionChangedSignal ret = new ViewLayoutDirectionChangedSignal(Interop.Layout.LayoutDirectionChangedSignal(View.getCPtr(view)), false);
5204 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5208 internal ViewSignal ResourcesLoadedSignal()
5210 ViewSignal ret = new ViewSignal(Interop.View.ResourceReadySignal(swigCPtr), false);
5211 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5215 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(View obj)
5217 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
5220 internal bool IsTopLevelView()
5222 if (GetParent() is Layer)
5229 internal void SetKeyInputFocus()
5231 Interop.ViewInternal.View_SetKeyInputFocus(swigCPtr);
5232 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5235 internal void ClearKeyInputFocus()
5237 Interop.ViewInternal.View_ClearKeyInputFocus(swigCPtr);
5238 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5241 internal PinchGestureDetector GetPinchGestureDetector()
5243 PinchGestureDetector ret = new PinchGestureDetector(Interop.ViewInternal.View_GetPinchGestureDetector(swigCPtr), true);
5244 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5248 internal PanGestureDetector GetPanGestureDetector()
5250 PanGestureDetector ret = new PanGestureDetector(Interop.ViewInternal.View_GetPanGestureDetector(swigCPtr), true);
5251 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5255 internal TapGestureDetector GetTapGestureDetector()
5257 TapGestureDetector ret = new TapGestureDetector(Interop.ViewInternal.View_GetTapGestureDetector(swigCPtr), true);
5258 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5262 internal LongPressGestureDetector GetLongPressGestureDetector()
5264 LongPressGestureDetector ret = new LongPressGestureDetector(Interop.ViewInternal.View_GetLongPressGestureDetector(swigCPtr), true);
5265 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5269 internal ControlKeySignal KeyEventSignal()
5271 ControlKeySignal ret = new ControlKeySignal(Interop.ViewSignal.View_KeyEventSignal(swigCPtr), false);
5272 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5276 internal KeyInputFocusSignal KeyInputFocusGainedSignal()
5278 KeyInputFocusSignal ret = new KeyInputFocusSignal(Interop.ViewSignal.View_KeyInputFocusGainedSignal(swigCPtr), false);
5279 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5283 internal KeyInputFocusSignal KeyInputFocusLostSignal()
5285 KeyInputFocusSignal ret = new KeyInputFocusSignal(Interop.ViewSignal.View_KeyInputFocusLostSignal(swigCPtr), false);
5286 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5290 internal IntPtr GetPtrfromView()
5292 return (IntPtr)swigCPtr;
5295 internal void RemoveChild(View child)
5297 // Do actual child removal
5298 Interop.Actor.Actor_Remove(swigCPtr, View.getCPtr(child));
5299 if (NDalicPINVOKE.SWIGPendingException.Pending)
5300 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5302 Children.Remove(child);
5303 child.InternalParent = null;
5305 if (ChildRemoved != null)
5307 ChildRemovedEventArgs e = new ChildRemovedEventArgs
5311 ChildRemoved(this, e);
5316 /// Removes the layout from this View.
5318 internal void ResetLayout()
5323 internal ResourceLoadingStatusType GetBackgroundResourceStatus()
5325 return (ResourceLoadingStatusType)Interop.View.View_GetVisualResourceStatus(this.swigCPtr, Property.BACKGROUND);
5329 /// you can override it to clean-up your own resources.
5331 /// <param name="type">DisposeTypes</param>
5332 /// <since_tizen> 3 </since_tizen>
5333 protected override void Dispose(DisposeTypes type)
5340 //_mergedStyle = null;
5342 if (type == DisposeTypes.Explicit)
5345 //Release your own managed resources here.
5346 //You should release all of your own disposable objects here.
5349 //Release your own unmanaged resources here.
5350 //You should not access any managed member here except static instance.
5351 //because the execution order of Finalizes is non-deterministic.
5354 DisConnectFromSignals();
5357 if (swigCPtr.Handle != global::System.IntPtr.Zero)
5361 swigCMemOwn = false;
5362 Interop.View.delete_View(swigCPtr);
5364 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
5367 foreach (View view in Children)
5369 view.InternalParent = null;
5376 private void OnSize2DChanged(int width, int height)
5378 Size2D = new Size2D(width, height);
5381 private void OnMinimumSizeChanged(int width, int height)
5383 MinimumSize = new Size2D(width, height);
5386 private void OnMaximumSizeChanged(int width, int height)
5388 MaximumSize = new Size2D(width, height);
5391 private void OnPosition2DChanged(int x, int y)
5393 Position2D = new Position2D(x, y);
5396 private void OnSizeChanged(float width, float height, float depth)
5398 Size = new Size(width, height, depth);
5401 private void OnPositionChanged(float x, float y, float z)
5403 Position = new Position(x, y, z);
5406 private void OnParentOriginChanged(float x, float y, float z)
5408 ParentOrigin = new Position(x, y, z);
5411 private void OnPivotPointChanged(float x, float y, float z)
5413 PivotPoint = new Position(x, y, z);
5416 private void DisConnectFromSignals()
5418 // Save current CPtr.
5419 global::System.Runtime.InteropServices.HandleRef currentCPtr = swigCPtr;
5421 // Use BaseHandle CPtr as current might have been deleted already in derived classes.
5422 swigCPtr = GetBaseHandleCPtrHandleRef;
5424 if (_onRelayoutEventCallback != null)
5426 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
5429 if (_offWindowEventCallback != null)
5431 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
5434 if (_onWindowEventCallback != null)
5436 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
5439 if (_wheelEventCallback != null)
5441 this.WheelEventSignal().Disconnect(_wheelEventCallback);
5444 if (_hoverEventCallback != null)
5446 this.HoveredSignal().Disconnect(_hoverEventCallback);
5449 if (_touchDataCallback != null)
5451 this.TouchSignal().Disconnect(_touchDataCallback);
5454 if (_ResourcesLoadedCallback != null)
5456 this.ResourcesLoadedSignal().Disconnect(_ResourcesLoadedCallback);
5459 if (_offWindowEventCallback != null)
5461 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
5464 if (_onWindowEventCallback != null)
5466 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
5469 if (_wheelEventCallback != null)
5471 this.WheelEventSignal().Disconnect(_wheelEventCallback);
5474 if (_hoverEventCallback != null)
5476 this.HoveredSignal().Disconnect(_hoverEventCallback);
5479 if (_touchDataCallback != null)
5481 this.TouchSignal().Disconnect(_touchDataCallback);
5484 if (_onRelayoutEventCallback != null)
5486 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
5489 if (_keyCallback != null)
5491 this.KeyEventSignal().Disconnect(_keyCallback);
5494 if (_keyInputFocusLostCallback != null)
5496 this.KeyInputFocusLostSignal().Disconnect(_keyInputFocusLostCallback);
5499 if (_keyInputFocusGainedCallback != null)
5501 this.KeyInputFocusGainedSignal().Disconnect(_keyInputFocusGainedCallback);
5504 if (_backgroundResourceLoadedCallback != null)
5506 this.ResourcesLoadedSignal().Disconnect(_backgroundResourceLoadedCallback);
5509 if (_onWindowSendEventCallback != null)
5511 this.OnWindowSignal().Disconnect(_onWindowSendEventCallback);
5514 // BaseHandle CPtr is used in Registry and there is danger of deletion if we keep using it here.
5515 // Restore current CPtr.
5516 swigCPtr = currentCPtr;
5519 private void OnKeyInputFocusGained(IntPtr view)
5521 if (_keyInputFocusGainedEventHandler != null)
5523 _keyInputFocusGainedEventHandler(this, null);
5527 private void OnKeyInputFocusLost(IntPtr view)
5529 if (_keyInputFocusLostEventHandler != null)
5531 _keyInputFocusLostEventHandler(this, null);
5535 private bool OnKeyEvent(IntPtr view, IntPtr keyEvent)
5537 if (keyEvent == global::System.IntPtr.Zero)
5539 NUILog.Error("keyEvent should not be null!");
5543 KeyEventArgs e = new KeyEventArgs();
5545 bool result = false;
5547 e.Key = Tizen.NUI.Key.GetKeyFromPtr(keyEvent);
5549 if (_keyEventHandler != null)
5551 Delegate[] delegateList = _keyEventHandler.GetInvocationList();
5553 // Oring the result of each callback.
5554 foreach (EventHandlerWithReturnType<object, KeyEventArgs, bool> del in delegateList)
5556 result |= del(this, e);
5563 // Callback for View OnRelayout signal
5564 private void OnRelayout(IntPtr data)
5566 if (_onRelayoutEventHandler != null)
5568 _onRelayoutEventHandler(this, null);
5572 // Callback for View TouchSignal
5573 private bool OnTouch(IntPtr view, IntPtr touchData)
5575 if (touchData == global::System.IntPtr.Zero)
5577 NUILog.Error("touchData should not be null!");
5581 TouchEventArgs e = new TouchEventArgs();
5583 e.Touch = Tizen.NUI.Touch.GetTouchFromPtr(touchData);
5585 if (_touchDataEventHandler != null)
5587 return _touchDataEventHandler(this, e);
5592 // Callback for View Hover signal
5593 private bool OnHoverEvent(IntPtr view, IntPtr hoverEvent)
5595 if (hoverEvent == global::System.IntPtr.Zero)
5597 NUILog.Error("hoverEvent should not be null!");
5601 HoverEventArgs e = new HoverEventArgs();
5603 e.Hover = Tizen.NUI.Hover.GetHoverFromPtr(hoverEvent);
5605 if (_hoverEventHandler != null)
5607 return _hoverEventHandler(this, e);
5612 // Callback for View Wheel signal
5613 private bool OnWheelEvent(IntPtr view, IntPtr wheelEvent)
5615 if (wheelEvent == global::System.IntPtr.Zero)
5617 NUILog.Error("wheelEvent should not be null!");
5621 WheelEventArgs e = new WheelEventArgs();
5623 e.Wheel = Tizen.NUI.Wheel.GetWheelFromPtr(wheelEvent);
5625 if (_wheelEventHandler != null)
5627 return _wheelEventHandler(this, e);
5632 // Callback for View OnWindow signal
5633 private void OnWindow(IntPtr data)
5635 if (_onWindowEventHandler != null)
5637 _onWindowEventHandler(this, null);
5641 // Callback for View OffWindow signal
5642 private void OffWindow(IntPtr data)
5644 if (_offWindowEventHandler != null)
5646 _offWindowEventHandler(this, null);
5650 // Callback for View visibility change signal
5651 private void OnVisibilityChanged(IntPtr data, bool visibility, VisibilityChangeType type)
5653 VisibilityChangedEventArgs e = new VisibilityChangedEventArgs();
5656 e.View = Registry.GetManagedBaseHandleFromNativePtr(data) as View;
5658 e.Visibility = visibility;
5661 if (_visibilityChangedEventHandler != null)
5663 _visibilityChangedEventHandler(this, e);
5667 // Callback for View layout direction change signal
5668 private void OnLayoutDirectionChanged(IntPtr data, ViewLayoutDirectionType type)
5670 LayoutDirectionChangedEventArgs e = new LayoutDirectionChangedEventArgs();
5673 e.View = Registry.GetManagedBaseHandleFromNativePtr(data) as View;
5677 if (_layoutDirectionChangedEventHandler != null)
5679 _layoutDirectionChangedEventHandler(this, e);
5683 private void OnResourcesLoaded(IntPtr view)
5685 if (_resourcesLoadedEventHandler != null)
5687 _resourcesLoadedEventHandler(this, null);
5691 private View ConvertIdToView(uint id)
5693 View view = GetParent()?.FindCurrentChildById(id);
5695 //If we can't find the parent's children, find in the top layer.
5698 Container parent = GetParent();
5699 while ((parent is View) && (parent != null))
5701 parent = parent.GetParent();
5702 if (parent is Layer)
5704 view = parent.FindCurrentChildById(id);
5713 private void OnBackgroundResourceLoaded(IntPtr view)
5715 BackgroundResourceLoadedEventArgs e = new BackgroundResourceLoadedEventArgs();
5716 e.Status = (ResourceLoadingStatusType)Interop.View.View_GetVisualResourceStatus(this.swigCPtr, Property.BACKGROUND);
5718 if (_backgroundResourceLoadedEventHandler != null)
5720 _backgroundResourceLoadedEventHandler(this, e);
5725 /// Event argument passed through the ChildAdded event.
5727 /// <since_tizen> 5 </since_tizen>
5728 public class ChildAddedEventArgs : EventArgs
5731 /// Added child view at moment.
5733 /// <since_tizen> 5 </since_tizen>
5734 public View Added { get; set; }
5738 /// Event argument passed through the ChildRemoved event.
5740 /// <since_tizen> 5 </since_tizen>
5741 public class ChildRemovedEventArgs : EventArgs
5744 /// Removed child view at moment.
5746 /// <since_tizen> 5 </since_tizen>
5747 public View Removed { get; set; }
5751 /// Event arguments that passed via the KeyEvent signal.
5753 /// <since_tizen> 3 </since_tizen>
5754 public class KeyEventArgs : EventArgs
5759 /// Key - is the key sent to the view.
5761 /// <since_tizen> 3 </since_tizen>
5776 /// Event arguments that passed via the touch signal.
5778 /// <since_tizen> 3 </since_tizen>
5779 public class TouchEventArgs : EventArgs
5781 private Touch _touch;
5784 /// Touch - contains the information of touch points.
5786 /// <since_tizen> 3 </since_tizen>
5801 /// Event arguments that passed via the hover signal.
5803 /// <since_tizen> 3 </since_tizen>
5804 public class HoverEventArgs : EventArgs
5806 private Hover _hover;
5809 /// Hover - contains touch points that represent the points that are currently being hovered or the points where a hover has stopped.
5811 /// <since_tizen> 3 </since_tizen>
5826 /// Event arguments that passed via the wheel signal.
5828 /// <since_tizen> 3 </since_tizen>
5829 public class WheelEventArgs : EventArgs
5831 private Wheel _wheel;
5834 /// WheelEvent - store a wheel rolling type: MOUSE_WHEEL or CUSTOM_WHEEL.
5836 /// <since_tizen> 3 </since_tizen>
5851 /// Event arguments of visibility changed.
5853 /// <since_tizen> 3 </since_tizen>
5854 public class VisibilityChangedEventArgs : EventArgs
5857 private bool _visibility;
5858 private VisibilityChangeType _type;
5861 /// The view, or child of view, whose visibility has changed.
5863 /// <since_tizen> 3 </since_tizen>
5877 /// Whether the view is now visible or not.
5879 /// <since_tizen> 3 </since_tizen>
5880 public bool Visibility
5888 _visibility = value;
5893 /// Whether the view's visible property has changed or a parent's.
5895 /// <since_tizen> 3 </since_tizen>
5896 public VisibilityChangeType Type
5910 /// Event arguments of layout direction changed.
5912 /// <since_tizen> 4 </since_tizen>
5913 public class LayoutDirectionChangedEventArgs : EventArgs
5916 private ViewLayoutDirectionType _type;
5919 /// The view, or child of view, whose layout direction has changed.
5921 /// <since_tizen> 4 </since_tizen>
5935 /// Whether the view's layout direction property has changed or a parent's.
5937 /// <since_tizen> 4 </since_tizen>
5938 public ViewLayoutDirectionType Type
5952 private Dictionary<string, Transition> transDictionary = new Dictionary<string, Transition>();
5954 /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API.
5955 [EditorBrowsable(EditorBrowsableState.Never)]
5956 public Transition GetTransition(string transitionName)
5958 Transition trans = null;
5959 transDictionary.TryGetValue(transitionName, out trans);
5963 private void LoadTransitions()
5965 foreach (string str in transitionNames)
5967 string resourceName = str + ".xaml";
5968 Transition trans = null;
5970 string resource = Tizen.Applications.Application.Current.DirectoryInfo.Resource;
5972 string likelyResourcePath = resource + "animation/" + resourceName;
5974 if (File.Exists(likelyResourcePath))
5976 trans = Extensions.LoadObject<Transition>(likelyResourcePath);
5980 transDictionary.Add(trans.Name, trans);
5985 /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API.
5986 [EditorBrowsable(EditorBrowsableState.Never)]
5987 public string[] TransitionNames
5991 return transitionNames;
5995 transitionNames = value;
5999 private string[] transitionNames;
6001 internal class BackgroundResourceLoadedEventArgs : EventArgs
6003 private ResourceLoadingStatusType status = ResourceLoadingStatusType.Invalid;
6004 public ResourceLoadingStatusType Status
6017 internal class Property
6019 internal static readonly int TOOLTIP = Interop.ViewProperty.View_Property_TOOLTIP_get();
6020 internal static readonly int STATE = Interop.ViewProperty.View_Property_STATE_get();
6021 internal static readonly int SUB_STATE = Interop.ViewProperty.View_Property_SUB_STATE_get();
6022 internal static readonly int LEFT_FOCUSABLE_VIEW_ID = Interop.ViewProperty.View_Property_LEFT_FOCUSABLE_ACTOR_ID_get();
6023 internal static readonly int RIGHT_FOCUSABLE_VIEW_ID = Interop.ViewProperty.View_Property_RIGHT_FOCUSABLE_ACTOR_ID_get();
6024 internal static readonly int UP_FOCUSABLE_VIEW_ID = Interop.ViewProperty.View_Property_UP_FOCUSABLE_ACTOR_ID_get();
6025 internal static readonly int DOWN_FOCUSABLE_VIEW_ID = Interop.ViewProperty.View_Property_DOWN_FOCUSABLE_ACTOR_ID_get();
6026 internal static readonly int STYLE_NAME = Interop.ViewProperty.View_Property_STYLE_NAME_get();
6027 internal static readonly int BACKGROUND = Interop.ViewProperty.View_Property_BACKGROUND_get();
6028 internal static readonly int SIBLING_ORDER = Interop.ActorProperty.Actor_Property_SIBLING_ORDER_get();
6029 internal static readonly int OPACITY = Interop.ActorProperty.Actor_Property_OPACITY_get();
6030 internal static readonly int SCREEN_POSITION = Interop.ActorProperty.Actor_Property_SCREEN_POSITION_get();
6031 internal static readonly int POSITION_USES_ANCHOR_POINT = Interop.ActorProperty.Actor_Property_POSITION_USES_ANCHOR_POINT_get();
6032 internal static readonly int PARENT_ORIGIN = Interop.ActorProperty.Actor_Property_PARENT_ORIGIN_get();
6033 internal static readonly int PARENT_ORIGIN_X = Interop.ActorProperty.Actor_Property_PARENT_ORIGIN_X_get();
6034 internal static readonly int PARENT_ORIGIN_Y = Interop.ActorProperty.Actor_Property_PARENT_ORIGIN_Y_get();
6035 internal static readonly int PARENT_ORIGIN_Z = Interop.ActorProperty.Actor_Property_PARENT_ORIGIN_Z_get();
6036 internal static readonly int ANCHOR_POINT = Interop.ActorProperty.Actor_Property_ANCHOR_POINT_get();
6037 internal static readonly int ANCHOR_POINT_X = Interop.ActorProperty.Actor_Property_ANCHOR_POINT_X_get();
6038 internal static readonly int ANCHOR_POINT_Y = Interop.ActorProperty.Actor_Property_ANCHOR_POINT_Y_get();
6039 internal static readonly int ANCHOR_POINT_Z = Interop.ActorProperty.Actor_Property_ANCHOR_POINT_Z_get();
6040 internal static readonly int SIZE = Interop.ActorProperty.Actor_Property_SIZE_get();
6041 internal static readonly int SIZE_WIDTH = Interop.ActorProperty.Actor_Property_SIZE_WIDTH_get();
6042 internal static readonly int SIZE_HEIGHT = Interop.ActorProperty.Actor_Property_SIZE_HEIGHT_get();
6043 internal static readonly int SIZE_DEPTH = Interop.ActorProperty.Actor_Property_SIZE_DEPTH_get();
6044 internal static readonly int POSITION = Interop.ActorProperty.Actor_Property_POSITION_get();
6045 internal static readonly int POSITION_X = Interop.ActorProperty.Actor_Property_POSITION_X_get();
6046 internal static readonly int POSITION_Y = Interop.ActorProperty.Actor_Property_POSITION_Y_get();
6047 internal static readonly int POSITION_Z = Interop.ActorProperty.Actor_Property_POSITION_Z_get();
6048 internal static readonly int WORLD_POSITION = Interop.ActorProperty.Actor_Property_WORLD_POSITION_get();
6049 internal static readonly int WORLD_POSITION_X = Interop.ActorProperty.Actor_Property_WORLD_POSITION_X_get();
6050 internal static readonly int WORLD_POSITION_Y = Interop.ActorProperty.Actor_Property_WORLD_POSITION_Y_get();
6051 internal static readonly int WORLD_POSITION_Z = Interop.ActorProperty.Actor_Property_WORLD_POSITION_Z_get();
6052 internal static readonly int ORIENTATION = Interop.ActorProperty.Actor_Property_ORIENTATION_get();
6053 internal static readonly int WORLD_ORIENTATION = Interop.ActorProperty.Actor_Property_WORLD_ORIENTATION_get();
6054 internal static readonly int SCALE = Interop.ActorProperty.Actor_Property_SCALE_get();
6055 internal static readonly int SCALE_X = Interop.ActorProperty.Actor_Property_SCALE_X_get();
6056 internal static readonly int SCALE_Y = Interop.ActorProperty.Actor_Property_SCALE_Y_get();
6057 internal static readonly int SCALE_Z = Interop.ActorProperty.Actor_Property_SCALE_Z_get();
6058 internal static readonly int WORLD_SCALE = Interop.ActorProperty.Actor_Property_WORLD_SCALE_get();
6059 internal static readonly int VISIBLE = Interop.ActorProperty.Actor_Property_VISIBLE_get();
6060 internal static readonly int WORLD_COLOR = Interop.ActorProperty.Actor_Property_WORLD_COLOR_get();
6061 internal static readonly int WORLD_MATRIX = Interop.ActorProperty.Actor_Property_WORLD_MATRIX_get();
6062 internal static readonly int NAME = Interop.ActorProperty.Actor_Property_NAME_get();
6063 internal static readonly int SENSITIVE = Interop.ActorProperty.Actor_Property_SENSITIVE_get();
6064 internal static readonly int LEAVE_REQUIRED = Interop.ActorProperty.Actor_Property_LEAVE_REQUIRED_get();
6065 internal static readonly int INHERIT_ORIENTATION = Interop.ActorProperty.Actor_Property_INHERIT_ORIENTATION_get();
6066 internal static readonly int INHERIT_SCALE = Interop.ActorProperty.Actor_Property_INHERIT_SCALE_get();
6067 internal static readonly int DRAW_MODE = Interop.ActorProperty.Actor_Property_DRAW_MODE_get();
6068 internal static readonly int SIZE_MODE_FACTOR = Interop.ActorProperty.Actor_Property_SIZE_MODE_FACTOR_get();
6069 internal static readonly int WIDTH_RESIZE_POLICY = Interop.ActorProperty.Actor_Property_WIDTH_RESIZE_POLICY_get();
6070 internal static readonly int HEIGHT_RESIZE_POLICY = Interop.ActorProperty.Actor_Property_HEIGHT_RESIZE_POLICY_get();
6071 internal static readonly int SIZE_SCALE_POLICY = Interop.ActorProperty.Actor_Property_SIZE_SCALE_POLICY_get();
6072 internal static readonly int WIDTH_FOR_HEIGHT = Interop.ActorProperty.Actor_Property_WIDTH_FOR_HEIGHT_get();
6073 internal static readonly int HEIGHT_FOR_WIDTH = Interop.ActorProperty.Actor_Property_HEIGHT_FOR_WIDTH_get();
6074 internal static readonly int MINIMUM_SIZE = Interop.ActorProperty.Actor_Property_MINIMUM_SIZE_get();
6075 internal static readonly int MAXIMUM_SIZE = Interop.ActorProperty.Actor_Property_MAXIMUM_SIZE_get();
6076 internal static readonly int INHERIT_POSITION = Interop.ActorProperty.Actor_Property_INHERIT_POSITION_get();
6077 internal static readonly int CLIPPING_MODE = Interop.ActorProperty.Actor_Property_CLIPPING_MODE_get();
6078 internal static readonly int INHERIT_LAYOUT_DIRECTION = Interop.ActorProperty.Actor_Property_INHERIT_LAYOUT_DIRECTION_get();
6079 internal static readonly int LAYOUT_DIRECTION = Interop.ActorProperty.Actor_Property_LAYOUT_DIRECTION_get();
6080 internal static readonly int MARGIN = Interop.ViewProperty.View_Property_MARGIN_get();
6081 internal static readonly int PADDING = Interop.ViewProperty.View_Property_PADDING_get();