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));
130 view.BackgroundImageSynchronosLoading = view._backgroundImageSynchronosLoading;
133 defaultValueCreator: (bindable) =>
135 var view = (View)bindable;
136 string backgroundImage = "";
138 Tizen.NUI.PropertyMap background = view.Background;
140 background.Find(Visual.Property.Type)?.Get(out visualType);
141 if (visualType == (int)Visual.Type.Image)
143 background.Find(ImageVisualProperty.URL)?.Get(out backgroundImage);
146 return backgroundImage;
148 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
149 [EditorBrowsable(EditorBrowsableState.Never)]
150 public static readonly BindableProperty BackgroundProperty = BindableProperty.Create("Background", typeof(PropertyMap), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
152 var view = (View)bindable;
153 if (newValue != null)
155 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.BACKGROUND, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
158 defaultValueCreator: (bindable) =>
160 var view = (View)bindable;
161 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
162 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.BACKGROUND).Get(temp);
165 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
166 [EditorBrowsable(EditorBrowsableState.Never)]
167 public static readonly BindableProperty StateProperty = BindableProperty.Create("State", typeof(States), typeof(View), States.Normal, propertyChanged: (bindable, oldValue, newValue) =>
169 var view = (View)bindable;
170 if (newValue != null)
172 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.STATE, new Tizen.NUI.PropertyValue((int)newValue));
175 defaultValueCreator: (bindable) =>
177 var view = (View)bindable;
179 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.STATE).Get(out temp) == false)
181 NUILog.Error("State get error!");
185 case 0: return States.Normal;
186 case 1: return States.Focused;
187 case 2: return States.Disabled;
188 default: return States.Normal;
191 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
192 [EditorBrowsable(EditorBrowsableState.Never)]
193 public static readonly BindableProperty SubStateProperty = BindableProperty.Create("SubState", typeof(States), typeof(View), States.Normal, propertyChanged: (bindable, oldValue, newValue) =>
195 var view = (View)bindable;
196 string valueToString = "";
197 if (newValue != null)
199 switch ((States)newValue)
201 case States.Normal: { valueToString = "NORMAL"; break; }
202 case States.Focused: { valueToString = "FOCUSED"; break; }
203 case States.Disabled: { valueToString = "DISABLED"; break; }
204 default: { valueToString = "NORMAL"; break; }
206 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SUB_STATE, new Tizen.NUI.PropertyValue(valueToString));
209 defaultValueCreator: (bindable) =>
211 var view = (View)bindable;
213 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SUB_STATE).Get(out temp) == false)
215 NUILog.Error("subState get error!");
219 case "NORMAL": return States.Normal;
220 case "FOCUSED": return States.Focused;
221 case "DISABLED": return States.Disabled;
222 default: return States.Normal;
225 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
226 [EditorBrowsable(EditorBrowsableState.Never)]
227 public static readonly BindableProperty TooltipProperty = BindableProperty.Create("Tooltip", typeof(PropertyMap), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
229 var view = (View)bindable;
230 if (newValue != null)
232 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.TOOLTIP, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
235 defaultValueCreator: (bindable) =>
237 var view = (View)bindable;
238 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
239 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.TOOLTIP).Get(temp);
243 /// Only for XAML property binding. This will be changed as Inhouse API by ACR later.
244 public static readonly BindableProperty FlexProperty = BindableProperty.Create("Flex", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
246 var view = (View)bindable;
247 if (newValue != null)
249 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX, new Tizen.NUI.PropertyValue((float)newValue));
252 defaultValueCreator: (bindable) =>
254 var view = (View)bindable;
256 Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX).Get(out temp);
260 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
261 [EditorBrowsable(EditorBrowsableState.Never)]
262 public static readonly BindableProperty AlignSelfProperty = BindableProperty.Create("AlignSelf", typeof(int), typeof(View), default(int), propertyChanged: (bindable, oldValue, newValue) =>
264 var view = (View)bindable;
265 if (newValue != null)
267 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.ALIGN_SELF, new Tizen.NUI.PropertyValue((int)newValue));
270 defaultValueCreator: (bindable) =>
272 var view = (View)bindable;
274 Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.ALIGN_SELF).Get(out temp);
277 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
278 [EditorBrowsable(EditorBrowsableState.Never)]
279 public static readonly BindableProperty FlexMarginProperty = BindableProperty.Create("FlexMargin", typeof(Vector4), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
281 var view = (View)bindable;
282 if (newValue != null)
284 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX_MARGIN, new Tizen.NUI.PropertyValue((Vector4)newValue));
287 defaultValueCreator: (bindable) =>
289 var view = (View)bindable;
290 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
291 Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX_MARGIN).Get(temp);
294 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
295 [EditorBrowsable(EditorBrowsableState.Never)]
296 public static readonly BindableProperty CellIndexProperty = BindableProperty.Create("CellIndex", typeof(Vector2), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
298 var view = (View)bindable;
299 if (newValue != null)
301 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_INDEX, new Tizen.NUI.PropertyValue((Vector2)newValue));
304 defaultValueCreator: (bindable) =>
306 var view = (View)bindable;
307 Vector2 temp = new Vector2(0.0f, 0.0f);
308 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_INDEX).Get(temp);
311 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
312 [EditorBrowsable(EditorBrowsableState.Never)]
313 public static readonly BindableProperty RowSpanProperty = BindableProperty.Create("RowSpan", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
315 var view = (View)bindable;
316 if (newValue != null)
318 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.ROW_SPAN, new Tizen.NUI.PropertyValue((float)newValue));
321 defaultValueCreator: (bindable) =>
323 var view = (View)bindable;
325 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.ROW_SPAN).Get(out temp);
328 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
329 [EditorBrowsable(EditorBrowsableState.Never)]
330 public static readonly BindableProperty ColumnSpanProperty = BindableProperty.Create("ColumnSpan", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
332 var view = (View)bindable;
333 if (newValue != null)
335 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.COLUMN_SPAN, new Tizen.NUI.PropertyValue((float)newValue));
338 defaultValueCreator: (bindable) =>
340 var view = (View)bindable;
342 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.COLUMN_SPAN).Get(out temp);
345 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
346 [EditorBrowsable(EditorBrowsableState.Never)]
347 public static readonly BindableProperty CellHorizontalAlignmentProperty = BindableProperty.Create("CellHorizontalAlignment", typeof(HorizontalAlignmentType), typeof(View), HorizontalAlignmentType.Left, propertyChanged: (bindable, oldValue, newValue) =>
349 var view = (View)bindable;
350 string valueToString = "";
352 if (newValue != null)
354 switch ((HorizontalAlignmentType)newValue)
356 case Tizen.NUI.HorizontalAlignmentType.Left: { valueToString = "left"; break; }
357 case Tizen.NUI.HorizontalAlignmentType.Center: { valueToString = "center"; break; }
358 case Tizen.NUI.HorizontalAlignmentType.Right: { valueToString = "right"; break; }
359 default: { valueToString = "left"; break; }
361 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
364 defaultValueCreator: (bindable) =>
366 var view = (View)bindable;
368 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT).Get(out temp) == false)
370 NUILog.Error("CellHorizontalAlignment get error!");
375 case "left": return Tizen.NUI.HorizontalAlignmentType.Left;
376 case "center": return Tizen.NUI.HorizontalAlignmentType.Center;
377 case "right": return Tizen.NUI.HorizontalAlignmentType.Right;
378 default: return Tizen.NUI.HorizontalAlignmentType.Left;
381 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
382 [EditorBrowsable(EditorBrowsableState.Never)]
383 public static readonly BindableProperty CellVerticalAlignmentProperty = BindableProperty.Create("CellVerticalAlignment", typeof(VerticalAlignmentType), typeof(View), VerticalAlignmentType.Top, propertyChanged: (bindable, oldValue, newValue) =>
385 var view = (View)bindable;
386 string valueToString = "";
388 if (newValue != null)
390 switch ((VerticalAlignmentType)newValue)
392 case Tizen.NUI.VerticalAlignmentType.Top: { valueToString = "top"; break; }
393 case Tizen.NUI.VerticalAlignmentType.Center: { valueToString = "center"; break; }
394 case Tizen.NUI.VerticalAlignmentType.Bottom: { valueToString = "bottom"; break; }
395 default: { valueToString = "top"; break; }
397 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
400 defaultValueCreator: (bindable) =>
402 var view = (View)bindable;
404 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT).Get(out temp);
406 NUILog.Error("CellVerticalAlignment get error!");
411 case "top": return Tizen.NUI.VerticalAlignmentType.Top;
412 case "center": return Tizen.NUI.VerticalAlignmentType.Center;
413 case "bottom": return Tizen.NUI.VerticalAlignmentType.Bottom;
414 default: return Tizen.NUI.VerticalAlignmentType.Top;
419 /// "Please DO NOT use! This will be deprecated! Please use 'View Weight' instead of BindableProperty"
420 /// This needs to be hidden as inhouse API until all applications using it have been updated. Do not make public.
422 [EditorBrowsable(EditorBrowsableState.Never)]
423 public static readonly BindableProperty WeightProperty = BindableProperty.Create("Weight", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
425 var view = (View)bindable;
426 if (newValue != null)
428 view.Weight = (float)newValue;
432 defaultValueCreator: (bindable) =>
434 var view = (View)bindable;
438 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
439 [EditorBrowsable(EditorBrowsableState.Never)]
440 public static readonly BindableProperty LeftFocusableViewProperty = BindableProperty.Create(nameof(View.LeftFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
442 var view = (View)bindable;
443 if (newValue != null) { view.LeftFocusableViewId = (int)(newValue as View)?.GetId(); }
444 else { view.LeftFocusableViewId = -1; }
446 defaultValueCreator: (bindable) =>
448 var view = (View)bindable;
449 if (view.LeftFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.LeftFocusableViewId); }
452 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
453 [EditorBrowsable(EditorBrowsableState.Never)]
454 public static readonly BindableProperty RightFocusableViewProperty = BindableProperty.Create(nameof(View.RightFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
456 var view = (View)bindable;
457 if (newValue != null) { view.RightFocusableViewId = (int)(newValue as View)?.GetId(); }
458 else { view.RightFocusableViewId = -1; }
460 defaultValueCreator: (bindable) =>
462 var view = (View)bindable;
463 if (view.RightFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.RightFocusableViewId); }
466 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
467 [EditorBrowsable(EditorBrowsableState.Never)]
468 public static readonly BindableProperty UpFocusableViewProperty = BindableProperty.Create(nameof(View.UpFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
470 var view = (View)bindable;
471 if (newValue != null) { view.UpFocusableViewId = (int)(newValue as View)?.GetId(); }
472 else { view.UpFocusableViewId = -1; }
474 defaultValueCreator: (bindable) =>
476 var view = (View)bindable;
477 if (view.UpFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.UpFocusableViewId); }
480 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
481 [EditorBrowsable(EditorBrowsableState.Never)]
482 public static readonly BindableProperty DownFocusableViewProperty = BindableProperty.Create(nameof(View.DownFocusableView), typeof(View), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
484 var view = (View)bindable;
485 if (newValue != null) { view.DownFocusableViewId = (int)(newValue as View)?.GetId(); }
486 else { view.DownFocusableViewId = -1; }
488 defaultValueCreator: (bindable) =>
490 var view = (View)bindable;
491 if (view.DownFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.DownFocusableViewId); }
494 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
495 [EditorBrowsable(EditorBrowsableState.Never)]
496 public static readonly BindableProperty FocusableProperty = BindableProperty.Create("Focusable", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
498 var view = (View)bindable;
499 if (newValue != null) { view.SetKeyboardFocusable((bool)newValue); }
501 defaultValueCreator: (bindable) =>
503 var view = (View)bindable;
504 return view.IsKeyboardFocusable();
506 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
507 [EditorBrowsable(EditorBrowsableState.Never)]
508 public static readonly BindableProperty Size2DProperty = BindableProperty.Create("Size2D", typeof(Size2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
510 var view = (View)bindable;
511 if (newValue != null)
513 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE, new Tizen.NUI.PropertyValue(new Size((Size2D)newValue)));
516 defaultValueCreator: (bindable) =>
518 var view = (View)bindable;
519 Size temp = new Size(0.0f, 0.0f, 0.0f);
520 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE).Get(temp);
521 Size2D size = new Size2D((int)temp.Width, (int)temp.Height);
524 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
525 [EditorBrowsable(EditorBrowsableState.Never)]
526 public static readonly BindableProperty OpacityProperty = BindableProperty.Create("Opacity", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
528 var view = (View)bindable;
529 if (newValue != null)
531 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.OPACITY, new Tizen.NUI.PropertyValue((float)newValue));
534 defaultValueCreator: (bindable) =>
536 var view = (View)bindable;
538 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.OPACITY).Get(out temp);
541 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
542 [EditorBrowsable(EditorBrowsableState.Never)]
543 public static readonly BindableProperty Position2DProperty = BindableProperty.Create("Position2D", typeof(Position2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
545 var view = (View)bindable;
546 if (newValue != null)
548 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION, new Tizen.NUI.PropertyValue(new Position((Position2D)newValue)));
551 defaultValueCreator: (bindable) =>
553 var view = (View)bindable;
554 Position temp = new Position(0.0f, 0.0f, 0.0f);
555 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION).Get(temp);
556 return new Position2D(temp);
558 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
559 [EditorBrowsable(EditorBrowsableState.Never)]
560 public static readonly BindableProperty PositionUsesPivotPointProperty = BindableProperty.Create("PositionUsesPivotPoint", typeof(bool), typeof(View), true, propertyChanged: (bindable, oldValue, newValue) =>
562 var view = (View)bindable;
563 if (newValue != null)
565 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue((bool)newValue));
568 defaultValueCreator: (bindable) =>
570 var view = (View)bindable;
572 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_USES_ANCHOR_POINT).Get(out temp);
575 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
576 [EditorBrowsable(EditorBrowsableState.Never)]
577 public static readonly BindableProperty SiblingOrderProperty = BindableProperty.Create("SiblingOrder", typeof(int), typeof(View), default(int), propertyChanged: (bindable, oldValue, newValue) =>
579 var view = (View)bindable;
581 if (newValue != null)
583 value = (int)newValue;
586 NUILog.Error("SiblingOrder should be bigger than 0 or equal to 0.");
589 var siblings = view.GetParent()?.Children;
590 if (siblings != null)
592 int currentOrder = siblings.IndexOf(view);
593 if (value != currentOrder)
595 if (value == 0) { view.LowerToBottom(); }
596 else if (value < siblings.Count - 1)
598 if (value > currentOrder) { view.RaiseAbove(siblings[value]); }
599 else { view.LowerBelow(siblings[value]); }
601 else { view.RaiseToTop(); }
606 defaultValueCreator: (bindable) =>
608 var view = (View)bindable;
609 var parentChildren = view.GetParent()?.Children;
610 int currentOrder = 0;
611 if (parentChildren != null)
613 currentOrder = parentChildren.IndexOf(view);
615 if (currentOrder < 0) { return 0; }
616 else if (currentOrder < parentChildren.Count) { return currentOrder; }
621 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
622 [EditorBrowsable(EditorBrowsableState.Never)]
623 public static readonly BindableProperty ParentOriginProperty = BindableProperty.Create("ParentOrigin", typeof(Position), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
625 var view = (View)bindable;
626 if (newValue != null)
628 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.PARENT_ORIGIN, new Tizen.NUI.PropertyValue((Position)newValue));
631 defaultValueCreator: (bindable) =>
633 var view = (View)bindable;
634 Position temp = new Position(0.0f, 0.0f, 0.0f);
635 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.PARENT_ORIGIN).Get(temp);
639 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
640 [EditorBrowsable(EditorBrowsableState.Never)]
641 public static readonly BindableProperty PivotPointProperty = BindableProperty.Create("PivotPoint", typeof(Position), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
643 var view = (View)bindable;
644 if (newValue != null)
646 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue((Position)newValue));
649 defaultValueCreator: (bindable) =>
651 var view = (View)bindable;
652 Position temp = new Position(0.0f, 0.0f, 0.0f);
653 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.ANCHOR_POINT).Get(temp);
656 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
657 [EditorBrowsable(EditorBrowsableState.Never)]
658 public static readonly BindableProperty SizeWidthProperty = BindableProperty.Create("SizeWidth", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
660 var view = (View)bindable;
661 if (newValue != null)
663 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_WIDTH, new Tizen.NUI.PropertyValue((float)newValue));
666 defaultValueCreator: (bindable) =>
668 var view = (View)bindable;
670 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_WIDTH).Get(out temp);
673 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
674 [EditorBrowsable(EditorBrowsableState.Never)]
675 public static readonly BindableProperty SizeHeightProperty = BindableProperty.Create("SizeHeight", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
677 var view = (View)bindable;
678 if (newValue != null)
680 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_HEIGHT, new Tizen.NUI.PropertyValue((float)newValue));
683 defaultValueCreator: (bindable) =>
685 var view = (View)bindable;
687 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_HEIGHT).Get(out temp);
690 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
691 [EditorBrowsable(EditorBrowsableState.Never)]
692 public static readonly BindableProperty PositionProperty = BindableProperty.Create("Position", typeof(Position), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
694 var view = (View)bindable;
695 if (newValue != null)
697 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION, new Tizen.NUI.PropertyValue((Position)newValue));
700 defaultValueCreator: (bindable) =>
702 var view = (View)bindable;
703 Position temp = new Position(0.0f, 0.0f, 0.0f);
704 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION).Get(temp);
707 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
708 [EditorBrowsable(EditorBrowsableState.Never)]
709 public static readonly BindableProperty PositionXProperty = BindableProperty.Create("PositionX", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
711 var view = (View)bindable;
712 if (newValue != null)
714 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_X, new Tizen.NUI.PropertyValue((float)newValue));
717 defaultValueCreator: (bindable) =>
719 var view = (View)bindable;
721 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_X).Get(out temp);
724 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
725 [EditorBrowsable(EditorBrowsableState.Never)]
726 public static readonly BindableProperty PositionYProperty = BindableProperty.Create("PositionY", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
728 var view = (View)bindable;
729 if (newValue != null)
731 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_Y, new Tizen.NUI.PropertyValue((float)newValue));
734 defaultValueCreator: (bindable) =>
736 var view = (View)bindable;
738 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_Y).Get(out temp);
741 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
742 [EditorBrowsable(EditorBrowsableState.Never)]
743 public static readonly BindableProperty PositionZProperty = BindableProperty.Create("PositionZ", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
745 var view = (View)bindable;
746 if (newValue != null)
748 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_Z, new Tizen.NUI.PropertyValue((float)newValue));
751 defaultValueCreator: (bindable) =>
753 var view = (View)bindable;
755 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_Z).Get(out temp);
758 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
759 [EditorBrowsable(EditorBrowsableState.Never)]
760 public static readonly BindableProperty OrientationProperty = BindableProperty.Create("Orientation", typeof(Rotation), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
762 var view = (View)bindable;
763 if (newValue != null)
765 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.ORIENTATION, new Tizen.NUI.PropertyValue((Rotation)newValue));
768 defaultValueCreator: (bindable) =>
770 var view = (View)bindable;
771 Rotation temp = new Rotation();
772 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.ORIENTATION).Get(temp);
775 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
776 [EditorBrowsable(EditorBrowsableState.Never)]
777 public static readonly BindableProperty ScaleProperty = BindableProperty.Create("Scale", typeof(Vector3), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
779 var view = (View)bindable;
780 if (newValue != null)
782 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE, new Tizen.NUI.PropertyValue((Vector3)newValue));
785 defaultValueCreator: (bindable) =>
787 var view = (View)bindable;
788 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
789 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE).Get(temp);
792 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
793 [EditorBrowsable(EditorBrowsableState.Never)]
794 public static readonly BindableProperty ScaleXProperty = BindableProperty.Create("ScaleX", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
796 var view = (View)bindable;
797 if (newValue != null)
799 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_X, new Tizen.NUI.PropertyValue((float)newValue));
802 defaultValueCreator: (bindable) =>
804 var view = (View)bindable;
806 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_X).Get(out temp);
809 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
810 [EditorBrowsable(EditorBrowsableState.Never)]
811 public static readonly BindableProperty ScaleYProperty = BindableProperty.Create("ScaleY", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
813 var view = (View)bindable;
814 if (newValue != null)
816 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_Y, new Tizen.NUI.PropertyValue((float)newValue));
819 defaultValueCreator: (bindable) =>
821 var view = (View)bindable;
823 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_Y).Get(out temp);
826 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
827 [EditorBrowsable(EditorBrowsableState.Never)]
828 public static readonly BindableProperty ScaleZProperty = BindableProperty.Create("ScaleZ", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
830 var view = (View)bindable;
831 if (newValue != null)
833 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_Z, new Tizen.NUI.PropertyValue((float)newValue));
836 defaultValueCreator: (bindable) =>
838 var view = (View)bindable;
840 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_Z).Get(out temp);
843 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
844 [EditorBrowsable(EditorBrowsableState.Never)]
845 public static readonly BindableProperty NameProperty = BindableProperty.Create("Name", typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
847 var view = (View)bindable;
848 if (newValue != null)
850 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.NAME, new Tizen.NUI.PropertyValue((string)newValue));
853 defaultValueCreator: (bindable) =>
855 var view = (View)bindable;
857 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.NAME).Get(out temp);
860 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
861 [EditorBrowsable(EditorBrowsableState.Never)]
862 public static readonly BindableProperty SensitiveProperty = BindableProperty.Create("Sensitive", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
864 var view = (View)bindable;
865 if (newValue != null)
867 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SENSITIVE, new Tizen.NUI.PropertyValue((bool)newValue));
870 defaultValueCreator: (bindable) =>
872 var view = (View)bindable;
874 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SENSITIVE).Get(out temp);
877 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
878 [EditorBrowsable(EditorBrowsableState.Never)]
879 public static readonly BindableProperty LeaveRequiredProperty = BindableProperty.Create("LeaveRequired", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
881 var view = (View)bindable;
882 if (newValue != null)
884 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.LEAVE_REQUIRED, new Tizen.NUI.PropertyValue((bool)newValue));
887 defaultValueCreator: (bindable) =>
889 var view = (View)bindable;
891 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.LEAVE_REQUIRED).Get(out temp);
894 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
895 [EditorBrowsable(EditorBrowsableState.Never)]
896 public static readonly BindableProperty InheritOrientationProperty = BindableProperty.Create("InheritOrientation", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
898 var view = (View)bindable;
899 if (newValue != null)
901 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_ORIENTATION, new Tizen.NUI.PropertyValue((bool)newValue));
904 defaultValueCreator: (bindable) =>
906 var view = (View)bindable;
908 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_ORIENTATION).Get(out temp);
911 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
912 [EditorBrowsable(EditorBrowsableState.Never)]
913 public static readonly BindableProperty InheritScaleProperty = BindableProperty.Create("InheritScale", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
915 var view = (View)bindable;
916 if (newValue != null)
918 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_SCALE, new Tizen.NUI.PropertyValue((bool)newValue));
921 defaultValueCreator: (bindable) =>
923 var view = (View)bindable;
925 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_SCALE).Get(out temp);
928 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
929 [EditorBrowsable(EditorBrowsableState.Never)]
930 public static readonly BindableProperty DrawModeProperty = BindableProperty.Create("DrawMode", typeof(DrawModeType), typeof(View), DrawModeType.Normal, propertyChanged: (bindable, oldValue, newValue) =>
932 var view = (View)bindable;
933 if (newValue != null)
935 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.DRAW_MODE, new Tizen.NUI.PropertyValue((int)newValue));
938 defaultValueCreator: (bindable) =>
940 var view = (View)bindable;
942 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.DRAW_MODE).Get(out temp) == false)
944 NUILog.Error("DrawMode get error!");
948 case "NORMAL": return DrawModeType.Normal;
949 case "OVERLAY_2D": return DrawModeType.Overlay2D;
950 #pragma warning disable CS0618 // Disable deprecated warning as we do need to use the deprecated API here.
951 case "STENCIL": return DrawModeType.Stencil;
952 #pragma warning restore CS0618
953 default: return DrawModeType.Normal;
956 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
957 [EditorBrowsable(EditorBrowsableState.Never)]
958 public static readonly BindableProperty SizeModeFactorProperty = BindableProperty.Create("SizeModeFactor", typeof(Vector3), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
960 var view = (View)bindable;
961 if (newValue != null)
963 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_MODE_FACTOR, new Tizen.NUI.PropertyValue((Vector3)newValue));
966 defaultValueCreator: (bindable) =>
968 var view = (View)bindable;
969 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
970 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_MODE_FACTOR).Get(temp);
973 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
974 [EditorBrowsable(EditorBrowsableState.Never)]
975 public static readonly BindableProperty WidthResizePolicyProperty = BindableProperty.Create("WidthResizePolicy", typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (bindable, oldValue, newValue) =>
977 var view = (View)bindable;
978 if (newValue != null)
980 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.WIDTH_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)newValue));
983 defaultValueCreator: (bindable) =>
985 var view = (View)bindable;
987 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.WIDTH_RESIZE_POLICY).Get(out temp) == false)
989 NUILog.Error("WidthResizePolicy get error!");
993 case "FIXED": return ResizePolicyType.Fixed;
994 case "USE_NATURAL_SIZE": return ResizePolicyType.UseNaturalSize;
995 case "FILL_TO_PARENT": return ResizePolicyType.FillToParent;
996 case "SIZE_RELATIVE_TO_PARENT": return ResizePolicyType.SizeRelativeToParent;
997 case "SIZE_FIXED_OFFSET_FROM_PARENT": return ResizePolicyType.SizeFixedOffsetFromParent;
998 case "FIT_TO_CHILDREN": return ResizePolicyType.FitToChildren;
999 case "DIMENSION_DEPENDENCY": return ResizePolicyType.DimensionDependency;
1000 case "USE_ASSIGNED_SIZE": return ResizePolicyType.UseAssignedSize;
1001 default: return ResizePolicyType.Fixed;
1004 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1005 [EditorBrowsable(EditorBrowsableState.Never)]
1006 public static readonly BindableProperty HeightResizePolicyProperty = BindableProperty.Create("HeightResizePolicy", typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (bindable, oldValue, newValue) =>
1008 var view = (View)bindable;
1009 if (newValue != null)
1011 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.HEIGHT_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)newValue));
1014 defaultValueCreator: (bindable) =>
1016 var view = (View)bindable;
1018 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.HEIGHT_RESIZE_POLICY).Get(out temp) == false)
1020 NUILog.Error("HeightResizePolicy get error!");
1024 case "FIXED": return ResizePolicyType.Fixed;
1025 case "USE_NATURAL_SIZE": return ResizePolicyType.UseNaturalSize;
1026 case "FILL_TO_PARENT": return ResizePolicyType.FillToParent;
1027 case "SIZE_RELATIVE_TO_PARENT": return ResizePolicyType.SizeRelativeToParent;
1028 case "SIZE_FIXED_OFFSET_FROM_PARENT": return ResizePolicyType.SizeFixedOffsetFromParent;
1029 case "FIT_TO_CHILDREN": return ResizePolicyType.FitToChildren;
1030 case "DIMENSION_DEPENDENCY": return ResizePolicyType.DimensionDependency;
1031 case "USE_ASSIGNED_SIZE": return ResizePolicyType.UseAssignedSize;
1032 default: return ResizePolicyType.Fixed;
1035 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1036 [EditorBrowsable(EditorBrowsableState.Never)]
1037 public static readonly BindableProperty SizeScalePolicyProperty = BindableProperty.Create("SizeScalePolicy", typeof(SizeScalePolicyType), typeof(View), SizeScalePolicyType.UseSizeSet, propertyChanged: (bindable, oldValue, newValue) =>
1039 var view = (View)bindable;
1040 string valueToString = "";
1041 if (newValue != null)
1043 switch ((SizeScalePolicyType)newValue)
1045 case SizeScalePolicyType.UseSizeSet: { valueToString = "USE_SIZE_SET"; break; }
1046 case SizeScalePolicyType.FitWithAspectRatio: { valueToString = "FIT_WITH_ASPECT_RATIO"; break; }
1047 case SizeScalePolicyType.FillWithAspectRatio: { valueToString = "FILL_WITH_ASPECT_RATIO"; break; }
1048 default: { valueToString = "USE_SIZE_SET"; break; }
1050 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_SCALE_POLICY, new Tizen.NUI.PropertyValue(valueToString));
1053 defaultValueCreator: (bindable) =>
1055 var view = (View)bindable;
1057 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_SCALE_POLICY).Get(out temp) == false)
1059 NUILog.Error("SizeScalePolicy get error!");
1063 case "USE_SIZE_SET": return SizeScalePolicyType.UseSizeSet;
1064 case "FIT_WITH_ASPECT_RATIO": return SizeScalePolicyType.FitWithAspectRatio;
1065 case "FILL_WITH_ASPECT_RATIO": return SizeScalePolicyType.FillWithAspectRatio;
1066 default: return SizeScalePolicyType.UseSizeSet;
1069 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1070 [EditorBrowsable(EditorBrowsableState.Never)]
1071 public static readonly BindableProperty WidthForHeightProperty = BindableProperty.Create("WidthForHeight", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1073 var view = (View)bindable;
1074 if (newValue != null)
1076 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.WIDTH_FOR_HEIGHT, new Tizen.NUI.PropertyValue((bool)newValue));
1079 defaultValueCreator: (bindable) =>
1081 var view = (View)bindable;
1083 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.WIDTH_FOR_HEIGHT).Get(out temp);
1086 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1087 [EditorBrowsable(EditorBrowsableState.Never)]
1088 public static readonly BindableProperty HeightForWidthProperty = BindableProperty.Create("HeightForWidth", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1090 var view = (View)bindable;
1091 if (newValue != null)
1093 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.HEIGHT_FOR_WIDTH, new Tizen.NUI.PropertyValue((bool)newValue));
1096 defaultValueCreator: (bindable) =>
1098 var view = (View)bindable;
1100 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.HEIGHT_FOR_WIDTH).Get(out temp);
1103 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1104 [EditorBrowsable(EditorBrowsableState.Never)]
1105 public static readonly BindableProperty PaddingProperty = BindableProperty.Create("Padding", typeof(Extents), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1107 var view = (View)bindable;
1108 if (newValue != null)
1110 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.PADDING, new Tizen.NUI.PropertyValue((Extents)newValue));
1113 defaultValueCreator: (bindable) =>
1115 var view = (View)bindable;
1116 Extents temp = new Extents(0, 0, 0, 0);
1117 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.PADDING).Get(temp);
1120 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1121 [EditorBrowsable(EditorBrowsableState.Never)]
1122 public static readonly BindableProperty SizeProperty = BindableProperty.Create("Size", typeof(Size), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1124 var view = (View)bindable;
1125 if (newValue != null)
1127 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE, new Tizen.NUI.PropertyValue((Size)newValue));
1130 defaultValueCreator: (bindable) =>
1132 var view = (View)bindable;
1133 Size temp = new Size(0, 0, 0);
1134 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE).Get(temp);
1137 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1138 [EditorBrowsable(EditorBrowsableState.Never)]
1139 public static readonly BindableProperty MinimumSizeProperty = BindableProperty.Create("MinimumSize", typeof(Size2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1141 var view = (View)bindable;
1142 if (newValue != null)
1144 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MINIMUM_SIZE, new Tizen.NUI.PropertyValue((Size2D)newValue));
1147 defaultValueCreator: (bindable) =>
1149 var view = (View)bindable;
1150 Size2D temp = new Size2D(0, 0);
1151 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MINIMUM_SIZE).Get(temp);
1154 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1155 [EditorBrowsable(EditorBrowsableState.Never)]
1156 public static readonly BindableProperty MaximumSizeProperty = BindableProperty.Create("MaximumSize", typeof(Size2D), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1158 var view = (View)bindable;
1159 if (newValue != null)
1161 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MAXIMUM_SIZE, new Tizen.NUI.PropertyValue((Size2D)newValue));
1164 defaultValueCreator: (bindable) =>
1166 var view = (View)bindable;
1167 Size2D temp = new Size2D(0, 0);
1168 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MAXIMUM_SIZE).Get(temp);
1171 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1172 [EditorBrowsable(EditorBrowsableState.Never)]
1173 public static readonly BindableProperty InheritPositionProperty = BindableProperty.Create("InheritPosition", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1175 var view = (View)bindable;
1176 if (newValue != null)
1178 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_POSITION, new Tizen.NUI.PropertyValue((bool)newValue));
1181 defaultValueCreator: (bindable) =>
1183 var view = (View)bindable;
1185 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_POSITION).Get(out temp);
1188 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1189 [EditorBrowsable(EditorBrowsableState.Never)]
1190 public static readonly BindableProperty ClippingModeProperty = BindableProperty.Create("ClippingMode", typeof(ClippingModeType), typeof(View), ClippingModeType.Disabled, propertyChanged: (bindable, oldValue, newValue) =>
1192 var view = (View)bindable;
1193 if (newValue != null)
1195 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.CLIPPING_MODE, new Tizen.NUI.PropertyValue((int)newValue));
1198 defaultValueCreator: (bindable) =>
1200 var view = (View)bindable;
1202 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.CLIPPING_MODE).Get(out temp) == false)
1204 NUILog.Error("ClippingMode get error!");
1206 return (ClippingModeType)temp;
1208 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1209 [EditorBrowsable(EditorBrowsableState.Never)]
1210 public static readonly BindableProperty InheritLayoutDirectionProperty = BindableProperty.Create("InheritLayoutDirection", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1212 var view = (View)bindable;
1213 if (newValue != null)
1215 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue((bool)newValue));
1218 defaultValueCreator: (bindable) =>
1220 var view = (View)bindable;
1222 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_LAYOUT_DIRECTION).Get(out temp);
1225 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1226 [EditorBrowsable(EditorBrowsableState.Never)]
1227 public static readonly BindableProperty LayoutDirectionProperty = BindableProperty.Create("LayoutDirection", typeof(ViewLayoutDirectionType), typeof(View), ViewLayoutDirectionType.LTR, propertyChanged: (bindable, oldValue, newValue) =>
1229 var view = (View)bindable;
1230 if (newValue != null)
1232 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue((int)newValue));
1235 defaultValueCreator: (bindable) =>
1237 var view = (View)bindable;
1239 if (false == Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.LAYOUT_DIRECTION).Get(out temp))
1241 NUILog.Error("LAYOUT_DIRECTION get error!");
1243 return (ViewLayoutDirectionType)temp;
1245 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1246 [EditorBrowsable(EditorBrowsableState.Never)]
1247 public static readonly BindableProperty MarginProperty = BindableProperty.Create("Margin", typeof(Extents), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1249 var view = (View)bindable;
1250 if (newValue != null)
1252 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MARGIN, new Tizen.NUI.PropertyValue((Extents)newValue));
1255 defaultValueCreator: (bindable) =>
1257 var view = (View)bindable;
1258 Extents temp = new Extents(0, 0, 0, 0);
1259 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MARGIN).Get(temp);
1264 /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1265 [EditorBrowsable(EditorBrowsableState.Never)]
1266 public static readonly BindableProperty UpdateSizeHintProperty = BindableProperty.Create("UpdateSizeHint", typeof(Vector2), typeof(View), null, propertyChanged: (bindable, oldValue, newValue) =>
1268 var view = (View)bindable;
1269 if (newValue != null)
1271 Tizen.NUI.Object.SetProperty(view.swigCPtr, Interop.ViewProperty.View_Property_UPDATE_SIZE_HINT_get(), new Tizen.NUI.PropertyValue((Vector2)newValue));
1274 defaultValueCreator: (bindable) =>
1276 var view = (View)bindable;
1278 Vector2 temp = new Vector2(0.0f, 0.0f);
1279 Tizen.NUI.Object.GetProperty(view.swigCPtr, Interop.ViewProperty.View_Property_UPDATE_SIZE_HINT_get()).Get(temp);
1284 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1285 [EditorBrowsable(EditorBrowsableState.Never)]
1286 public static readonly BindableProperty XamlStyleProperty = BindableProperty.Create("XamlStyle", typeof(Style), typeof(View), default(Style), propertyChanged: (bindable, oldvalue, newvalue) => ((View)bindable)._mergedStyle.Style = (Style)newvalue);
1289 /// Flag to indicate if layout set explicitly via API call or View was automatically given a Layout.
1291 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
1292 [EditorBrowsable(EditorBrowsableState.Never)]
1293 public bool layoutSet = false;
1296 /// Flag to allow Layouting to be disabled for Views.
1297 /// Once a View has a Layout set then any children added to Views from then on will receive
1298 /// automatic Layouts.
1300 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
1301 [EditorBrowsable(EditorBrowsableState.Never)]
1302 public static bool layoutingDisabled{get; set;} = true;
1304 private MergedStyle mergedStyle = null;
1305 internal MergedStyle _mergedStyle
1309 if (null == mergedStyle)
1311 mergedStyle = new MergedStyle(GetType(), this);
1318 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
1319 private LayoutItem _layout; // Exclusive layout assigned to this View.
1321 // List of transitions paired with the condition that uses the transition.
1322 private Dictionary<TransitionCondition, TransitionList> _layoutTransitions;
1323 private int _widthPolicy = LayoutParamPolicies.WrapContent; // Layout width policy
1324 private int _heightPolicy = LayoutParamPolicies.WrapContent; // Layout height policy
1325 private float _weight = 0.0f; // Weighting of child View in a Layout
1326 private MeasureSpecification _measureSpecificationWidth; // Layout width and internal Mode
1327 private MeasureSpecification _measureSpecificationHeight; // Layout height and internal Mode
1328 private bool _backgroundImageSynchronosLoading = false;
1329 private EventHandler _offWindowEventHandler;
1330 private OffWindowEventCallbackType _offWindowEventCallback;
1331 private EventHandlerWithReturnType<object, WheelEventArgs, bool> _wheelEventHandler;
1332 private WheelEventCallbackType _wheelEventCallback;
1333 private EventHandlerWithReturnType<object, KeyEventArgs, bool> _keyEventHandler;
1334 private KeyCallbackType _keyCallback;
1335 private EventHandlerWithReturnType<object, TouchEventArgs, bool> _touchDataEventHandler;
1336 private TouchDataCallbackType _touchDataCallback;
1337 private EventHandlerWithReturnType<object, HoverEventArgs, bool> _hoverEventHandler;
1338 private HoverEventCallbackType _hoverEventCallback;
1339 private EventHandler<VisibilityChangedEventArgs> _visibilityChangedEventHandler;
1340 private VisibilityChangedEventCallbackType _visibilityChangedEventCallback;
1341 private EventHandler _keyInputFocusGainedEventHandler;
1342 private KeyInputFocusGainedCallbackType _keyInputFocusGainedCallback;
1343 private EventHandler _keyInputFocusLostEventHandler;
1344 private KeyInputFocusLostCallbackType _keyInputFocusLostCallback;
1345 private EventHandler _onRelayoutEventHandler;
1346 private OnRelayoutEventCallbackType _onRelayoutEventCallback;
1347 private EventHandler _onWindowEventHandler;
1348 private OnWindowEventCallbackType _onWindowEventCallback;
1349 private EventHandler<LayoutDirectionChangedEventArgs> _layoutDirectionChangedEventHandler;
1350 private LayoutDirectionChangedEventCallbackType _layoutDirectionChangedEventCallback;
1351 // Resource Ready Signal
1352 private EventHandler _resourcesLoadedEventHandler;
1353 private ResourcesLoadedCallbackType _ResourcesLoadedCallback;
1354 private EventHandler<BackgroundResourceLoadedEventArgs> _backgroundResourceLoadedEventHandler;
1355 private _backgroundResourceLoadedCallbackType _backgroundResourceLoadedCallback;
1357 private OnWindowEventCallbackType _onWindowSendEventCallback;
1359 private void SendViewAddedEventToWindow(IntPtr data)
1361 Window.Instance?.SendViewAdded(this);
1365 /// Creates a new instance of a view.
1367 /// <since_tizen> 3 </since_tizen>
1368 public View() : this(Interop.View.View_New(), true)
1370 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1374 /// Create a new instance of a View with setting the status of shown or hidden.
1376 /// <param name="shown">false : Not displayed (hidden), true : displayed (shown)</param>
1377 /// This will be public opened in next release of tizen after ACR done. Before ACR, it is used as HiddenAPI (InhouseAPI).
1378 [EditorBrowsable(EditorBrowsableState.Never)]
1379 public View(bool shown) : this(Interop.View.View_New(), true)
1381 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1385 internal View(View uiControl, bool shown = true) : this(Interop.View.new_View__SWIG_1(View.getCPtr(uiControl)), true)
1387 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1394 internal View(global::System.IntPtr cPtr, bool cMemoryOwn, bool shown = true) : base(Interop.View.View_SWIGUpcast(cPtr), cMemoryOwn)
1396 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
1399 PositionUsesPivotPoint = false;
1402 _onWindowSendEventCallback = SendViewAddedEventToWindow;
1403 this.OnWindowSignal().Connect(_onWindowSendEventCallback);
1411 internal View(ViewImpl implementation, bool shown = true) : this(Interop.View.new_View__SWIG_2(ViewImpl.getCPtr(implementation)), true)
1413 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1421 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1422 private delegate void OffWindowEventCallbackType(IntPtr control);
1423 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1424 private delegate bool WheelEventCallbackType(IntPtr view, IntPtr wheelEvent);
1425 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1426 private delegate bool KeyCallbackType(IntPtr control, IntPtr keyEvent);
1427 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1428 private delegate bool TouchDataCallbackType(IntPtr view, IntPtr touchData);
1429 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1430 private delegate bool HoverEventCallbackType(IntPtr view, IntPtr hoverEvent);
1431 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1432 private delegate void VisibilityChangedEventCallbackType(IntPtr data, bool visibility, VisibilityChangeType type);
1433 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1434 private delegate void ResourcesLoadedCallbackType(IntPtr control);
1435 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1436 private delegate void _backgroundResourceLoadedCallbackType(IntPtr view);
1437 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1438 private delegate void KeyInputFocusGainedCallbackType(IntPtr control);
1439 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1440 private delegate void KeyInputFocusLostCallbackType(IntPtr control);
1441 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1442 private delegate void OnRelayoutEventCallbackType(IntPtr control);
1443 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1444 private delegate void OnWindowEventCallbackType(IntPtr control);
1445 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1446 private delegate void LayoutDirectionChangedEventCallbackType(IntPtr data, ViewLayoutDirectionType type);
1449 /// Event when a child is removed.
1451 /// <since_tizen> 5 </since_tizen>
1452 public new event EventHandler<ChildRemovedEventArgs> ChildRemoved;
1454 /// Event when a child is added.
1456 /// <since_tizen> 5 </since_tizen>
1457 public new event EventHandler<ChildAddedEventArgs> ChildAdded;
1460 /// An event for the KeyInputFocusGained signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1461 /// The KeyInputFocusGained signal is emitted when the control gets the key input focus.<br />
1463 /// <since_tizen> 3 </since_tizen>
1464 public event EventHandler FocusGained
1468 if (_keyInputFocusGainedEventHandler == null)
1470 _keyInputFocusGainedCallback = OnKeyInputFocusGained;
1471 this.KeyInputFocusGainedSignal().Connect(_keyInputFocusGainedCallback);
1474 _keyInputFocusGainedEventHandler += value;
1479 _keyInputFocusGainedEventHandler -= value;
1481 if (_keyInputFocusGainedEventHandler == null && KeyInputFocusGainedSignal().Empty() == false)
1483 this.KeyInputFocusGainedSignal().Disconnect(_keyInputFocusGainedCallback);
1489 /// An event for the KeyInputFocusLost signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1490 /// The KeyInputFocusLost signal is emitted when the control loses the key input focus.<br />
1492 /// <since_tizen> 3 </since_tizen>
1493 public event EventHandler FocusLost
1497 if (_keyInputFocusLostEventHandler == null)
1499 _keyInputFocusLostCallback = OnKeyInputFocusLost;
1500 this.KeyInputFocusLostSignal().Connect(_keyInputFocusLostCallback);
1503 _keyInputFocusLostEventHandler += value;
1508 _keyInputFocusLostEventHandler -= value;
1510 if (_keyInputFocusLostEventHandler == null && KeyInputFocusLostSignal().Empty() == false)
1512 this.KeyInputFocusLostSignal().Disconnect(_keyInputFocusLostCallback);
1518 /// An event for the KeyPressed signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1519 /// The KeyPressed signal is emitted when the key event is received.<br />
1521 /// <since_tizen> 3 </since_tizen>
1522 public event EventHandlerWithReturnType<object, KeyEventArgs, bool> KeyEvent
1526 if (_keyEventHandler == null)
1528 _keyCallback = OnKeyEvent;
1529 this.KeyEventSignal().Connect(_keyCallback);
1532 _keyEventHandler += value;
1537 _keyEventHandler -= value;
1539 if (_keyEventHandler == null && KeyEventSignal().Empty() == false)
1541 this.KeyEventSignal().Disconnect(_keyCallback);
1547 /// An event for the OnRelayout signal which can be used to subscribe or unsubscribe the event handler.<br />
1548 /// The OnRelayout signal is emitted after the size has been set on the view during relayout.<br />
1550 /// <since_tizen> 3 </since_tizen>
1551 public event EventHandler Relayout
1555 if (_onRelayoutEventHandler == null)
1557 _onRelayoutEventCallback = OnRelayout;
1558 this.OnRelayoutSignal().Connect(_onRelayoutEventCallback);
1561 _onRelayoutEventHandler += value;
1566 _onRelayoutEventHandler -= value;
1568 if (_onRelayoutEventHandler == null && OnRelayoutSignal().Empty() == false)
1570 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
1577 /// An event for the touched signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1578 /// The touched signal is emitted when the touch input is received.<br />
1580 /// <since_tizen> 3 </since_tizen>
1581 public event EventHandlerWithReturnType<object, TouchEventArgs, bool> TouchEvent
1585 if (_touchDataEventHandler == null)
1587 _touchDataCallback = OnTouch;
1588 this.TouchSignal().Connect(_touchDataCallback);
1591 _touchDataEventHandler += value;
1596 _touchDataEventHandler -= value;
1598 if (_touchDataEventHandler == null && TouchSignal().Empty() == false)
1600 this.TouchSignal().Disconnect(_touchDataCallback);
1607 /// An event for the hovered signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1608 /// The hovered signal is emitted when the hover input is received.<br />
1610 /// <since_tizen> 3 </since_tizen>
1611 public event EventHandlerWithReturnType<object, HoverEventArgs, bool> HoverEvent
1615 if (_hoverEventHandler == null)
1617 _hoverEventCallback = OnHoverEvent;
1618 this.HoveredSignal().Connect(_hoverEventCallback);
1621 _hoverEventHandler += value;
1626 _hoverEventHandler -= value;
1628 if (_hoverEventHandler == null && HoveredSignal().Empty() == false)
1630 this.HoveredSignal().Disconnect(_hoverEventCallback);
1637 /// An event for the WheelMoved signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1638 /// The WheelMoved signal is emitted when the wheel event is received.<br />
1640 /// <since_tizen> 3 </since_tizen>
1641 public event EventHandlerWithReturnType<object, WheelEventArgs, bool> WheelEvent
1645 if (_wheelEventHandler == null)
1647 _wheelEventCallback = OnWheelEvent;
1648 this.WheelEventSignal().Connect(_wheelEventCallback);
1651 _wheelEventHandler += value;
1656 _wheelEventHandler -= value;
1658 if (_wheelEventHandler == null && WheelEventSignal().Empty() == false)
1660 this.WheelEventSignal().Disconnect(_wheelEventCallback);
1667 /// An event for the OnWindow signal which can be used to subscribe or unsubscribe the event handler.<br />
1668 /// The OnWindow signal is emitted after the view has been connected to the window.<br />
1670 /// <since_tizen> 3 </since_tizen>
1671 public event EventHandler AddedToWindow
1675 if (_onWindowEventHandler == null)
1677 _onWindowEventCallback = OnWindow;
1678 this.OnWindowSignal().Connect(_onWindowEventCallback);
1681 _onWindowEventHandler += value;
1686 _onWindowEventHandler -= value;
1688 if (_onWindowEventHandler == null && OnWindowSignal().Empty() == false)
1690 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
1696 /// An event for the OffWindow signal, which can be used to subscribe or unsubscribe the event handler.<br />
1697 /// OffWindow signal is emitted after the view has been disconnected from the window.<br />
1699 /// <since_tizen> 3 </since_tizen>
1700 public event EventHandler RemovedFromWindow
1704 if (_offWindowEventHandler == null)
1706 _offWindowEventCallback = OffWindow;
1707 this.OffWindowSignal().Connect(_offWindowEventCallback);
1710 _offWindowEventHandler += value;
1715 _offWindowEventHandler -= value;
1717 if (_offWindowEventHandler == null && OffWindowSignal().Empty() == false)
1719 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
1725 /// An event for visibility change which can be used to subscribe or unsubscribe the event handler.<br />
1726 /// This signal is emitted when the visible property of this or a parent view is changed.<br />
1728 /// <since_tizen> 3 </since_tizen>
1729 public event EventHandler<VisibilityChangedEventArgs> VisibilityChanged
1733 if (_visibilityChangedEventHandler == null)
1735 _visibilityChangedEventCallback = OnVisibilityChanged;
1736 VisibilityChangedSignal(this).Connect(_visibilityChangedEventCallback);
1739 _visibilityChangedEventHandler += value;
1744 _visibilityChangedEventHandler -= value;
1746 if (_visibilityChangedEventHandler == null && VisibilityChangedSignal(this).Empty() == false)
1748 VisibilityChangedSignal(this).Disconnect(_visibilityChangedEventCallback);
1754 /// Event for layout direction change which can be used to subscribe/unsubscribe the event handler.<br />
1755 /// This signal is emitted when the layout direction property of this or a parent view is changed.<br />
1757 /// <since_tizen> 4 </since_tizen>
1758 public event EventHandler<LayoutDirectionChangedEventArgs> LayoutDirectionChanged
1762 if (_layoutDirectionChangedEventHandler == null)
1764 _layoutDirectionChangedEventCallback = OnLayoutDirectionChanged;
1765 LayoutDirectionChangedSignal(this).Connect(_layoutDirectionChangedEventCallback);
1768 _layoutDirectionChangedEventHandler += value;
1773 _layoutDirectionChangedEventHandler -= value;
1775 if (_layoutDirectionChangedEventHandler == null && LayoutDirectionChangedSignal(this).Empty() == false)
1777 LayoutDirectionChangedSignal(this).Disconnect(_layoutDirectionChangedEventCallback);
1783 /// An event for the ResourcesLoadedSignal signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1784 /// This signal is emitted after all resources required by a view are loaded and ready.<br />
1786 /// <since_tizen> 3 </since_tizen>
1787 public event EventHandler ResourcesLoaded
1791 if (_resourcesLoadedEventHandler == null)
1793 _ResourcesLoadedCallback = OnResourcesLoaded;
1794 this.ResourcesLoadedSignal().Connect(_ResourcesLoadedCallback);
1797 _resourcesLoadedEventHandler += value;
1802 _resourcesLoadedEventHandler -= value;
1804 if (_resourcesLoadedEventHandler == null && ResourcesLoadedSignal().Empty() == false)
1806 this.ResourcesLoadedSignal().Disconnect(_ResourcesLoadedCallback);
1811 internal event EventHandler<BackgroundResourceLoadedEventArgs> BackgroundResourceLoaded
1815 if (_backgroundResourceLoadedEventHandler == null)
1817 _backgroundResourceLoadedCallback = OnBackgroundResourceLoaded;
1818 this.ResourcesLoadedSignal().Connect(_backgroundResourceLoadedCallback);
1821 _backgroundResourceLoadedEventHandler += value;
1825 _backgroundResourceLoadedEventHandler -= value;
1827 if (_backgroundResourceLoadedEventHandler == null && ResourcesLoadedSignal().Empty() == false)
1829 this.ResourcesLoadedSignal().Disconnect(_backgroundResourceLoadedCallback);
1835 /// Enumeration for describing the states of the view.
1837 /// <since_tizen> 3 </since_tizen>
1841 /// The normal state.
1845 /// The focused state.
1849 /// The disabled state.
1855 /// Describes the direction to move the focus towards.
1857 /// <since_tizen> 3 </since_tizen>
1858 public enum FocusDirection
1861 /// Move keyboard focus towards the left direction.
1863 /// <since_tizen> 3 </since_tizen>
1866 /// Move keyboard focus towards the right direction.
1868 /// <since_tizen> 3 </since_tizen>
1871 /// Move keyboard focus towards the up direction.
1873 /// <since_tizen> 3 </since_tizen>
1876 /// Move keyboard focus towards the down direction.
1878 /// <since_tizen> 3 </since_tizen>
1881 /// Move keyboard focus towards the previous page direction.
1883 /// <since_tizen> 3 </since_tizen>
1886 /// Move keyboard focus towards the next page direction.
1888 /// <since_tizen> 3 </since_tizen>
1892 internal enum PropertyRange
1894 PROPERTY_START_INDEX = PropertyRanges.PROPERTY_REGISTRATION_START_INDEX,
1895 CONTROL_PROPERTY_START_INDEX = PROPERTY_START_INDEX,
1896 CONTROL_PROPERTY_END_INDEX = CONTROL_PROPERTY_START_INDEX + 1000
1899 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1900 [EditorBrowsable(EditorBrowsableState.Never)]
1901 public bool IsResourcesCreated
1905 return Application.Current.IsResourcesCreated;
1909 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1910 [EditorBrowsable(EditorBrowsableState.Never)]
1911 public ResourceDictionary XamlResources
1915 return Application.Current.XamlResources;
1919 Application.Current.XamlResources = value;
1924 /// The StyleName, type string.
1926 /// <since_tizen> 3 </since_tizen>
1927 public string StyleName
1931 return (string)GetValue(StyleNameProperty);
1935 SetValue(StyleNameProperty, value);
1936 NotifyPropertyChanged();
1941 /// The mutually exclusive with BACKGROUND_IMAGE and BACKGROUND type Vector4.
1943 /// <since_tizen> 3 </since_tizen>
1944 public Color BackgroundColor
1948 return (Color)GetValue(BackgroundColorProperty);
1952 SetValue(BackgroundColorProperty, value);
1953 NotifyPropertyChanged();
1958 /// The mutually exclusive with BACKGROUND_COLOR and BACKGROUND type Map.
1960 /// <since_tizen> 3 </since_tizen>
1961 public string BackgroundImage
1965 return (string)GetValue(BackgroundImageProperty);
1969 SetValue(BackgroundImageProperty, value);
1970 NotifyPropertyChanged();
1975 /// The background of view.
1977 /// <since_tizen> 3 </since_tizen>
1978 public Tizen.NUI.PropertyMap Background
1982 return (PropertyMap)GetValue(BackgroundProperty);
1986 SetValue(BackgroundProperty, value);
1987 NotifyPropertyChanged();
1993 /// The current state of the view.
1995 /// <since_tizen> 3 </since_tizen>
2000 return (States)GetValue(StateProperty);
2004 SetValue(StateProperty, value);
2005 NotifyPropertyChanged();
2010 /// The current sub state of the view.
2012 /// <since_tizen> 3 </since_tizen>
2013 public States SubState
2017 return (States)GetValue(SubStateProperty);
2021 SetValue(SubStateProperty, value);
2022 NotifyPropertyChanged();
2027 /// Displays a tooltip
2029 /// <since_tizen> 3 </since_tizen>
2030 public Tizen.NUI.PropertyMap Tooltip
2034 return (PropertyMap)GetValue(TooltipProperty);
2038 SetValue(TooltipProperty, value);
2039 NotifyPropertyChanged();
2044 /// Displays a tooltip as a text.
2046 /// <since_tizen> 3 </since_tizen>
2047 public string TooltipText
2051 SetProperty(View.Property.TOOLTIP, new Tizen.NUI.PropertyValue(value));
2052 NotifyPropertyChanged();
2057 /// The Child property of FlexContainer.<br />
2058 /// The proportion of the free space in the container, the flex item will receive.<br />
2059 /// If all items in the container set this property, their sizes will be proportional to the specified flex factor.<br />
2061 /// <since_tizen> 3 </since_tizen>
2066 return (float)GetValue(FlexProperty);
2070 SetValue(FlexProperty, value);
2071 NotifyPropertyChanged();
2076 /// The Child property of FlexContainer.<br />
2077 /// The alignment of the flex item along the cross axis, which, if set, overides the default alignment for all items in the container.<br />
2079 /// <since_tizen> 3 </since_tizen>
2080 public int AlignSelf
2084 return (int)GetValue(AlignSelfProperty);
2088 SetValue(AlignSelfProperty, value);
2089 NotifyPropertyChanged();
2094 /// The Child property of FlexContainer.<br />
2095 /// The space around the flex item.<br />
2097 /// <since_tizen> 3 </since_tizen>
2098 public Vector4 FlexMargin
2102 return (Vector4)GetValue(FlexMarginProperty);
2106 SetValue(FlexMarginProperty, value);
2107 NotifyPropertyChanged();
2112 /// The top-left cell this child occupies, if not set, the first available cell is used.
2114 /// <since_tizen> 3 </since_tizen>
2115 public Vector2 CellIndex
2119 return (Vector2)GetValue(CellIndexProperty);
2123 SetValue(CellIndexProperty, value);
2124 NotifyPropertyChanged();
2129 /// The number of rows this child occupies, if not set, the default value is 1.
2131 /// <since_tizen> 3 </since_tizen>
2132 public float RowSpan
2136 return (float)GetValue(RowSpanProperty);
2140 SetValue(RowSpanProperty, value);
2141 NotifyPropertyChanged();
2146 /// The number of columns this child occupies, if not set, the default value is 1.
2148 /// <since_tizen> 3 </since_tizen>
2149 public float ColumnSpan
2153 return (float)GetValue(ColumnSpanProperty);
2157 SetValue(ColumnSpanProperty, value);
2158 NotifyPropertyChanged();
2163 /// The horizontal alignment of this child inside the cells, if not set, the default value is 'left'.
2165 /// <since_tizen> 3 </since_tizen>
2166 public Tizen.NUI.HorizontalAlignmentType CellHorizontalAlignment
2170 return (HorizontalAlignmentType)GetValue(CellHorizontalAlignmentProperty);
2174 SetValue(CellHorizontalAlignmentProperty, value);
2175 NotifyPropertyChanged();
2180 /// The vertical alignment of this child inside the cells, if not set, the default value is 'top'.
2182 /// <since_tizen> 3 </since_tizen>
2183 public Tizen.NUI.VerticalAlignmentType CellVerticalAlignment
2187 return (VerticalAlignmentType)GetValue(CellVerticalAlignmentProperty);
2191 SetValue(CellVerticalAlignmentProperty, value);
2192 NotifyPropertyChanged();
2197 /// The left focusable view.<br />
2198 /// This will return null if not set.<br />
2199 /// This will also return null if the specified left focusable view is not on a window.<br />
2201 /// <since_tizen> 3 </since_tizen>
2202 public View LeftFocusableView
2204 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
2207 return (View)GetValue(LeftFocusableViewProperty);
2211 SetValue(LeftFocusableViewProperty, value);
2212 NotifyPropertyChanged();
2217 /// The right focusable view.<br />
2218 /// This will return null if not set.<br />
2219 /// This will also return null if the specified right focusable view is not on a window.<br />
2221 /// <since_tizen> 3 </since_tizen>
2222 public View RightFocusableView
2224 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
2227 return (View)GetValue(RightFocusableViewProperty);
2231 SetValue(RightFocusableViewProperty, value);
2232 NotifyPropertyChanged();
2237 /// The up focusable view.<br />
2238 /// This will return null if not set.<br />
2239 /// This will also return null if the specified up focusable view is not on a window.<br />
2241 /// <since_tizen> 3 </since_tizen>
2242 public View UpFocusableView
2244 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
2247 return (View)GetValue(UpFocusableViewProperty);
2251 SetValue(UpFocusableViewProperty, value);
2252 NotifyPropertyChanged();
2257 /// The down focusable view.<br />
2258 /// This will return null if not set.<br />
2259 /// This will also return null if the specified down focusable view is not on a window.<br />
2261 /// <since_tizen> 3 </since_tizen>
2262 public View DownFocusableView
2264 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
2267 return (View)GetValue(DownFocusableViewProperty);
2271 SetValue(DownFocusableViewProperty, value);
2272 NotifyPropertyChanged();
2277 /// Whether the view should be focusable by keyboard navigation.
2279 /// <since_tizen> 3 </since_tizen>
2280 public bool Focusable
2284 SetValue(FocusableProperty, value);
2285 NotifyPropertyChanged();
2289 return (bool)GetValue(FocusableProperty);
2294 /// Retrieves the position of the view.<br />
2295 /// The coordinates are relative to the view's parent.<br />
2297 /// <since_tizen> 3 </since_tizen>
2298 public Position CurrentPosition
2302 return GetCurrentPosition();
2307 /// Sets the size of a view for the width and the height.<br />
2308 /// Geometry can be scaled to fit within this area.<br />
2309 /// This does not interfere with the view's scale factor.<br />
2310 /// The views default depth is the minimum of width and height.<br />
2313 /// This NUI object (Size2D) typed property can be configured by multiple cascade setting. <br />
2314 /// For example, this code ( view.Size2D.Width = 100; view.Size2D.Height = 100; ) is equivalent to this ( view.Size2D = new Size2D(100, 100); ). <br />
2315 /// Please note that this multi-cascade setting is especially possible for this NUI object (Size2D). <br />
2316 /// This means by default others are impossible so it is recommended that NUI object typed properties are configured by their constructor with parameters. <br />
2317 /// For example, this code is working fine : view.Scale = new Vector3( 2.0f, 1.5f, 0.0f); <br />
2318 /// but this will not work! : view.Scale.X = 2.0f; view.Scale.Y = 1.5f; <br />
2319 /// 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 />
2321 /// <since_tizen> 3 </since_tizen>
2322 public Size2D Size2D
2326 Size2D temp = (Size2D)GetValue(Size2DProperty);
2327 return new Size2D(OnSize2DChanged, temp.Width, temp.Height);
2331 SetValue(Size2DProperty, value);
2332 // Set Specification so when layouts measure this View it matches the value set here.
2333 // All Views are currently Layouts.
2334 MeasureSpecificationWidth = new MeasureSpecification(new LayoutLength(value.Width), MeasureSpecification.ModeType.Exactly);
2335 MeasureSpecificationHeight = new MeasureSpecification(new LayoutLength(value.Height), MeasureSpecification.ModeType.Exactly);
2336 _widthPolicy = value.Width;
2337 _heightPolicy = value.Height;
2338 _layout?.RequestLayout();
2339 NotifyPropertyChanged();
2344 /// Retrieves the size of the view.<br />
2345 /// The coordinates are relative to the view's parent.<br />
2347 /// <since_tizen> 3 </since_tizen>
2348 public Size2D CurrentSize
2352 return GetCurrentSize();
2357 /// Retrieves and sets the view's opacity.<br />
2359 /// <since_tizen> 3 </since_tizen>
2360 public float Opacity
2364 return (float)GetValue(OpacityProperty);
2368 SetValue(OpacityProperty, value);
2369 NotifyPropertyChanged();
2374 /// Sets the position of the view for X and Y.<br />
2375 /// By default, sets the position vector between the parent origin and the pivot point (default).<br />
2376 /// If the position inheritance is disabled, sets the world position.<br />
2379 /// This NUI object (Position2D) typed property can be configured by multiple cascade setting. <br />
2380 /// For example, this code ( view.Position2D.X = 100; view.Position2D.Y = 100; ) is equivalent to this ( view.Position2D = new Position2D(100, 100); ). <br />
2381 /// Please note that this multi-cascade setting is especially possible for this NUI object (Position2D). <br />
2382 /// This means by default others are impossible so it is recommended that NUI object typed properties are configured by their constructor with parameters. <br />
2383 /// For example, this code is working fine : view.Scale = new Vector3( 2.0f, 1.5f, 0.0f); <br />
2384 /// but this will not work! : view.Scale.X = 2.0f; view.Scale.Y = 1.5f; <br />
2386 /// <since_tizen> 3 </since_tizen>
2387 public Position2D Position2D
2391 Position2D temp = (Position2D)GetValue(Position2DProperty);
2392 return new Position2D(OnPosition2DChanged, temp.X, temp.Y);
2396 SetValue(Position2DProperty, value);
2397 NotifyPropertyChanged();
2402 /// Retrieves the screen postion of the view.<br />
2404 /// <since_tizen> 3 </since_tizen>
2405 public Vector2 ScreenPosition
2409 Vector2 temp = new Vector2(0.0f, 0.0f);
2410 GetProperty(View.Property.SCREEN_POSITION).Get(temp);
2416 /// Determines whether the pivot point should be used to determine the position of the view.
2417 /// This is true by default.
2419 /// <remarks>If false, then the top-left of the view is used for the position.
2420 /// Setting this to false will allow scaling or rotation around the pivot point without affecting the view's position.
2422 /// <since_tizen> 3 </since_tizen>
2423 public bool PositionUsesPivotPoint
2427 return (bool)GetValue(PositionUsesPivotPointProperty);
2431 SetValue(PositionUsesPivotPointProperty, value);
2432 NotifyPropertyChanged();
2437 /// Deprecated in API5; Will be removed in API8. Please use PositionUsesPivotPoint instead!
2439 /// <since_tizen> 3 </since_tizen>
2440 [Obsolete("Deprecated in API5; Will be removed in API8. Please use PositionUsesPivotPoint instead! " +
2442 "View view = new View(); " +
2443 "view.PivotPoint = PivotPoint.Center; " +
2444 "view.PositionUsesPivotPoint = true;" +
2445 " Deprecated in API5: Will be removed in API8")]
2446 [EditorBrowsable(EditorBrowsableState.Never)]
2447 public bool PositionUsesAnchorPoint
2452 GetProperty(View.Property.POSITION_USES_ANCHOR_POINT).Get(out temp);
2457 SetProperty(View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
2458 NotifyPropertyChanged();
2463 /// Queries whether the view is connected to the stage.<br />
2464 /// When a view is connected, it will be directly or indirectly parented to the root view.<br />
2466 /// <since_tizen> 3 </since_tizen>
2467 public bool IsOnWindow
2476 /// Gets the depth in the hierarchy for the view.
2478 /// <since_tizen> 3 </since_tizen>
2479 public int HierarchyDepth
2483 return GetHierarchyDepth();
2488 /// Sets the sibling order of the view so the depth position can be defined within the same parent.
2491 /// Note the initial value is 0. SiblingOrder should be bigger than 0 or equal to 0.
2492 /// Raise, Lower, RaiseToTop, LowerToBottom, RaiseAbove, and LowerBelow will override the sibling order.
2493 /// The values set by this property will likely change.
2495 /// <since_tizen> 3 </since_tizen>
2496 public int SiblingOrder
2500 return (int)GetValue(SiblingOrderProperty);
2504 SetValue(SiblingOrderProperty, value);
2505 NotifyPropertyChanged();
2510 /// Returns the natural size of the view.
2513 /// Deriving classes stipulate the natural size and by default a view has a zero natural size.
2515 /// <since_tizen> 5 </since_tizen>
2516 public Vector3 NaturalSize
2520 Vector3 ret = new Vector3(Interop.Actor.Actor_GetNaturalSize(swigCPtr), true);
2521 if (NDalicPINVOKE.SWIGPendingException.Pending)
2522 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2528 /// Returns the natural size (Size2D) of the view.
2531 /// Deriving classes stipulate the natural size and by default a view has a zero natural size.
2533 /// <since_tizen> 4 </since_tizen>
2534 public Size2D NaturalSize2D
2538 Vector3 temp = new Vector3(Interop.Actor.Actor_GetNaturalSize(swigCPtr), true);
2539 if (NDalicPINVOKE.SWIGPendingException.Pending)
2540 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2542 return new Size2D((int)temp.Width, (int)temp.Height);
2547 /// Gets or sets the origin of a view within its parent's area.<br />
2548 /// 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 />
2549 /// The default parent-origin is ParentOrigin.TopLeft (0.0, 0.0, 0.5).<br />
2550 /// A view's position is the distance between this origin and the view's anchor-point.<br />
2552 /// <pre>The view has been initialized.</pre>
2553 /// <since_tizen> 3 </since_tizen>
2554 public Position ParentOrigin
2558 Position tmp = (Position)GetValue(ParentOriginProperty);
2559 return new Position(OnParentOriginChanged, tmp.X, tmp.Y, tmp.Z);
2563 SetValue(ParentOriginProperty, value);
2564 NotifyPropertyChanged();
2569 /// Gets or sets the anchor-point of a view.<br />
2570 /// 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 />
2571 /// The default pivot point is PivotPoint.Center (0.5, 0.5, 0.5).<br />
2572 /// A view position is the distance between its parent-origin and this anchor-point.<br />
2573 /// A view's orientation is the rotation from its default orientation, the rotation is centered around its anchor-point.<br />
2574 /// <pre>The view has been initialized.</pre>
2576 /// <since_tizen> 3 </since_tizen>
2577 public Position PivotPoint
2581 Position tmp = (Position)GetValue(PivotPointProperty);
2582 return new Position(OnPivotPointChanged, tmp.X, tmp.Y, tmp.Z);
2586 SetValue(PivotPointProperty, value);
2587 NotifyPropertyChanged();
2592 /// Gets or sets the size width of the view.
2594 /// <since_tizen> 3 </since_tizen>
2595 public float SizeWidth
2599 return (float)GetValue(SizeWidthProperty);
2603 SetValue(SizeWidthProperty, value);
2604 WidthSpecification = (int)Math.Ceiling(value);
2605 NotifyPropertyChanged();
2610 /// Gets or sets the size height of the view.
2612 /// <since_tizen> 3 </since_tizen>
2613 public float SizeHeight
2617 return (float)GetValue(SizeHeightProperty);
2621 SetValue(SizeHeightProperty, value);
2622 HeightSpecification = (int)Math.Ceiling(value);
2623 NotifyPropertyChanged();
2628 /// Gets or sets the position of the view.<br />
2629 /// By default, sets the position vector between the parent origin and pivot point (default).<br />
2630 /// If the position inheritance is disabled, sets the world position.<br />
2632 /// <since_tizen> 3 </since_tizen>
2633 public Position Position
2637 Position tmp = (Position)GetValue(PositionProperty);
2638 return new Position(OnPositionChanged, tmp.X, tmp.Y, tmp.Z);
2642 SetValue(PositionProperty, value);
2643 NotifyPropertyChanged();
2648 /// Gets or sets the position X of the view.
2650 /// <since_tizen> 3 </since_tizen>
2651 public float PositionX
2655 return (float)GetValue(PositionXProperty);
2659 SetValue(PositionXProperty, value);
2660 NotifyPropertyChanged();
2665 /// Gets or sets the position Y of the view.
2667 /// <since_tizen> 3 </since_tizen>
2668 public float PositionY
2672 return (float)GetValue(PositionYProperty);
2676 SetValue(PositionYProperty, value);
2677 NotifyPropertyChanged();
2682 /// Gets or sets the position Z of the view.
2684 /// <since_tizen> 3 </since_tizen>
2685 public float PositionZ
2689 return (float)GetValue(PositionZProperty);
2693 SetValue(PositionZProperty, value);
2694 NotifyPropertyChanged();
2699 /// Gets or sets the world position of the view.
2701 /// <since_tizen> 3 </since_tizen>
2702 public Vector3 WorldPosition
2706 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
2707 GetProperty(View.Property.WORLD_POSITION).Get(temp);
2713 /// Gets or sets the orientation of the view.<br />
2714 /// The view's orientation is the rotation from its default orientation, and the rotation is centered around its anchor-point.<br />
2716 /// <remarks>This is an asynchronous method.</remarks>
2717 /// <since_tizen> 3 </since_tizen>
2718 public Rotation Orientation
2722 return (Rotation)GetValue(OrientationProperty);
2726 SetValue(OrientationProperty, value);
2727 NotifyPropertyChanged();
2732 /// Gets or sets the world orientation of the view.<br />
2734 /// <since_tizen> 3 </since_tizen>
2735 public Rotation WorldOrientation
2739 Rotation temp = new Rotation();
2740 GetProperty(View.Property.WORLD_ORIENTATION).Get(temp);
2746 /// Gets or sets the scale factor applied to the view.<br />
2748 /// <since_tizen> 3 </since_tizen>
2749 public Vector3 Scale
2753 return (Vector3)GetValue(ScaleProperty);
2757 SetValue(ScaleProperty, value);
2758 NotifyPropertyChanged();
2763 /// Gets or sets the scale X factor applied to the view.
2765 /// <since_tizen> 3 </since_tizen>
2770 return (float)GetValue(ScaleXProperty);
2774 SetValue(ScaleXProperty, value);
2775 NotifyPropertyChanged();
2780 /// Gets or sets the scale Y factor applied to the view.
2782 /// <since_tizen> 3 </since_tizen>
2787 return (float)GetValue(ScaleYProperty);
2791 SetValue(ScaleYProperty, value);
2792 NotifyPropertyChanged();
2797 /// Gets or sets the scale Z factor applied to the view.
2799 /// <since_tizen> 3 </since_tizen>
2804 return (float)GetValue(ScaleZProperty);
2808 SetValue(ScaleZProperty, value);
2809 NotifyPropertyChanged();
2814 /// Gets the world scale of the view.
2816 /// <since_tizen> 3 </since_tizen>
2817 public Vector3 WorldScale
2821 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
2822 GetProperty(View.Property.WORLD_SCALE).Get(temp);
2828 /// Retrieves the visibility flag of the view.
2831 /// If the view is not visible, then the view and its children will not be rendered.
2832 /// 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.
2834 /// <since_tizen> 3 </since_tizen>
2835 public bool Visibility
2840 GetProperty(View.Property.VISIBLE).Get(out temp);
2846 /// Gets the view's world color.
2848 /// <since_tizen> 3 </since_tizen>
2849 public Vector4 WorldColor
2853 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
2854 GetProperty(View.Property.WORLD_COLOR).Get(temp);
2860 /// Gets or sets the view's name.
2862 /// <since_tizen> 3 </since_tizen>
2867 return (string)GetValue(NameProperty);
2871 SetValue(NameProperty, value);
2872 NotifyPropertyChanged();
2877 /// Get the number of children held by the view.
2879 /// <since_tizen> 3 </since_tizen>
2880 public new uint ChildCount
2884 return GetChildCount();
2889 /// Gets the view's ID.
2892 /// <since_tizen> 3 </since_tizen>
2902 /// Gets or sets the status of whether the view should emit touch or hover signals.
2904 /// <since_tizen> 3 </since_tizen>
2905 public bool Sensitive
2909 return (bool)GetValue(SensitiveProperty);
2913 SetValue(SensitiveProperty, value);
2914 NotifyPropertyChanged();
2919 /// 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.
2921 /// <since_tizen> 3 </since_tizen>
2922 public bool LeaveRequired
2926 return (bool)GetValue(LeaveRequiredProperty);
2930 SetValue(LeaveRequiredProperty, value);
2931 NotifyPropertyChanged();
2936 /// Gets or sets the status of whether a child view inherits it's parent's orientation.
2938 /// <since_tizen> 3 </since_tizen>
2939 public bool InheritOrientation
2943 return (bool)GetValue(InheritOrientationProperty);
2947 SetValue(InheritOrientationProperty, value);
2948 NotifyPropertyChanged();
2953 /// Gets or sets the status of whether a child view inherits it's parent's scale.
2955 /// <since_tizen> 3 </since_tizen>
2956 public bool InheritScale
2960 return (bool)GetValue(InheritScaleProperty);
2964 SetValue(InheritScaleProperty, value);
2965 NotifyPropertyChanged();
2970 /// Gets or sets the status of how the view and its children should be drawn.<br />
2971 /// Not all views are renderable, but DrawMode can be inherited from any view.<br />
2972 /// 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 />
2973 /// If DrawMode.Overlay2D is used, the view and its children will be drawn as a 2D overlay.<br />
2974 /// Overlay views are drawn in a separate pass, after all non-overlay views within the layer.<br />
2975 /// For overlay views, the drawing order is with respect to tree levels of views, and depth-testing will not be used.<br />
2977 /// <since_tizen> 3 </since_tizen>
2978 public DrawModeType DrawMode
2982 return (DrawModeType)GetValue(DrawModeProperty);
2986 SetValue(DrawModeProperty, value);
2987 NotifyPropertyChanged();
2992 /// Gets or sets the relative to parent size factor of the view.<br />
2993 /// This factor is only used when ResizePolicyType is set to either: ResizePolicyType.SizeRelativeToParent or ResizePolicyType.SizeFixedOffsetFromParent.<br />
2994 /// This view's size is set to the view's size multiplied by or added to this factor, depending on ResizePolicyType.<br />
2996 /// <since_tizen> 3 </since_tizen>
2997 public Vector3 SizeModeFactor
3001 return (Vector3)GetValue(SizeModeFactorProperty);
3005 SetValue(SizeModeFactorProperty, value);
3006 NotifyPropertyChanged();
3011 /// Gets or sets the width resize policy to be used.
3013 /// <since_tizen> 3 </since_tizen>
3014 public ResizePolicyType WidthResizePolicy
3018 return (ResizePolicyType)GetValue(WidthResizePolicyProperty);
3022 SetValue(WidthResizePolicyProperty, value);
3023 // Match ResizePolicy to new Layouting.
3024 // Parent relative policies can not be mapped at this point as parent size unknown.
3027 case ResizePolicyType.UseNaturalSize:
3029 WidthSpecification = LayoutParamPolicies.WrapContent;
3032 case ResizePolicyType.FillToParent:
3034 WidthSpecification = LayoutParamPolicies.MatchParent;
3037 case ResizePolicyType.FitToChildren:
3039 WidthSpecification = LayoutParamPolicies.WrapContent;
3045 NotifyPropertyChanged();
3050 /// Gets or sets the height resize policy to be used.
3052 /// <since_tizen> 3 </since_tizen>
3053 public ResizePolicyType HeightResizePolicy
3057 return (ResizePolicyType)GetValue(HeightResizePolicyProperty);
3061 SetValue(HeightResizePolicyProperty, value);
3062 // Match ResizePolicy to new Layouting.
3063 // Parent relative policies can not be mapped at this point as parent size unknown.
3066 case ResizePolicyType.UseNaturalSize:
3068 HeightSpecification = LayoutParamPolicies.WrapContent;
3071 case ResizePolicyType.FillToParent:
3073 HeightSpecification = LayoutParamPolicies.MatchParent;
3076 case ResizePolicyType.FitToChildren:
3078 HeightSpecification = LayoutParamPolicies.WrapContent;
3084 NotifyPropertyChanged();
3089 /// Gets or sets the policy to use when setting size with size negotiation.<br />
3090 /// Defaults to SizeScalePolicyType.UseSizeSet.<br />
3092 /// <since_tizen> 3 </since_tizen>
3093 public SizeScalePolicyType SizeScalePolicy
3097 return (SizeScalePolicyType)GetValue(SizeScalePolicyProperty);
3101 SetValue(SizeScalePolicyProperty, value);
3102 NotifyPropertyChanged();
3107 /// Gets or sets the status of whether the width size is dependent on the height size.
3109 /// <since_tizen> 3 </since_tizen>
3110 public bool WidthForHeight
3114 return (bool)GetValue(WidthForHeightProperty);
3118 SetValue(WidthForHeightProperty, value);
3119 NotifyPropertyChanged();
3124 /// Gets or sets the status of whether the height size is dependent on the width size.
3126 /// <since_tizen> 3 </since_tizen>
3127 public bool HeightForWidth
3131 return (bool)GetValue(HeightForWidthProperty);
3135 SetValue(HeightForWidthProperty, value);
3136 NotifyPropertyChanged();
3141 /// Gets or sets the padding for use in layout.
3143 /// <since_tizen> 5 </since_tizen>
3144 public Extents Padding
3148 // If View has a Layout then padding in stored in the base Layout class
3151 return Layout.Padding;
3155 return (Extents)GetValue(PaddingProperty);
3157 // Two return points to prevent creating a zeroed Extent native object before assignment
3161 Extents padding = value;
3164 // Layout set so store Padding in LayoutItem instead of in View.
3165 // If View stores the Padding value then Legacy Size Negotiation will overwrite
3166 // the position and sizes measure in the Layouting.
3167 Layout.Padding = value;
3168 // If Layout is a LayoutItem then it could be a View that handles it's own padding.
3169 // Let the View keeps it's padding. Still store Padding in Layout to reduce code paths.
3170 if( Layout.GetType() != typeof(LayoutItem)) // If a Layout container of some kind.
3172 padding = new Extents(0,0,0,0); // Reset value stored in View.
3174 _layout?.RequestLayout();
3176 SetValue(PaddingProperty, padding);
3177 NotifyPropertyChanged();
3178 _layout?.RequestLayout();
3183 /// Gets or sets the minimum size the view can be assigned in size negotiation.
3185 /// <since_tizen> 3 </since_tizen>
3186 public Size2D MinimumSize
3190 Size2D tmp = (Size2D)GetValue(MinimumSizeProperty);
3191 return new Size2D(OnMinimumSizeChanged, tmp.Width, tmp.Height);
3195 if (_layout != null)
3197 // Note: it only works if minimum size is >= than natural size.
3198 // To force the size it should be done through the width&height spec or Size2D.
3199 _layout.MinimumWidth = new Tizen.NUI.LayoutLength(value.Width);
3200 _layout.MinimumHeight = new Tizen.NUI.LayoutLength(value.Height);
3201 _layout.RequestLayout();
3203 SetValue(MinimumSizeProperty, value);
3204 NotifyPropertyChanged();
3209 /// Gets or sets the maximum size the view can be assigned in size negotiation.
3211 /// <since_tizen> 3 </since_tizen>
3212 public Size2D MaximumSize
3216 Size2D tmp = (Size2D)GetValue(MaximumSizeProperty);
3217 return new Size2D(OnMaximumSizeChanged, tmp.Width, tmp.Height);
3221 // We don't have Layout.Maximum(Width|Height) so we cannot apply it to layout.
3222 // MATCH_PARENT spec + parent container size can be used to limit
3223 if (_layout != null)
3225 // Note: it only works if minimum size is >= than natural size.
3226 // To force the size it should be done through the width&height spec or Size2D.
3227 _layout.MinimumHeight = new Tizen.NUI.LayoutLength(value.Width);
3228 _layout.MinimumWidth = new Tizen.NUI.LayoutLength(value.Height);
3229 _layout.RequestLayout();
3231 SetValue(MaximumSizeProperty, value);
3232 NotifyPropertyChanged();
3237 /// Gets or sets whether a child view inherits it's parent's position.<br />
3238 /// Default is to inherit.<br />
3239 /// 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 />
3241 /// <since_tizen> 3 </since_tizen>
3242 public bool InheritPosition
3246 return (bool)GetValue(InheritPositionProperty);
3250 SetValue(InheritPositionProperty, value);
3251 NotifyPropertyChanged();
3256 /// Gets or sets the clipping behavior (mode) of it's children.
3258 /// <since_tizen> 3 </since_tizen>
3259 public ClippingModeType ClippingMode
3263 return (ClippingModeType)GetValue(ClippingModeProperty);
3267 SetValue(ClippingModeProperty, value);
3268 NotifyPropertyChanged();
3273 /// Gets the number of renderers held by the view.
3275 /// <since_tizen> 3 </since_tizen>
3276 public uint RendererCount
3280 return GetRendererCount();
3285 /// Deprecated in API5; Will be removed in API8. Please use PivotPoint instead!
3287 /// <since_tizen> 3 </since_tizen>
3288 [Obsolete("Deprecated in API5; Will be removed in API8. Please use PivotPoint instead! " +
3290 "View view = new View(); " +
3291 "view.PivotPoint = PivotPoint.Center; " +
3292 "view.PositionUsesPivotPoint = true;")]
3293 [EditorBrowsable(EditorBrowsableState.Never)]
3294 public Position AnchorPoint
3298 Position temp = new Position(0.0f, 0.0f, 0.0f);
3299 GetProperty(View.Property.ANCHOR_POINT).Get(temp);
3304 SetProperty(View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
3305 NotifyPropertyChanged();
3310 /// Sets the size of a view for the width, the height and the depth.<br />
3311 /// Geometry can be scaled to fit within this area.<br />
3312 /// This does not interfere with the view's scale factor.<br />
3313 /// The views default depth is the minimum of width and height.<br />
3316 /// Please note that multi-cascade setting is not possible for this NUI object. <br />
3317 /// It is recommended that NUI object typed properties are configured by their constructor with parameters. <br />
3318 /// For example, this code is working fine : view.Size = new Size( 1.0f, 1.0f, 0.0f); <br />
3319 /// but this will not work! : view.Size.Width = 2.0f; view.Size.Height = 2.0f; <br />
3320 /// 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 />
3322 /// <since_tizen> 5 </since_tizen>
3327 Size tmp = (Size)GetValue(SizeProperty);
3328 return new Size(OnSizeChanged, tmp.Width, tmp.Height, tmp.Depth);
3332 SetValue(SizeProperty, value);
3333 // Set Specification so when layouts measure this View it matches the value set here.
3334 // All Views are currently Layouts.
3335 WidthSpecification = (int)Math.Ceiling(value.Width);
3336 HeightSpecification = (int)Math.Ceiling(value.Height);
3337 NotifyPropertyChanged();
3342 /// Deprecated in API5; Will be removed in API8. Please use 'Container GetParent() for derived class' instead!
3344 /// <since_tizen> 3 </since_tizen>
3345 [Obsolete("Deprecated in API5; Will be removed in API8. Please use 'Container GetParent() for derived class' instead! " +
3347 "Container parent = view.GetParent(); " +
3348 "View view = parent as View;")]
3349 [EditorBrowsable(EditorBrowsableState.Never)]
3350 public new View Parent
3355 IntPtr cPtr = Interop.Actor.Actor_GetParent(swigCPtr);
3356 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
3357 BaseHandle basehandle = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle);
3359 if (basehandle is Layer layer)
3361 ret = new View(Layer.getCPtr(layer).Handle, false);
3362 NUILog.Error("This Parent property is deprecated, shoud do not be used");
3366 ret = basehandle as View;
3369 Interop.BaseHandle.delete_BaseHandle(CPtr);
3370 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
3372 if (NDalicPINVOKE.SWIGPendingException.Pending)
3373 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3379 /// Gets/Sets whether inherit parent's the layout Direction.
3381 /// <since_tizen> 4 </since_tizen>
3382 public bool InheritLayoutDirection
3386 return (bool)GetValue(InheritLayoutDirectionProperty);
3390 SetValue(InheritLayoutDirectionProperty, value);
3391 NotifyPropertyChanged();
3396 /// Gets/Sets the layout Direction.
3398 /// <since_tizen> 4 </since_tizen>
3399 public ViewLayoutDirectionType LayoutDirection
3403 return (ViewLayoutDirectionType)GetValue(LayoutDirectionProperty);
3407 SetValue(LayoutDirectionProperty, value);
3408 NotifyPropertyChanged();
3409 _layout?.RequestLayout();
3414 /// Gets or sets the Margin for use in layout.
3417 /// Margin property is supported by Layout algorithms and containers.
3418 /// Please Set Layout if you want to use Margin property.
3420 /// <since_tizen> 4 </since_tizen>
3421 public Extents Margin
3425 // If View has a Layout then margin is stored in Layout.
3428 return Layout.Margin;
3432 // If Layout not set then return margin stored in View.
3433 return (Extents)GetValue(MarginProperty);
3435 // Two return points to prevent creating a zeroed Extent native object before assignment
3441 // Layout set so store Margin in LayoutItem instead of View.
3442 // If View stores the Margin too then the Legacy Size Negotiation will
3443 // overwrite the position and size values measured in the Layouting.
3444 Layout.Margin = value;
3445 SetValue(MarginProperty, new Extents(0,0,0,0));
3446 _layout?.RequestLayout();
3450 SetValue(MarginProperty, value);
3452 NotifyPropertyChanged();
3453 _layout?.RequestLayout();
3458 /// The required policy for this dimension, LayoutParamPolicies enum or exact value.
3460 /// <since_tizen> 6 </since_tizen>
3461 public int WidthSpecification
3465 return _widthPolicy;
3469 _widthPolicy = value;
3470 if (_widthPolicy >= 0)
3472 _measureSpecificationWidth = new MeasureSpecification( new LayoutLength(value), MeasureSpecification.ModeType.Exactly );
3473 //Tizen.NUI.Object.SetProperty(swigCPtr, View.Property.SIZE_WIDTH, new Tizen.NUI.PropertyValue(value));
3474 Size2D.Width = _widthPolicy;
3476 _layout?.RequestLayout();
3481 /// The required policy for this dimension, LayoutParamPolicies enum or exact value.
3483 /// <since_tizen> 6 </since_tizen>
3484 [EditorBrowsable(EditorBrowsableState.Never)]
3485 public int HeightSpecification
3489 return _heightPolicy;
3493 _heightPolicy = value;
3494 if (_heightPolicy >= 0)
3496 _measureSpecificationHeight = new MeasureSpecification( new LayoutLength(value), MeasureSpecification.ModeType.Exactly );
3497 //Tizen.NUI.Object.SetProperty(swigCPtr, View.Property.SIZE_HEIGHT, new Tizen.NUI.PropertyValue(value));
3498 Size2D.Height = _heightPolicy;
3500 _layout?.RequestLayout();
3505 /// Gets the List of transitions for this View.
3507 /// <since_tizen> 6 </since_tizen>
3508 public Dictionary<TransitionCondition, TransitionList> LayoutTransitions
3512 if (_layoutTransitions == null)
3514 _layoutTransitions = new Dictionary<TransitionCondition, TransitionList>();
3516 return _layoutTransitions;
3521 /// Set a layout transitions for this View.
3524 /// Use LayoutTransitions to receive a collection of LayoutTransitions set on the View.
3526 /// <since_tizen> 6 </since_tizen>
3527 public LayoutTransition LayoutTransition
3531 if (_layoutTransitions == null)
3533 _layoutTransitions = new Dictionary<TransitionCondition, TransitionList>();
3535 LayoutTransitionsHelper.AddTransitionForCondition(_layoutTransitions,value.Condition,value, true);
3537 AttachTransitionsToChildren(value);
3542 /// Deprecated in API5; Will be removed in API8. Please use Padding instead.
3544 /// <since_tizen> 4 </since_tizen>
3545 [Obsolete("Deprecated in API5; Will be removed in API8. Please use Padding instead.")]
3546 [EditorBrowsable(EditorBrowsableState.Never)]
3547 public Extents PaddingEX
3551 Extents temp = new Extents(0, 0, 0, 0);
3552 GetProperty(View.Property.PADDING).Get(temp);
3557 SetProperty(View.Property.PADDING, new Tizen.NUI.PropertyValue(value));
3558 NotifyPropertyChanged();
3559 _layout?.RequestLayout();
3563 /// <since_tizen> 6 </since_tizen>
3564 /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
3565 [EditorBrowsable(EditorBrowsableState.Never)]
3566 public Style XamlStyle
3570 return (Style)GetValue(XamlStyleProperty);
3574 SetValue(XamlStyleProperty, value);
3579 /// The Color of View. This is an RGBA value.
3581 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
3582 [EditorBrowsable(EditorBrowsableState.Never)]
3591 return GetCurrentColor();
3597 /// Set the layout on this View. Replaces any existing Layout.
3599 /// <since_tizen> 6 </since_tizen>
3600 public LayoutItem Layout
3608 // Do nothing if layout provided is already set on this View.
3609 if (value == _layout)
3614 Log.Info("NUI", "Setting Layout on:" + Name + "\n");
3615 layoutingDisabled = false;
3618 // If new layout being set already has a owner then that owner receives a replacement default layout.
3619 // First check if the layout to be set already has a owner.
3620 if (value?.Owner != null)
3622 // Previous owner of the layout gets a default layout as a replacement.
3623 value.Owner.Layout = new LayoutGroup();
3625 // Copy Margin and Padding to replacement LayoutGroup.
3626 value.Owner.Layout.Margin = value.Margin;
3627 value.Owner.Layout.Padding = value.Padding;
3630 // Copy Margin and Padding to new layout being set or restore padding and margin back to
3631 // View if no replacement. Previously margin and padding values would have been moved from
3632 // the View to the layout.
3633 if (_layout != null ) // Existing layout
3637 // Existing layout being replaced so copy over margin and padding values.
3638 value.Margin = _layout.Margin;
3639 value.Padding = _layout.Padding;
3643 // Layout not being replaced so restore margin and padding to View.
3644 SetValue(MarginProperty, _layout.Margin);
3645 SetValue(PaddingProperty, _layout.Padding);
3646 NotifyPropertyChanged();
3651 // First Layout to be added to the View hence copy
3653 // Do not try to set Margins or Padding on a null Layout (when a layout is being removed from a View)
3656 if (Margin.Top != 0 || Margin.Bottom !=0 || Margin.Start !=0 || Margin.End != 0)
3658 // If View already has a margin set then store it in Layout instead.
3659 value.Margin = Margin;
3660 SetValue(MarginProperty, new Extents(0,0,0,0));
3661 NotifyPropertyChanged();
3664 if (Padding.Top != 0 || Padding.Bottom !=0 || Padding.Start !=0 || Padding.End != 0)
3666 // If View already has a padding set then store it in Layout instead.
3667 value.Padding = Padding;
3668 SetValue(PaddingProperty, new Extents(0,0,0,0));
3669 NotifyPropertyChanged();
3674 // Remove existing layout from it's parent layout group.
3675 _layout?.Unparent();
3677 // Set layout to this view
3683 /// The weight of the View, used to share available space in a layout with siblings.
3685 /// <since_tizen> 6 </since_tizen>
3695 _layout?.RequestLayout();
3701 /// The color mode of View.
3702 /// This specifies whether the View uses its own color, or inherits its parent color.
3703 /// The default is ColorMode.UseOwnMultiplyParentColor.
3705 internal ColorMode ColorMode
3709 SetColorMode(value);
3713 return GetColorMode();
3718 /// Whether to load the BackgroundImage synchronously.
3719 /// If not specified, the default is false, i.e. the BackgroundImage is loaded asynchronously.
3720 /// Note: For Normal Quad images only.
3722 /// This will be public opened in tizen_5.5 after ACR done. Before ACR, need to be hidden as inhouse API.
3723 [EditorBrowsable(EditorBrowsableState.Never)]
3724 public bool BackgroundImageSynchronosLoading
3728 return _backgroundImageSynchronosLoading;
3732 _backgroundImageSynchronosLoading = value;
3735 Background.Find(Visual.Property.Type)?.Get(out visualType);
3736 if (visualType == (int)Visual.Type.Image)
3738 Background.Find(ImageVisualProperty.URL)?.Get(out bgUrl);
3741 if (bgUrl.Length != 0)
3743 PropertyMap bgMap = this.Background;
3744 bgMap.Add("synchronousLoading", new PropertyValue(_backgroundImageSynchronosLoading));
3751 internal float WorldPositionX
3756 GetProperty(View.Property.WORLD_POSITION_X).Get(out temp);
3761 internal float WorldPositionY
3766 GetProperty(View.Property.WORLD_POSITION_Y).Get(out temp);
3771 internal float WorldPositionZ
3776 GetProperty(View.Property.WORLD_POSITION_Z).Get(out temp);
3781 internal bool FocusState
3785 return IsKeyboardFocusable();
3789 SetKeyboardFocusable(value);
3793 internal void SetLayout(LayoutItem layout)
3796 _layout?.AttachToOwner(this);
3797 _layout?.RequestLayout();
3801 /// Stores the calculated width value and its ModeType. Width component.
3803 internal MeasureSpecification MeasureSpecificationWidth
3807 _measureSpecificationWidth = value;
3808 _layout?.RequestLayout();
3812 return _measureSpecificationWidth;
3817 /// Stores the calculated width value and its ModeType. Height component.
3819 internal MeasureSpecification MeasureSpecificationHeight
3823 _measureSpecificationHeight = value;
3824 _layout?.RequestLayout();
3828 return _measureSpecificationHeight;
3832 internal void AttachTransitionsToChildren(LayoutTransition transition)
3834 // Iterate children, adding the transition unless a transition
3835 // for the same condition and property has already been
3836 // explicitly added.
3837 foreach (View view in Children)
3839 LayoutTransitionsHelper.AddTransitionForCondition(view.LayoutTransitions,transition.Condition, transition, false);
3843 internal float ParentOriginX
3848 GetProperty(View.Property.PARENT_ORIGIN_X).Get(out temp);
3853 SetProperty(View.Property.PARENT_ORIGIN_X, new Tizen.NUI.PropertyValue(value));
3854 NotifyPropertyChanged();
3858 internal float ParentOriginY
3863 GetProperty(View.Property.PARENT_ORIGIN_Y).Get(out temp);
3868 SetProperty(View.Property.PARENT_ORIGIN_Y, new Tizen.NUI.PropertyValue(value));
3869 NotifyPropertyChanged();
3873 internal float ParentOriginZ
3878 GetProperty(View.Property.PARENT_ORIGIN_Z).Get(out temp);
3883 SetProperty(View.Property.PARENT_ORIGIN_Z, new Tizen.NUI.PropertyValue(value));
3884 NotifyPropertyChanged();
3888 internal float PivotPointX
3893 GetProperty(View.Property.ANCHOR_POINT_X).Get(out temp);
3898 SetProperty(View.Property.ANCHOR_POINT_X, new Tizen.NUI.PropertyValue(value));
3902 internal float PivotPointY
3907 GetProperty(View.Property.ANCHOR_POINT_Y).Get(out temp);
3912 SetProperty(View.Property.ANCHOR_POINT_Y, new Tizen.NUI.PropertyValue(value));
3916 internal float PivotPointZ
3921 GetProperty(View.Property.ANCHOR_POINT_Z).Get(out temp);
3926 SetProperty(View.Property.ANCHOR_POINT_Z, new Tizen.NUI.PropertyValue(value));
3930 internal Matrix WorldMatrix
3934 Matrix temp = new Matrix();
3935 GetProperty(View.Property.WORLD_MATRIX).Get(temp);
3940 private int LeftFocusableViewId
3945 GetProperty(View.Property.LEFT_FOCUSABLE_VIEW_ID).Get(out temp);
3950 SetProperty(View.Property.LEFT_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
3954 private int RightFocusableViewId
3959 GetProperty(View.Property.RIGHT_FOCUSABLE_VIEW_ID).Get(out temp);
3964 SetProperty(View.Property.RIGHT_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
3968 private int UpFocusableViewId
3973 GetProperty(View.Property.UP_FOCUSABLE_VIEW_ID).Get(out temp);
3978 SetProperty(View.Property.UP_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
3982 private int DownFocusableViewId
3987 GetProperty(View.Property.DOWN_FOCUSABLE_VIEW_ID).Get(out temp);
3992 SetProperty(View.Property.DOWN_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
3997 /// Perform an action on a visual registered to this view. <br />
3998 /// Visuals will have actions. This API is used to perform one of these actions with the given attributes.
4000 /// <param name="propertyIndexOfVisual">The Property index of the visual.</param>
4001 /// <param name="propertyIndexOfActionId">The action to perform. See Visual to find the supported actions.</param>
4002 /// <param name="attributes">Optional attributes for the action.</param>
4003 /// <since_tizen> 5 </since_tizen>
4004 public void DoAction(int propertyIndexOfVisual, int propertyIndexOfActionId, PropertyValue attributes)
4006 Interop.View.View_DoAction(swigCPtr, propertyIndexOfVisual, propertyIndexOfActionId, PropertyValue.getCPtr(attributes));
4007 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4011 /// Creates an animation to animate the background color visual. If there is no
4012 /// background visual, creates one with transparent black as it's mixColor.
4014 /// <since_tizen> 3 </since_tizen>
4015 public Animation AnimateBackgroundColor(object destinationValue,
4018 AlphaFunction.BuiltinFunctions? alphaFunction = null,
4019 object initialValue = null)
4021 Tizen.NUI.PropertyMap background = Background;
4023 if (background.Empty())
4025 // If there is no background yet, ensure there is a transparent
4027 BackgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f);
4028 background = Background;
4030 return AnimateColor("background", destinationValue, startTime, endTime, alphaFunction, initialValue);
4034 /// Creates an animation to animate the mixColor of the named visual.
4036 /// <since_tizen> 3 </since_tizen>
4037 public Animation AnimateColor(string targetVisual, object destinationColor, int startTime, int endTime, AlphaFunction.BuiltinFunctions? alphaFunction = null, object initialColor = null)
4039 Animation animation = null;
4041 PropertyMap _animator = new PropertyMap();
4042 if (alphaFunction != null)
4044 _animator.Add("alphaFunction", new PropertyValue(AlphaFunction.BuiltinToPropertyKey(alphaFunction)));
4047 PropertyMap _timePeriod = new PropertyMap();
4048 _timePeriod.Add("duration", new PropertyValue((endTime - startTime) / 1000.0f));
4049 _timePeriod.Add("delay", new PropertyValue(startTime / 1000.0f));
4050 _animator.Add("timePeriod", new PropertyValue(_timePeriod));
4052 PropertyMap _transition = new PropertyMap();
4053 _transition.Add("animator", new PropertyValue(_animator));
4054 _transition.Add("target", new PropertyValue(targetVisual));
4055 _transition.Add("property", new PropertyValue("mixColor"));
4057 if (initialColor != null)
4059 PropertyValue initValue = PropertyValue.CreateFromObject(initialColor);
4060 _transition.Add("initialValue", initValue);
4063 PropertyValue destValue = PropertyValue.CreateFromObject(destinationColor);
4064 _transition.Add("targetValue", destValue);
4065 TransitionData _transitionData = new TransitionData(_transition);
4067 animation = new Animation(Interop.View.View_CreateTransition(swigCPtr, TransitionData.getCPtr(_transitionData)), true);
4068 if (NDalicPINVOKE.SWIGPendingException.Pending)
4069 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4074 // From Container Base class
4076 /// Adds a child view to this view.
4078 /// <seealso cref="Container.Add" />
4079 /// <since_tizen> 4 </since_tizen>
4080 public override void Add(View child)
4082 bool hasLayout = (_layout != null);
4086 Tizen.Log.Fatal("NUI", "Child is null");
4090 Container oldParent = child.GetParent();
4091 if (oldParent != this)
4093 // If child already has a parent then re-parent child
4094 if (oldParent != null)
4096 oldParent.Remove(child);
4098 child.InternalParent = this;
4100 Interop.Actor.Actor_Add(swigCPtr, View.getCPtr(child));
4102 if (NDalicPINVOKE.SWIGPendingException.Pending)
4103 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4104 Children.Add(child);
4106 if (ChildAdded != null)
4108 ChildAddedEventArgs e = new ChildAddedEventArgs
4112 ChildAdded(this, e);
4114 BindableObject.SetInheritedBindingContext(child, this?.BindingContext);
4119 /// Removes a child view from this View. If the view was not a child of this view, this is a no-op.
4121 /// <seealso cref="Container.Remove" />
4122 /// <since_tizen> 4 </since_tizen>
4123 public override void Remove(View child)
4125 if (!child || child.GetParent()==null) // Early out if child null.
4128 bool hasLayout = (_layout != null);
4130 // If View has a layout then do a deferred child removal
4131 // Actual child removal is performed by the layouting system so
4132 // transitions can be completed.
4135 (_layout as LayoutGroup)?.RemoveChildFromLayoutGroup( child );
4144 /// Retrieves a child view by index.
4146 /// <seealso cref="Container.GetChildAt" />
4147 /// <since_tizen> 4 </since_tizen>
4148 public override View GetChildAt(uint index)
4150 if (index < Children.Count)
4152 return Children[Convert.ToInt32(index)];
4161 /// Retrieves the number of children held by the view.
4163 /// <seealso cref="Container.GetChildCount" />
4164 /// <since_tizen> 4 </since_tizen>
4165 public override uint GetChildCount()
4167 return Convert.ToUInt32(Children.Count);
4171 /// Gets the views parent.
4173 /// <seealso cref="Container.GetParent()" />
4174 /// <since_tizen> 4 </since_tizen>
4175 public override Container GetParent()
4177 return this.InternalParent as Container;
4181 /// Queries whether the view has a focus.
4183 /// <returns>True if this view has a focus.</returns>
4184 /// <since_tizen> 3 </since_tizen>
4185 public bool HasFocus()
4188 if (swigCPtr.Handle != global::System.IntPtr.Zero)
4190 ret = Interop.View.View_HasKeyInputFocus(swigCPtr);
4191 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4195 Tizen.Log.Error("NUI", "swigCPtr of view is aleady disposed.");
4201 /// Sets the name of the style to be applied to the view.
4203 /// <param name="styleName">A string matching a style described in a stylesheet.</param>
4204 /// <since_tizen> 3 </since_tizen>
4205 public void SetStyleName(string styleName)
4207 Interop.View.View_SetStyleName(swigCPtr, styleName);
4208 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4212 /// Retrieves the name of the style to be applied to the view (if any).
4214 /// <returns>A string matching a style, or an empty string.</returns>
4215 /// <since_tizen> 3 </since_tizen>
4216 public string GetStyleName()
4218 string ret = Interop.View.View_GetStyleName(swigCPtr);
4219 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4224 /// Clears the background.
4226 /// <since_tizen> 3 </since_tizen>
4227 public void ClearBackground()
4229 Interop.View.View_ClearBackground(swigCPtr);
4230 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4237 /// This is an asynchronous method.
4239 /// <since_tizen> 3 </since_tizen>
4249 /// This is an asynchronous method.
4250 /// If the view is hidden, then the view and its children will not be rendered.
4251 /// 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.
4253 /// <since_tizen> 3 </since_tizen>
4260 /// Raises the view above all other views.
4263 /// Sibling order of views within the parent will be updated automatically.
4264 /// Once a raise or lower API is used, that view will then have an exclusive sibling order independent of insertion.
4266 /// <since_tizen> 3 </since_tizen>
4267 public void RaiseToTop()
4269 var parentChildren = GetParent()?.Children;
4271 if (parentChildren != null)
4273 parentChildren.Remove(this);
4274 parentChildren.Add(this);
4276 Interop.NDalic.RaiseToTop(swigCPtr);
4277 if (NDalicPINVOKE.SWIGPendingException.Pending)
4278 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4284 /// Lowers the view to the bottom of all views.
4287 /// The sibling order of views within the parent will be updated automatically.
4288 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
4290 /// <since_tizen> 3 </since_tizen>
4291 public void LowerToBottom()
4293 var parentChildren = GetParent()?.Children;
4295 if (parentChildren != null)
4297 parentChildren.Remove(this);
4298 parentChildren.Insert(0, this);
4300 Interop.NDalic.LowerToBottom(swigCPtr);
4301 if (NDalicPINVOKE.SWIGPendingException.Pending)
4302 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4307 /// Queries if all resources required by a view are loaded and ready.
4309 /// <remarks>Most resources are only loaded when the control is placed on the stage.
4311 /// <since_tizen> 3 </since_tizen>
4312 public bool IsResourceReady()
4314 bool ret = Interop.View.IsResourceReady(swigCPtr);
4315 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4320 /// Gets the parent layer of this view.If a view has no parent, this method does not do anything.
4322 /// <pre>The view has been initialized. </pre>
4323 /// <returns>The parent layer of view </returns>
4324 /// <since_tizen> 5 </since_tizen>
4325 public Layer GetLayer()
4327 //to fix memory leak issue, match the handle count with native side.
4328 IntPtr cPtr = Interop.Actor.Actor_GetLayer(swigCPtr);
4329 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
4330 Layer ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as Layer;
4331 Interop.BaseHandle.delete_BaseHandle(CPtr);
4332 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
4334 if (NDalicPINVOKE.SWIGPendingException.Pending)
4335 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4340 /// Removes a view from its parent view or layer. If a view has no parent, this method does nothing.
4342 /// <pre>The (child) view has been initialized. </pre>
4343 /// <since_tizen> 4 </since_tizen>
4344 public void Unparent()
4346 GetParent()?.Remove(this);
4350 /// Search through this view's hierarchy for a view with the given name.
4351 /// The view itself is also considered in the search.
4353 /// <pre>The view has been initialized.</pre>
4354 /// <param name="viewName">The name of the view to find.</param>
4355 /// <returns>A handle to the view if found, or an empty handle if not.</returns>
4356 /// <since_tizen> 3 </since_tizen>
4357 public View FindChildByName(string viewName)
4359 //to fix memory leak issue, match the handle count with native side.
4360 IntPtr cPtr = Interop.Actor.Actor_FindChildByName(swigCPtr, viewName);
4361 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
4362 View ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as View;
4363 Interop.BaseHandle.delete_BaseHandle(CPtr);
4364 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
4366 if (NDalicPINVOKE.SWIGPendingException.Pending)
4367 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4372 /// Converts screen coordinates into the view's coordinate system using the default camera.
4374 /// <pre>The view has been initialized.</pre>
4375 /// <remarks>The view coordinates are relative to the top-left(0.0, 0.0, 0.5).</remarks>
4376 /// <param name="localX">On return, the X-coordinate relative to the view.</param>
4377 /// <param name="localY">On return, the Y-coordinate relative to the view.</param>
4378 /// <param name="screenX">The screen X-coordinate.</param>
4379 /// <param name="screenY">The screen Y-coordinate.</param>
4380 /// <returns>True if the conversion succeeded.</returns>
4381 /// <since_tizen> 3 </since_tizen>
4382 public bool ScreenToLocal(out float localX, out float localY, float screenX, float screenY)
4384 bool ret = Interop.Actor.Actor_ScreenToLocal(swigCPtr, out localX, out localY, screenX, screenY);
4385 if (NDalicPINVOKE.SWIGPendingException.Pending)
4386 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4391 /// Sets the relative to parent size factor of the view.<br />
4392 /// This factor is only used when ResizePolicy is set to either:
4393 /// ResizePolicy::SIZE_RELATIVE_TO_PARENT or ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT.<br />
4394 /// This view's size is set to the view's size multiplied by or added to this factor, depending on ResizePolicy.<br />
4396 /// <pre>The view has been initialized.</pre>
4397 /// <param name="factor">A Vector3 representing the relative factor to be applied to each axis.</param>
4398 /// <since_tizen> 3 </since_tizen>
4399 public void SetSizeModeFactor(Vector3 factor)
4401 Interop.Actor.Actor_SetSizeModeFactor(swigCPtr, Vector3.getCPtr(factor));
4402 if (NDalicPINVOKE.SWIGPendingException.Pending)
4403 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4406 /// Calculates the height of the view given a width.<br />
4407 /// The natural size is used for default calculation.<br />
4408 /// Size 0 is treated as aspect ratio 1:1.<br />
4410 /// <param name="width">The width to use.</param>
4411 /// <returns>The height based on the width.</returns>
4412 /// <since_tizen> 3 </since_tizen>
4413 public float GetHeightForWidth(float width)
4415 float ret = Interop.Actor.Actor_GetHeightForWidth(swigCPtr, width);
4416 if (NDalicPINVOKE.SWIGPendingException.Pending)
4417 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4422 /// Calculates the width of the view given a height.<br />
4423 /// The natural size is used for default calculation.<br />
4424 /// Size 0 is treated as aspect ratio 1:1.<br />
4426 /// <param name="height">The height to use.</param>
4427 /// <returns>The width based on the height.</returns>
4428 /// <since_tizen> 3 </since_tizen>
4429 public float GetWidthForHeight(float height)
4431 float ret = Interop.Actor.Actor_GetWidthForHeight(swigCPtr, height);
4432 if (NDalicPINVOKE.SWIGPendingException.Pending)
4433 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4438 /// Return the amount of size allocated for relayout.
4440 /// <param name="dimension">The dimension to retrieve.</param>
4441 /// <returns>Return the size.</returns>
4442 /// <since_tizen> 3 </since_tizen>
4443 public float GetRelayoutSize(DimensionType dimension)
4445 float ret = Interop.Actor.Actor_GetRelayoutSize(swigCPtr, (int)dimension);
4446 if (NDalicPINVOKE.SWIGPendingException.Pending)
4447 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4452 /// Set the padding for the view.
4454 /// <param name="padding">Padding for the view.</param>
4455 /// <since_tizen> 3 </since_tizen>
4456 public void SetPadding(PaddingType padding)
4458 Interop.Actor.Actor_SetPadding(swigCPtr, PaddingType.getCPtr(padding));
4459 if (NDalicPINVOKE.SWIGPendingException.Pending)
4460 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4464 /// Return the value of padding for the view.
4466 /// <param name="paddingOut">the value of padding for the view</param>
4467 /// <since_tizen> 3 </since_tizen>
4468 public void GetPadding(PaddingType paddingOut)
4470 Interop.Actor.Actor_GetPadding(swigCPtr, PaddingType.getCPtr(paddingOut));
4471 if (NDalicPINVOKE.SWIGPendingException.Pending)
4472 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4475 /// <since_tizen> 3 </since_tizen>
4476 public uint AddRenderer(Renderer renderer)
4478 uint ret = Interop.Actor.Actor_AddRenderer(swigCPtr, Renderer.getCPtr(renderer));
4479 if (NDalicPINVOKE.SWIGPendingException.Pending)
4480 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4484 /// <since_tizen> 3 </since_tizen>
4485 public Renderer GetRendererAt(uint index)
4487 //to fix memory leak issue, match the handle count with native side.
4488 IntPtr cPtr = Interop.Actor.Actor_GetRendererAt(swigCPtr, index);
4489 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
4490 Renderer ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as Renderer;
4491 if (cPtr != null && ret == null)
4493 ret = new Renderer(cPtr, false);
4494 if (NDalicPINVOKE.SWIGPendingException.Pending)
4495 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4498 Interop.BaseHandle.delete_BaseHandle(CPtr);
4499 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
4501 if (NDalicPINVOKE.SWIGPendingException.Pending)
4502 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4506 /// <since_tizen> 3 </since_tizen>
4507 public void RemoveRenderer(Renderer renderer)
4509 Interop.Actor.Actor_RemoveRenderer__SWIG_0(swigCPtr, Renderer.getCPtr(renderer));
4510 if (NDalicPINVOKE.SWIGPendingException.Pending)
4511 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4514 /// <since_tizen> 3 </since_tizen>
4515 public void RemoveRenderer(uint index)
4517 Interop.Actor.Actor_RemoveRenderer__SWIG_1(swigCPtr, index);
4518 if (NDalicPINVOKE.SWIGPendingException.Pending)
4519 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4522 internal void Raise()
4524 var parentChildren = GetParent()?.Children;
4526 if (parentChildren != null)
4528 int currentIndex = parentChildren.IndexOf(this);
4530 // If the view is not already the last item in the list.
4531 if (currentIndex >= 0 && currentIndex < parentChildren.Count - 1)
4533 View temp = parentChildren[currentIndex + 1];
4534 parentChildren[currentIndex + 1] = this;
4535 parentChildren[currentIndex] = temp;
4537 Interop.NDalic.Raise(swigCPtr);
4538 if (NDalicPINVOKE.SWIGPendingException.Pending)
4539 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4544 internal void Lower()
4546 var parentChildren = GetParent()?.Children;
4548 if (parentChildren != null)
4550 int currentIndex = parentChildren.IndexOf(this);
4552 // If the view is not already the first item in the list.
4553 if (currentIndex > 0 && currentIndex < parentChildren.Count)
4555 View temp = parentChildren[currentIndex - 1];
4556 parentChildren[currentIndex - 1] = this;
4557 parentChildren[currentIndex] = temp;
4559 Interop.NDalic.Lower(swigCPtr);
4560 if (NDalicPINVOKE.SWIGPendingException.Pending)
4561 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4567 /// Raises the view to above the target view.
4569 /// <remarks>The sibling order of views within the parent will be updated automatically.
4570 /// Views on the level above the target view will still be shown above this view.
4571 /// Raising this view above views with the same sibling order as each other will raise this view above them.
4572 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
4574 /// <param name="target">Will be raised above this view.</param>
4575 internal void RaiseAbove(View target)
4577 var parentChildren = GetParent()?.Children;
4579 if (parentChildren != null)
4581 int currentIndex = parentChildren.IndexOf(this);
4582 int targetIndex = parentChildren.IndexOf(target);
4584 if (currentIndex < 0 || targetIndex < 0 ||
4585 currentIndex >= parentChildren.Count || targetIndex >= parentChildren.Count)
4587 NUILog.Error("index should be bigger than 0 and less than children of layer count");
4590 // If the currentIndex is less than the target index and the target has the same parent.
4591 if (currentIndex < targetIndex)
4593 parentChildren.Remove(this);
4594 parentChildren.Insert(targetIndex, this);
4596 Interop.NDalic.RaiseAbove(swigCPtr, View.getCPtr(target));
4597 if (NDalicPINVOKE.SWIGPendingException.Pending)
4598 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4605 /// Lowers the view to below the target view.
4607 /// <remarks>The sibling order of views within the parent will be updated automatically.
4608 /// Lowering this view below views with the same sibling order as each other will lower this view above them.
4609 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
4611 /// <param name="target">Will be lowered below this view.</param>
4612 internal void LowerBelow(View target)
4614 var parentChildren = GetParent()?.Children;
4616 if (parentChildren != null)
4618 int currentIndex = parentChildren.IndexOf(this);
4619 int targetIndex = parentChildren.IndexOf(target);
4620 if (currentIndex < 0 || targetIndex < 0 ||
4621 currentIndex >= parentChildren.Count || targetIndex >= parentChildren.Count)
4623 NUILog.Error("index should be bigger than 0 and less than children of layer count");
4627 // If the currentIndex is not already the 0th index and the target has the same parent.
4628 if ((currentIndex != 0) && (targetIndex != -1) &&
4629 (currentIndex > targetIndex))
4631 parentChildren.Remove(this);
4632 parentChildren.Insert(targetIndex, this);
4634 Interop.NDalic.LowerBelow(swigCPtr, View.getCPtr(target));
4635 if (NDalicPINVOKE.SWIGPendingException.Pending)
4636 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4642 internal string GetName()
4644 string ret = Interop.Actor.Actor_GetName(swigCPtr);
4645 if (NDalicPINVOKE.SWIGPendingException.Pending)
4646 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4650 internal void SetName(string name)
4652 Interop.Actor.Actor_SetName(swigCPtr, name);
4653 if (NDalicPINVOKE.SWIGPendingException.Pending)
4654 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4657 internal uint GetId()
4659 uint ret = Interop.Actor.Actor_GetId(swigCPtr);
4660 if (NDalicPINVOKE.SWIGPendingException.Pending)
4661 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4665 internal bool IsRoot()
4667 bool ret = Interop.ActorInternal.Actor_IsRoot(swigCPtr);
4668 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4672 internal bool OnWindow()
4674 bool ret = Interop.Actor.Actor_OnStage(swigCPtr);
4675 if (NDalicPINVOKE.SWIGPendingException.Pending)
4676 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4680 internal View FindChildById(uint id)
4682 //to fix memory leak issue, match the handle count with native side.
4683 IntPtr cPtr = Interop.Actor.Actor_FindChildById(swigCPtr, id);
4684 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
4685 View ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as View;
4686 Interop.BaseHandle.delete_BaseHandle(CPtr);
4687 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
4689 if (NDalicPINVOKE.SWIGPendingException.Pending)
4690 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4694 internal override View FindCurrentChildById(uint id)
4696 return FindChildById(id);
4699 internal void SetParentOrigin(Vector3 origin)
4701 Interop.ActorInternal.Actor_SetParentOrigin(swigCPtr, Vector3.getCPtr(origin));
4702 if (NDalicPINVOKE.SWIGPendingException.Pending)
4703 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4706 internal Vector3 GetCurrentParentOrigin()
4708 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetCurrentParentOrigin(swigCPtr), true);
4709 if (NDalicPINVOKE.SWIGPendingException.Pending)
4710 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4714 internal void SetAnchorPoint(Vector3 anchorPoint)
4716 Interop.Actor.Actor_SetAnchorPoint(swigCPtr, Vector3.getCPtr(anchorPoint));
4717 if (NDalicPINVOKE.SWIGPendingException.Pending)
4718 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4721 internal Vector3 GetCurrentAnchorPoint()
4723 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetCurrentAnchorPoint(swigCPtr), true);
4724 if (NDalicPINVOKE.SWIGPendingException.Pending)
4725 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4729 internal void SetSize(float width, float height)
4731 Interop.ActorInternal.Actor_SetSize__SWIG_0(swigCPtr, width, height);
4732 if (NDalicPINVOKE.SWIGPendingException.Pending)
4733 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4736 internal void SetSize(float width, float height, float depth)
4738 Interop.ActorInternal.Actor_SetSize__SWIG_1(swigCPtr, width, height, depth);
4739 if (NDalicPINVOKE.SWIGPendingException.Pending)
4740 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4743 internal void SetSize(Vector2 size)
4745 Interop.ActorInternal.Actor_SetSize__SWIG_2(swigCPtr, Vector2.getCPtr(size));
4746 if (NDalicPINVOKE.SWIGPendingException.Pending)
4747 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4750 internal void SetSize(Vector3 size)
4752 Interop.ActorInternal.Actor_SetSize__SWIG_3(swigCPtr, Vector3.getCPtr(size));
4753 if (NDalicPINVOKE.SWIGPendingException.Pending)
4754 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4757 internal Vector3 GetTargetSize()
4759 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetTargetSize(swigCPtr), true);
4760 if (NDalicPINVOKE.SWIGPendingException.Pending)
4761 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4765 internal Size2D GetCurrentSize()
4767 Size ret = new Size(Interop.Actor.Actor_GetCurrentSize(swigCPtr), true);
4768 if (NDalicPINVOKE.SWIGPendingException.Pending)
4769 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4770 Size2D size = new Size2D((int)ret.Width, (int)ret.Height);
4774 internal Vector3 GetNaturalSize()
4776 Vector3 ret = new Vector3(Interop.Actor.Actor_GetNaturalSize(swigCPtr), true);
4777 if (NDalicPINVOKE.SWIGPendingException.Pending)
4778 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4782 internal void SetPosition(float x, float y)
4784 Interop.ActorInternal.Actor_SetPosition__SWIG_0(swigCPtr, x, y);
4785 if (NDalicPINVOKE.SWIGPendingException.Pending)
4786 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4789 internal void SetPosition(float x, float y, float z)
4791 Interop.ActorInternal.Actor_SetPosition__SWIG_1(swigCPtr, x, y, z);
4792 if (NDalicPINVOKE.SWIGPendingException.Pending)
4793 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4796 internal void SetPosition(Vector3 position)
4798 Interop.ActorInternal.Actor_SetPosition__SWIG_2(swigCPtr, Vector3.getCPtr(position));
4799 if (NDalicPINVOKE.SWIGPendingException.Pending)
4800 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4803 internal void SetX(float x)
4805 Interop.ActorInternal.Actor_SetX(swigCPtr, x);
4806 if (NDalicPINVOKE.SWIGPendingException.Pending)
4807 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4810 internal void SetY(float y)
4812 Interop.ActorInternal.Actor_SetY(swigCPtr, y);
4813 if (NDalicPINVOKE.SWIGPendingException.Pending)
4814 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4817 internal void SetZ(float z)
4819 Interop.ActorInternal.Actor_SetZ(swigCPtr, z);
4820 if (NDalicPINVOKE.SWIGPendingException.Pending)
4821 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4824 internal void TranslateBy(Vector3 distance)
4826 Interop.ActorInternal.Actor_TranslateBy(swigCPtr, Vector3.getCPtr(distance));
4827 if (NDalicPINVOKE.SWIGPendingException.Pending)
4828 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4831 internal Position GetCurrentPosition()
4833 Position ret = new Position(Interop.Actor.Actor_GetCurrentPosition(swigCPtr), true);
4834 if (NDalicPINVOKE.SWIGPendingException.Pending)
4835 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4839 internal Vector3 GetCurrentWorldPosition()
4841 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetCurrentWorldPosition(swigCPtr), true);
4842 if (NDalicPINVOKE.SWIGPendingException.Pending)
4843 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4847 internal void SetInheritPosition(bool inherit)
4849 Interop.ActorInternal.Actor_SetInheritPosition(swigCPtr, inherit);
4850 if (NDalicPINVOKE.SWIGPendingException.Pending)
4851 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4854 internal bool IsPositionInherited()
4856 bool ret = Interop.ActorInternal.Actor_IsPositionInherited(swigCPtr);
4857 if (NDalicPINVOKE.SWIGPendingException.Pending)
4858 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4862 internal void SetOrientation(Degree angle, Vector3 axis)
4864 Interop.ActorInternal.Actor_SetOrientation__SWIG_0(swigCPtr, Degree.getCPtr(angle), Vector3.getCPtr(axis));
4865 if (NDalicPINVOKE.SWIGPendingException.Pending)
4866 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4869 internal void SetOrientation(Radian angle, Vector3 axis)
4871 Interop.ActorInternal.Actor_SetOrientation__SWIG_1(swigCPtr, Radian.getCPtr(angle), Vector3.getCPtr(axis));
4872 if (NDalicPINVOKE.SWIGPendingException.Pending)
4873 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4876 internal void SetOrientation(Rotation orientation)
4878 Interop.ActorInternal.Actor_SetOrientation__SWIG_2(swigCPtr, Rotation.getCPtr(orientation));
4879 if (NDalicPINVOKE.SWIGPendingException.Pending)
4880 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4883 /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API.
4884 [EditorBrowsable(EditorBrowsableState.Never)]
4885 public void RotateBy(Degree angle, Vector3 axis)
4887 Interop.ActorInternal.Actor_RotateBy__SWIG_0(swigCPtr, Degree.getCPtr(angle), Vector3.getCPtr(axis));
4888 if (NDalicPINVOKE.SWIGPendingException.Pending)
4889 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4892 /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API.
4893 [EditorBrowsable(EditorBrowsableState.Never)]
4894 public void RotateBy(Radian angle, Vector3 axis)
4896 Interop.ActorInternal.Actor_RotateBy__SWIG_1(swigCPtr, Radian.getCPtr(angle), Vector3.getCPtr(axis));
4897 if (NDalicPINVOKE.SWIGPendingException.Pending)
4898 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4901 /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API.
4902 [EditorBrowsable(EditorBrowsableState.Never)]
4903 public void RotateBy(Rotation relativeRotation)
4905 Interop.ActorInternal.Actor_RotateBy__SWIG_2(swigCPtr, Rotation.getCPtr(relativeRotation));
4906 if (NDalicPINVOKE.SWIGPendingException.Pending)
4907 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4910 internal Rotation GetCurrentOrientation()
4912 Rotation ret = new Rotation(Interop.ActorInternal.Actor_GetCurrentOrientation(swigCPtr), true);
4913 if (NDalicPINVOKE.SWIGPendingException.Pending)
4914 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4918 internal void SetInheritOrientation(bool inherit)
4920 Interop.ActorInternal.Actor_SetInheritOrientation(swigCPtr, inherit);
4921 if (NDalicPINVOKE.SWIGPendingException.Pending)
4922 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4925 internal bool IsOrientationInherited()
4927 bool ret = Interop.ActorInternal.Actor_IsOrientationInherited(swigCPtr);
4928 if (NDalicPINVOKE.SWIGPendingException.Pending)
4929 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4933 internal Rotation GetCurrentWorldOrientation()
4935 Rotation ret = new Rotation(Interop.ActorInternal.Actor_GetCurrentWorldOrientation(swigCPtr), true);
4936 if (NDalicPINVOKE.SWIGPendingException.Pending)
4937 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4941 internal void SetScale(float scale)
4943 Interop.ActorInternal.Actor_SetScale__SWIG_0(swigCPtr, scale);
4944 if (NDalicPINVOKE.SWIGPendingException.Pending)
4945 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4948 internal void SetScale(float scaleX, float scaleY, float scaleZ)
4950 Interop.ActorInternal.Actor_SetScale__SWIG_1(swigCPtr, scaleX, scaleY, scaleZ);
4951 if (NDalicPINVOKE.SWIGPendingException.Pending)
4952 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4955 internal void SetScale(Vector3 scale)
4957 Interop.ActorInternal.Actor_SetScale__SWIG_2(swigCPtr, Vector3.getCPtr(scale));
4958 if (NDalicPINVOKE.SWIGPendingException.Pending)
4959 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4962 internal void ScaleBy(Vector3 relativeScale)
4964 Interop.ActorInternal.Actor_ScaleBy(swigCPtr, Vector3.getCPtr(relativeScale));
4965 if (NDalicPINVOKE.SWIGPendingException.Pending)
4966 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4969 internal Vector3 GetCurrentScale()
4971 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetCurrentScale(swigCPtr), true);
4972 if (NDalicPINVOKE.SWIGPendingException.Pending)
4973 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4977 internal Vector3 GetCurrentWorldScale()
4979 Vector3 ret = new Vector3(Interop.ActorInternal.Actor_GetCurrentWorldScale(swigCPtr), true);
4980 if (NDalicPINVOKE.SWIGPendingException.Pending)
4981 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4985 internal void SetInheritScale(bool inherit)
4987 Interop.ActorInternal.Actor_SetInheritScale(swigCPtr, inherit);
4988 if (NDalicPINVOKE.SWIGPendingException.Pending)
4989 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4992 internal bool IsScaleInherited()
4994 bool ret = Interop.ActorInternal.Actor_IsScaleInherited(swigCPtr);
4995 if (NDalicPINVOKE.SWIGPendingException.Pending)
4996 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5000 internal Matrix GetCurrentWorldMatrix()
5002 Matrix ret = new Matrix(Interop.ActorInternal.Actor_GetCurrentWorldMatrix(swigCPtr), true);
5003 if (NDalicPINVOKE.SWIGPendingException.Pending)
5004 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5008 internal void SetVisible(bool visible)
5010 Interop.Actor.Actor_SetVisible(swigCPtr, visible);
5011 if (NDalicPINVOKE.SWIGPendingException.Pending)
5012 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5015 internal bool IsVisible()
5017 bool ret = Interop.ActorInternal.Actor_IsVisible(swigCPtr);
5018 if (NDalicPINVOKE.SWIGPendingException.Pending)
5019 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5023 internal void SetOpacity(float opacity)
5025 Interop.ActorInternal.Actor_SetOpacity(swigCPtr, opacity);
5026 if (NDalicPINVOKE.SWIGPendingException.Pending)
5027 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5030 internal float GetCurrentOpacity()
5032 float ret = Interop.ActorInternal.Actor_GetCurrentOpacity(swigCPtr);
5033 if (NDalicPINVOKE.SWIGPendingException.Pending)
5034 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5038 internal void SetColor(Vector4 color)
5040 Interop.ActorInternal.Actor_SetColor(swigCPtr, Vector4.getCPtr(color));
5041 if (NDalicPINVOKE.SWIGPendingException.Pending)
5042 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5045 internal Vector4 GetCurrentColor()
5047 Vector4 ret = new Vector4(Interop.ActorInternal.Actor_GetCurrentColor(swigCPtr), true);
5048 if (NDalicPINVOKE.SWIGPendingException.Pending)
5049 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5053 /// This will be public opened in next tizen after ACR done. Before ACR, need to be hidden as inhouse API.
5054 [EditorBrowsable(EditorBrowsableState.Never)]
5055 public void SetColorMode(ColorMode colorMode)
5057 Interop.ActorInternal.Actor_SetColorMode(swigCPtr, (int)colorMode);
5058 if (NDalicPINVOKE.SWIGPendingException.Pending)
5059 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5062 internal ColorMode GetColorMode()
5064 ColorMode ret = (ColorMode)Interop.ActorInternal.Actor_GetColorMode(swigCPtr);
5065 if (NDalicPINVOKE.SWIGPendingException.Pending)
5066 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5070 internal Vector4 GetCurrentWorldColor()
5072 Vector4 ret = new Vector4(Interop.ActorInternal.Actor_GetCurrentWorldColor(swigCPtr), true);
5073 if (NDalicPINVOKE.SWIGPendingException.Pending)
5074 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5078 internal void SetDrawMode(DrawModeType drawMode)
5080 Interop.ActorInternal.Actor_SetDrawMode(swigCPtr, (int)drawMode);
5081 if (NDalicPINVOKE.SWIGPendingException.Pending)
5082 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5085 internal DrawModeType GetDrawMode()
5087 DrawModeType ret = (DrawModeType)Interop.ActorInternal.Actor_GetDrawMode(swigCPtr);
5088 if (NDalicPINVOKE.SWIGPendingException.Pending)
5089 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5093 internal void SetKeyboardFocusable(bool focusable)
5095 Interop.ActorInternal.Actor_SetKeyboardFocusable(swigCPtr, focusable);
5096 if (NDalicPINVOKE.SWIGPendingException.Pending)
5097 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5100 internal bool IsKeyboardFocusable()
5102 bool ret = Interop.ActorInternal.Actor_IsKeyboardFocusable(swigCPtr);
5103 if (NDalicPINVOKE.SWIGPendingException.Pending)
5104 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5108 internal void SetResizePolicy(ResizePolicyType policy, DimensionType dimension)
5110 Interop.Actor.Actor_SetResizePolicy(swigCPtr, (int)policy, (int)dimension);
5111 if (NDalicPINVOKE.SWIGPendingException.Pending)
5112 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5115 internal ResizePolicyType GetResizePolicy(DimensionType dimension)
5117 ResizePolicyType ret = (ResizePolicyType)Interop.Actor.Actor_GetResizePolicy(swigCPtr, (int)dimension);
5118 if (NDalicPINVOKE.SWIGPendingException.Pending)
5119 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5123 internal Vector3 GetSizeModeFactor()
5125 Vector3 ret = new Vector3(Interop.Actor.Actor_GetSizeModeFactor(swigCPtr), true);
5126 if (NDalicPINVOKE.SWIGPendingException.Pending)
5127 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5131 internal void SetMinimumSize(Vector2 size)
5133 Interop.ActorInternal.Actor_SetMinimumSize(swigCPtr, Vector2.getCPtr(size));
5134 if (NDalicPINVOKE.SWIGPendingException.Pending)
5135 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5138 internal Vector2 GetMinimumSize()
5140 Vector2 ret = new Vector2(Interop.ActorInternal.Actor_GetMinimumSize(swigCPtr), true);
5141 if (NDalicPINVOKE.SWIGPendingException.Pending)
5142 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5146 internal void SetMaximumSize(Vector2 size)
5148 Interop.ActorInternal.Actor_SetMaximumSize(swigCPtr, Vector2.getCPtr(size));
5149 if (NDalicPINVOKE.SWIGPendingException.Pending)
5150 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5153 internal Vector2 GetMaximumSize()
5155 Vector2 ret = new Vector2(Interop.ActorInternal.Actor_GetMaximumSize(swigCPtr), true);
5156 if (NDalicPINVOKE.SWIGPendingException.Pending)
5157 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5161 internal int GetHierarchyDepth()
5163 int ret = Interop.Actor.Actor_GetHierarchyDepth(swigCPtr);
5164 if (NDalicPINVOKE.SWIGPendingException.Pending)
5165 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5169 internal uint GetRendererCount()
5171 uint ret = Interop.Actor.Actor_GetRendererCount(swigCPtr);
5172 if (NDalicPINVOKE.SWIGPendingException.Pending)
5173 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5177 internal TouchDataSignal TouchSignal()
5179 TouchDataSignal ret = new TouchDataSignal(Interop.ActorSignal.Actor_TouchSignal(swigCPtr), false);
5180 if (NDalicPINVOKE.SWIGPendingException.Pending)
5181 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5185 internal HoverSignal HoveredSignal()
5187 HoverSignal ret = new HoverSignal(Interop.ActorSignal.Actor_HoveredSignal(swigCPtr), false);
5188 if (NDalicPINVOKE.SWIGPendingException.Pending)
5189 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5193 internal WheelSignal WheelEventSignal()
5195 WheelSignal ret = new WheelSignal(Interop.ActorSignal.Actor_WheelEventSignal(swigCPtr), false);
5196 if (NDalicPINVOKE.SWIGPendingException.Pending)
5197 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5201 internal ViewSignal OnWindowSignal()
5203 ViewSignal ret = new ViewSignal(Interop.ActorSignal.Actor_OnStageSignal(swigCPtr), false);
5204 if (NDalicPINVOKE.SWIGPendingException.Pending)
5205 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5209 internal ViewSignal OffWindowSignal()
5211 ViewSignal ret = new ViewSignal(Interop.ActorSignal.Actor_OffStageSignal(swigCPtr), false);
5212 if (NDalicPINVOKE.SWIGPendingException.Pending)
5213 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5217 internal ViewSignal OnRelayoutSignal()
5219 ViewSignal ret = new ViewSignal(Interop.ActorSignal.Actor_OnRelayoutSignal(swigCPtr), false);
5220 if (NDalicPINVOKE.SWIGPendingException.Pending)
5221 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5225 internal ViewVisibilityChangedSignal VisibilityChangedSignal(View view)
5227 ViewVisibilityChangedSignal ret = new ViewVisibilityChangedSignal(Interop.NDalic.VisibilityChangedSignal(View.getCPtr(view)), false);
5228 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5232 internal ViewLayoutDirectionChangedSignal LayoutDirectionChangedSignal(View view)
5234 ViewLayoutDirectionChangedSignal ret = new ViewLayoutDirectionChangedSignal(Interop.Layout.LayoutDirectionChangedSignal(View.getCPtr(view)), false);
5235 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5239 internal ViewSignal ResourcesLoadedSignal()
5241 ViewSignal ret = new ViewSignal(Interop.View.ResourceReadySignal(swigCPtr), false);
5242 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5246 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(View obj)
5248 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
5251 internal bool IsTopLevelView()
5253 if (GetParent() is Layer)
5260 internal void SetKeyInputFocus()
5262 Interop.ViewInternal.View_SetKeyInputFocus(swigCPtr);
5263 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5266 internal void ClearKeyInputFocus()
5268 Interop.ViewInternal.View_ClearKeyInputFocus(swigCPtr);
5269 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5272 internal PinchGestureDetector GetPinchGestureDetector()
5274 PinchGestureDetector ret = new PinchGestureDetector(Interop.ViewInternal.View_GetPinchGestureDetector(swigCPtr), true);
5275 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5279 internal PanGestureDetector GetPanGestureDetector()
5281 PanGestureDetector ret = new PanGestureDetector(Interop.ViewInternal.View_GetPanGestureDetector(swigCPtr), true);
5282 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5286 internal TapGestureDetector GetTapGestureDetector()
5288 TapGestureDetector ret = new TapGestureDetector(Interop.ViewInternal.View_GetTapGestureDetector(swigCPtr), true);
5289 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5293 internal LongPressGestureDetector GetLongPressGestureDetector()
5295 LongPressGestureDetector ret = new LongPressGestureDetector(Interop.ViewInternal.View_GetLongPressGestureDetector(swigCPtr), true);
5296 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5300 internal ControlKeySignal KeyEventSignal()
5302 ControlKeySignal ret = new ControlKeySignal(Interop.ViewSignal.View_KeyEventSignal(swigCPtr), false);
5303 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5307 internal KeyInputFocusSignal KeyInputFocusGainedSignal()
5309 KeyInputFocusSignal ret = new KeyInputFocusSignal(Interop.ViewSignal.View_KeyInputFocusGainedSignal(swigCPtr), false);
5310 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5314 internal KeyInputFocusSignal KeyInputFocusLostSignal()
5316 KeyInputFocusSignal ret = new KeyInputFocusSignal(Interop.ViewSignal.View_KeyInputFocusLostSignal(swigCPtr), false);
5317 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5321 internal IntPtr GetPtrfromView()
5323 return (IntPtr)swigCPtr;
5326 internal void RemoveChild(View child)
5328 // Do actual child removal
5329 Interop.Actor.Actor_Remove(swigCPtr, View.getCPtr(child));
5330 if (NDalicPINVOKE.SWIGPendingException.Pending)
5331 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5333 Children.Remove(child);
5334 child.InternalParent = null;
5336 if (ChildRemoved != null)
5338 ChildRemovedEventArgs e = new ChildRemovedEventArgs
5342 ChildRemoved(this, e);
5347 /// Removes the layout from this View.
5349 internal void ResetLayout()
5354 internal ResourceLoadingStatusType GetBackgroundResourceStatus()
5356 return (ResourceLoadingStatusType)Interop.View.View_GetVisualResourceStatus(this.swigCPtr, Property.BACKGROUND);
5360 /// you can override it to clean-up your own resources.
5362 /// <param name="type">DisposeTypes</param>
5363 /// <since_tizen> 3 </since_tizen>
5364 protected override void Dispose(DisposeTypes type)
5371 //_mergedStyle = null;
5373 //Release your own unmanaged resources here.
5374 //You should not access any managed member here except static instance.
5375 //because the execution order of Finalizes is non-deterministic.
5378 DisConnectFromSignals();
5381 if (swigCPtr.Handle != global::System.IntPtr.Zero)
5385 swigCMemOwn = false;
5386 Interop.View.delete_View(swigCPtr);
5388 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
5391 foreach (View view in Children)
5393 view.InternalParent = null;
5400 private void OnSize2DChanged(int width, int height)
5402 Size2D = new Size2D(width, height);
5405 private void OnMinimumSizeChanged(int width, int height)
5407 MinimumSize = new Size2D(width, height);
5410 private void OnMaximumSizeChanged(int width, int height)
5412 MaximumSize = new Size2D(width, height);
5415 private void OnPosition2DChanged(int x, int y)
5417 Position2D = new Position2D(x, y);
5420 private void OnSizeChanged(float width, float height, float depth)
5422 Size = new Size(width, height, depth);
5425 private void OnPositionChanged(float x, float y, float z)
5427 Position = new Position(x, y, z);
5430 private void OnParentOriginChanged(float x, float y, float z)
5432 ParentOrigin = new Position(x, y, z);
5435 private void OnPivotPointChanged(float x, float y, float z)
5437 PivotPoint = new Position(x, y, z);
5440 private void DisConnectFromSignals()
5442 // Save current CPtr.
5443 global::System.Runtime.InteropServices.HandleRef currentCPtr = swigCPtr;
5445 // Use BaseHandle CPtr as current might have been deleted already in derived classes.
5446 swigCPtr = GetBaseHandleCPtrHandleRef;
5448 if (_onRelayoutEventCallback != null)
5450 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
5453 if (_offWindowEventCallback != null)
5455 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
5458 if (_onWindowEventCallback != null)
5460 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
5463 if (_wheelEventCallback != null)
5465 this.WheelEventSignal().Disconnect(_wheelEventCallback);
5468 if (_hoverEventCallback != null)
5470 this.HoveredSignal().Disconnect(_hoverEventCallback);
5473 if (_touchDataCallback != null)
5475 this.TouchSignal().Disconnect(_touchDataCallback);
5478 if (_ResourcesLoadedCallback != null)
5480 this.ResourcesLoadedSignal().Disconnect(_ResourcesLoadedCallback);
5483 if (_offWindowEventCallback != null)
5485 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
5488 if (_onWindowEventCallback != null)
5490 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
5493 if (_wheelEventCallback != null)
5495 this.WheelEventSignal().Disconnect(_wheelEventCallback);
5498 if (_hoverEventCallback != null)
5500 this.HoveredSignal().Disconnect(_hoverEventCallback);
5503 if (_touchDataCallback != null)
5505 this.TouchSignal().Disconnect(_touchDataCallback);
5508 if (_onRelayoutEventCallback != null)
5510 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
5513 if (_keyCallback != null)
5515 this.KeyEventSignal().Disconnect(_keyCallback);
5518 if (_keyInputFocusLostCallback != null)
5520 this.KeyInputFocusLostSignal().Disconnect(_keyInputFocusLostCallback);
5523 if (_keyInputFocusGainedCallback != null)
5525 this.KeyInputFocusGainedSignal().Disconnect(_keyInputFocusGainedCallback);
5528 if (_backgroundResourceLoadedCallback != null)
5530 this.ResourcesLoadedSignal().Disconnect(_backgroundResourceLoadedCallback);
5533 if (_onWindowSendEventCallback != null)
5535 this.OnWindowSignal().Disconnect(_onWindowSendEventCallback);
5538 // BaseHandle CPtr is used in Registry and there is danger of deletion if we keep using it here.
5539 // Restore current CPtr.
5540 swigCPtr = currentCPtr;
5543 private void OnKeyInputFocusGained(IntPtr view)
5545 if (_keyInputFocusGainedEventHandler != null)
5547 _keyInputFocusGainedEventHandler(this, null);
5551 private void OnKeyInputFocusLost(IntPtr view)
5553 if (_keyInputFocusLostEventHandler != null)
5555 _keyInputFocusLostEventHandler(this, null);
5559 private bool OnKeyEvent(IntPtr view, IntPtr keyEvent)
5561 if (keyEvent == global::System.IntPtr.Zero)
5563 NUILog.Error("keyEvent should not be null!");
5567 KeyEventArgs e = new KeyEventArgs();
5569 bool result = false;
5571 e.Key = Tizen.NUI.Key.GetKeyFromPtr(keyEvent);
5573 if (_keyEventHandler != null)
5575 Delegate[] delegateList = _keyEventHandler.GetInvocationList();
5577 // Oring the result of each callback.
5578 foreach (EventHandlerWithReturnType<object, KeyEventArgs, bool> del in delegateList)
5580 result |= del(this, e);
5587 // Callback for View OnRelayout signal
5588 private void OnRelayout(IntPtr data)
5590 if (_onRelayoutEventHandler != null)
5592 _onRelayoutEventHandler(this, null);
5596 // Callback for View TouchSignal
5597 private bool OnTouch(IntPtr view, IntPtr touchData)
5599 if (touchData == global::System.IntPtr.Zero)
5601 NUILog.Error("touchData should not be null!");
5605 TouchEventArgs e = new TouchEventArgs();
5607 e.Touch = Tizen.NUI.Touch.GetTouchFromPtr(touchData);
5609 if (_touchDataEventHandler != null)
5611 return _touchDataEventHandler(this, e);
5616 // Callback for View Hover signal
5617 private bool OnHoverEvent(IntPtr view, IntPtr hoverEvent)
5619 if (hoverEvent == global::System.IntPtr.Zero)
5621 NUILog.Error("hoverEvent should not be null!");
5625 HoverEventArgs e = new HoverEventArgs();
5627 e.Hover = Tizen.NUI.Hover.GetHoverFromPtr(hoverEvent);
5629 if (_hoverEventHandler != null)
5631 return _hoverEventHandler(this, e);
5636 // Callback for View Wheel signal
5637 private bool OnWheelEvent(IntPtr view, IntPtr wheelEvent)
5639 if (wheelEvent == global::System.IntPtr.Zero)
5641 NUILog.Error("wheelEvent should not be null!");
5645 WheelEventArgs e = new WheelEventArgs();
5647 e.Wheel = Tizen.NUI.Wheel.GetWheelFromPtr(wheelEvent);
5649 if (_wheelEventHandler != null)
5651 return _wheelEventHandler(this, e);
5656 // Callback for View OnWindow signal
5657 private void OnWindow(IntPtr data)
5659 if (_onWindowEventHandler != null)
5661 _onWindowEventHandler(this, null);
5665 // Callback for View OffWindow signal
5666 private void OffWindow(IntPtr data)
5668 if (_offWindowEventHandler != null)
5670 _offWindowEventHandler(this, null);
5674 // Callback for View visibility change signal
5675 private void OnVisibilityChanged(IntPtr data, bool visibility, VisibilityChangeType type)
5677 VisibilityChangedEventArgs e = new VisibilityChangedEventArgs();
5680 e.View = Registry.GetManagedBaseHandleFromNativePtr(data) as View;
5682 e.Visibility = visibility;
5685 if (_visibilityChangedEventHandler != null)
5687 _visibilityChangedEventHandler(this, e);
5691 // Callback for View layout direction change signal
5692 private void OnLayoutDirectionChanged(IntPtr data, ViewLayoutDirectionType type)
5694 LayoutDirectionChangedEventArgs e = new LayoutDirectionChangedEventArgs();
5697 e.View = Registry.GetManagedBaseHandleFromNativePtr(data) as View;
5701 if (_layoutDirectionChangedEventHandler != null)
5703 _layoutDirectionChangedEventHandler(this, e);
5707 private void OnResourcesLoaded(IntPtr view)
5709 if (_resourcesLoadedEventHandler != null)
5711 _resourcesLoadedEventHandler(this, null);
5715 private View ConvertIdToView(uint id)
5717 View view = GetParent()?.FindCurrentChildById(id);
5719 //If we can't find the parent's children, find in the top layer.
5722 Container parent = GetParent();
5723 while ((parent is View) && (parent != null))
5725 parent = parent.GetParent();
5726 if (parent is Layer)
5728 view = parent.FindCurrentChildById(id);
5737 private void OnBackgroundResourceLoaded(IntPtr view)
5739 BackgroundResourceLoadedEventArgs e = new BackgroundResourceLoadedEventArgs();
5740 e.Status = (ResourceLoadingStatusType)Interop.View.View_GetVisualResourceStatus(this.swigCPtr, Property.BACKGROUND);
5742 if (_backgroundResourceLoadedEventHandler != null)
5744 _backgroundResourceLoadedEventHandler(this, e);
5749 /// Event argument passed through the ChildAdded event.
5751 /// <since_tizen> 5 </since_tizen>
5752 public class ChildAddedEventArgs : EventArgs
5755 /// Added child view at moment.
5757 /// <since_tizen> 5 </since_tizen>
5758 public View Added { get; set; }
5762 /// Event argument passed through the ChildRemoved event.
5764 /// <since_tizen> 5 </since_tizen>
5765 public class ChildRemovedEventArgs : EventArgs
5768 /// Removed child view at moment.
5770 /// <since_tizen> 5 </since_tizen>
5771 public View Removed { get; set; }
5775 /// Event arguments that passed via the KeyEvent signal.
5777 /// <since_tizen> 3 </since_tizen>
5778 public class KeyEventArgs : EventArgs
5783 /// Key - is the key sent to the view.
5785 /// <since_tizen> 3 </since_tizen>
5800 /// Event arguments that passed via the touch signal.
5802 /// <since_tizen> 3 </since_tizen>
5803 public class TouchEventArgs : EventArgs
5805 private Touch _touch;
5808 /// Touch - contains the information of touch points.
5810 /// <since_tizen> 3 </since_tizen>
5825 /// Event arguments that passed via the hover signal.
5827 /// <since_tizen> 3 </since_tizen>
5828 public class HoverEventArgs : EventArgs
5830 private Hover _hover;
5833 /// Hover - contains touch points that represent the points that are currently being hovered or the points where a hover has stopped.
5835 /// <since_tizen> 3 </since_tizen>
5850 /// Event arguments that passed via the wheel signal.
5852 /// <since_tizen> 3 </since_tizen>
5853 public class WheelEventArgs : EventArgs
5855 private Wheel _wheel;
5858 /// WheelEvent - store a wheel rolling type: MOUSE_WHEEL or CUSTOM_WHEEL.
5860 /// <since_tizen> 3 </since_tizen>
5875 /// Event arguments of visibility changed.
5877 /// <since_tizen> 3 </since_tizen>
5878 public class VisibilityChangedEventArgs : EventArgs
5881 private bool _visibility;
5882 private VisibilityChangeType _type;
5885 /// The view, or child of view, whose visibility has changed.
5887 /// <since_tizen> 3 </since_tizen>
5901 /// Whether the view is now visible or not.
5903 /// <since_tizen> 3 </since_tizen>
5904 public bool Visibility
5912 _visibility = value;
5917 /// Whether the view's visible property has changed or a parent's.
5919 /// <since_tizen> 3 </since_tizen>
5920 public VisibilityChangeType Type
5934 /// Event arguments of layout direction changed.
5936 /// <since_tizen> 4 </since_tizen>
5937 public class LayoutDirectionChangedEventArgs : EventArgs
5940 private ViewLayoutDirectionType _type;
5943 /// The view, or child of view, whose layout direction has changed.
5945 /// <since_tizen> 4 </since_tizen>
5959 /// Whether the view's layout direction property has changed or a parent's.
5961 /// <since_tizen> 4 </since_tizen>
5962 public ViewLayoutDirectionType Type
5975 /// This will be public opened in tizen_6.0 after ACR done. Before ACR, need to be hidden as inhouse API.
5976 [EditorBrowsable(EditorBrowsableState.Never)]
5977 public Vector2 UpdateSizeHint
5981 return (Vector2)GetValue(UpdateSizeHintProperty);
5985 SetValue(UpdateSizeHintProperty, value);
5986 NotifyPropertyChanged();
5990 private Dictionary<string, Transition> transDictionary = new Dictionary<string, Transition>();
5992 /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API.
5993 [EditorBrowsable(EditorBrowsableState.Never)]
5994 public Transition GetTransition(string transitionName)
5996 Transition trans = null;
5997 transDictionary.TryGetValue(transitionName, out trans);
6001 private void LoadTransitions()
6003 foreach (string str in transitionNames)
6005 string resourceName = str + ".xaml";
6006 Transition trans = null;
6008 string resource = Tizen.Applications.Application.Current.DirectoryInfo.Resource;
6010 string likelyResourcePath = resource + "animation/" + resourceName;
6012 if (File.Exists(likelyResourcePath))
6014 trans = Extensions.LoadObject<Transition>(likelyResourcePath);
6018 transDictionary.Add(trans.Name, trans);
6023 /// This will be public opened in tizen_next after ACR done. Before ACR, need to be hidden as inhouse API.
6024 [EditorBrowsable(EditorBrowsableState.Never)]
6025 public string[] TransitionNames
6029 return transitionNames;
6033 transitionNames = value;
6037 private string[] transitionNames;
6039 internal class BackgroundResourceLoadedEventArgs : EventArgs
6041 private ResourceLoadingStatusType status = ResourceLoadingStatusType.Invalid;
6042 public ResourceLoadingStatusType Status
6055 internal class Property
6057 internal static readonly int TOOLTIP = Interop.ViewProperty.View_Property_TOOLTIP_get();
6058 internal static readonly int STATE = Interop.ViewProperty.View_Property_STATE_get();
6059 internal static readonly int SUB_STATE = Interop.ViewProperty.View_Property_SUB_STATE_get();
6060 internal static readonly int LEFT_FOCUSABLE_VIEW_ID = Interop.ViewProperty.View_Property_LEFT_FOCUSABLE_ACTOR_ID_get();
6061 internal static readonly int RIGHT_FOCUSABLE_VIEW_ID = Interop.ViewProperty.View_Property_RIGHT_FOCUSABLE_ACTOR_ID_get();
6062 internal static readonly int UP_FOCUSABLE_VIEW_ID = Interop.ViewProperty.View_Property_UP_FOCUSABLE_ACTOR_ID_get();
6063 internal static readonly int DOWN_FOCUSABLE_VIEW_ID = Interop.ViewProperty.View_Property_DOWN_FOCUSABLE_ACTOR_ID_get();
6064 internal static readonly int STYLE_NAME = Interop.ViewProperty.View_Property_STYLE_NAME_get();
6065 internal static readonly int BACKGROUND = Interop.ViewProperty.View_Property_BACKGROUND_get();
6066 internal static readonly int SIBLING_ORDER = Interop.ActorProperty.Actor_Property_SIBLING_ORDER_get();
6067 internal static readonly int OPACITY = Interop.ActorProperty.Actor_Property_OPACITY_get();
6068 internal static readonly int SCREEN_POSITION = Interop.ActorProperty.Actor_Property_SCREEN_POSITION_get();
6069 internal static readonly int POSITION_USES_ANCHOR_POINT = Interop.ActorProperty.Actor_Property_POSITION_USES_ANCHOR_POINT_get();
6070 internal static readonly int PARENT_ORIGIN = Interop.ActorProperty.Actor_Property_PARENT_ORIGIN_get();
6071 internal static readonly int PARENT_ORIGIN_X = Interop.ActorProperty.Actor_Property_PARENT_ORIGIN_X_get();
6072 internal static readonly int PARENT_ORIGIN_Y = Interop.ActorProperty.Actor_Property_PARENT_ORIGIN_Y_get();
6073 internal static readonly int PARENT_ORIGIN_Z = Interop.ActorProperty.Actor_Property_PARENT_ORIGIN_Z_get();
6074 internal static readonly int ANCHOR_POINT = Interop.ActorProperty.Actor_Property_ANCHOR_POINT_get();
6075 internal static readonly int ANCHOR_POINT_X = Interop.ActorProperty.Actor_Property_ANCHOR_POINT_X_get();
6076 internal static readonly int ANCHOR_POINT_Y = Interop.ActorProperty.Actor_Property_ANCHOR_POINT_Y_get();
6077 internal static readonly int ANCHOR_POINT_Z = Interop.ActorProperty.Actor_Property_ANCHOR_POINT_Z_get();
6078 internal static readonly int SIZE = Interop.ActorProperty.Actor_Property_SIZE_get();
6079 internal static readonly int SIZE_WIDTH = Interop.ActorProperty.Actor_Property_SIZE_WIDTH_get();
6080 internal static readonly int SIZE_HEIGHT = Interop.ActorProperty.Actor_Property_SIZE_HEIGHT_get();
6081 internal static readonly int SIZE_DEPTH = Interop.ActorProperty.Actor_Property_SIZE_DEPTH_get();
6082 internal static readonly int POSITION = Interop.ActorProperty.Actor_Property_POSITION_get();
6083 internal static readonly int POSITION_X = Interop.ActorProperty.Actor_Property_POSITION_X_get();
6084 internal static readonly int POSITION_Y = Interop.ActorProperty.Actor_Property_POSITION_Y_get();
6085 internal static readonly int POSITION_Z = Interop.ActorProperty.Actor_Property_POSITION_Z_get();
6086 internal static readonly int WORLD_POSITION = Interop.ActorProperty.Actor_Property_WORLD_POSITION_get();
6087 internal static readonly int WORLD_POSITION_X = Interop.ActorProperty.Actor_Property_WORLD_POSITION_X_get();
6088 internal static readonly int WORLD_POSITION_Y = Interop.ActorProperty.Actor_Property_WORLD_POSITION_Y_get();
6089 internal static readonly int WORLD_POSITION_Z = Interop.ActorProperty.Actor_Property_WORLD_POSITION_Z_get();
6090 internal static readonly int ORIENTATION = Interop.ActorProperty.Actor_Property_ORIENTATION_get();
6091 internal static readonly int WORLD_ORIENTATION = Interop.ActorProperty.Actor_Property_WORLD_ORIENTATION_get();
6092 internal static readonly int SCALE = Interop.ActorProperty.Actor_Property_SCALE_get();
6093 internal static readonly int SCALE_X = Interop.ActorProperty.Actor_Property_SCALE_X_get();
6094 internal static readonly int SCALE_Y = Interop.ActorProperty.Actor_Property_SCALE_Y_get();
6095 internal static readonly int SCALE_Z = Interop.ActorProperty.Actor_Property_SCALE_Z_get();
6096 internal static readonly int WORLD_SCALE = Interop.ActorProperty.Actor_Property_WORLD_SCALE_get();
6097 internal static readonly int VISIBLE = Interop.ActorProperty.Actor_Property_VISIBLE_get();
6098 internal static readonly int WORLD_COLOR = Interop.ActorProperty.Actor_Property_WORLD_COLOR_get();
6099 internal static readonly int WORLD_MATRIX = Interop.ActorProperty.Actor_Property_WORLD_MATRIX_get();
6100 internal static readonly int NAME = Interop.ActorProperty.Actor_Property_NAME_get();
6101 internal static readonly int SENSITIVE = Interop.ActorProperty.Actor_Property_SENSITIVE_get();
6102 internal static readonly int LEAVE_REQUIRED = Interop.ActorProperty.Actor_Property_LEAVE_REQUIRED_get();
6103 internal static readonly int INHERIT_ORIENTATION = Interop.ActorProperty.Actor_Property_INHERIT_ORIENTATION_get();
6104 internal static readonly int INHERIT_SCALE = Interop.ActorProperty.Actor_Property_INHERIT_SCALE_get();
6105 internal static readonly int DRAW_MODE = Interop.ActorProperty.Actor_Property_DRAW_MODE_get();
6106 internal static readonly int SIZE_MODE_FACTOR = Interop.ActorProperty.Actor_Property_SIZE_MODE_FACTOR_get();
6107 internal static readonly int WIDTH_RESIZE_POLICY = Interop.ActorProperty.Actor_Property_WIDTH_RESIZE_POLICY_get();
6108 internal static readonly int HEIGHT_RESIZE_POLICY = Interop.ActorProperty.Actor_Property_HEIGHT_RESIZE_POLICY_get();
6109 internal static readonly int SIZE_SCALE_POLICY = Interop.ActorProperty.Actor_Property_SIZE_SCALE_POLICY_get();
6110 internal static readonly int WIDTH_FOR_HEIGHT = Interop.ActorProperty.Actor_Property_WIDTH_FOR_HEIGHT_get();
6111 internal static readonly int HEIGHT_FOR_WIDTH = Interop.ActorProperty.Actor_Property_HEIGHT_FOR_WIDTH_get();
6112 internal static readonly int MINIMUM_SIZE = Interop.ActorProperty.Actor_Property_MINIMUM_SIZE_get();
6113 internal static readonly int MAXIMUM_SIZE = Interop.ActorProperty.Actor_Property_MAXIMUM_SIZE_get();
6114 internal static readonly int INHERIT_POSITION = Interop.ActorProperty.Actor_Property_INHERIT_POSITION_get();
6115 internal static readonly int CLIPPING_MODE = Interop.ActorProperty.Actor_Property_CLIPPING_MODE_get();
6116 internal static readonly int INHERIT_LAYOUT_DIRECTION = Interop.ActorProperty.Actor_Property_INHERIT_LAYOUT_DIRECTION_get();
6117 internal static readonly int LAYOUT_DIRECTION = Interop.ActorProperty.Actor_Property_LAYOUT_DIRECTION_get();
6118 internal static readonly int MARGIN = Interop.ViewProperty.View_Property_MARGIN_get();
6119 internal static readonly int PADDING = Interop.ViewProperty.View_Property_PADDING_get();