2 * Copyright(c) 2018 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.ComponentModel;
19 using System.Runtime.InteropServices;
20 using Tizen.NUI.Binding;
22 namespace Tizen.NUI.BaseComponents
25 /// View is the base class for all views.
27 /// <since_tizen> 3 </since_tizen>
28 public class View : Container, IResourcesProvider
30 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
31 [EditorBrowsable(EditorBrowsableState.Never)]
32 public bool IsResourcesCreated
36 return Application.Current.IsResourcesCreated;
40 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
41 [EditorBrowsable(EditorBrowsableState.Never)]
42 public ResourceDictionary XamlResources
46 return Application.Current.XamlResources;
50 Application.Current.XamlResources = value;
54 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
55 [EditorBrowsable(EditorBrowsableState.Never)]
56 public static readonly BindableProperty StyleNameProperty = BindableProperty.Create("StyleName", typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
58 var view = (View)bindable;
61 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.STYLE_NAME, new Tizen.NUI.PropertyValue((string)newValue));
64 defaultValueCreator:(bindable) =>
66 var view = (View)bindable;
68 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.STYLE_NAME).Get(out temp);
71 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
72 [EditorBrowsable(EditorBrowsableState.Never)]
73 public static readonly BindableProperty BackgroundColorProperty = BindableProperty.Create("BackgroundColor", typeof(Color), typeof(View), Color.Transparent, propertyChanged: (bindable, oldValue, newValue) =>
75 var view = (View)bindable;
78 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.BACKGROUND, new Tizen.NUI.PropertyValue((Color)newValue));
81 defaultValueCreator:(bindable) =>
83 var view = (View)bindable;
84 Color backgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f);
86 Tizen.NUI.PropertyMap background = view.Background;
88 background.Find(Visual.Property.Type)?.Get(out visualType);
89 if (visualType == (int)Visual.Type.Color)
91 background.Find(ColorVisualProperty.MixColor)?.Get(backgroundColor);
94 return backgroundColor;
96 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
97 [EditorBrowsable(EditorBrowsableState.Never)]
98 public static readonly BindableProperty BackgroundImageProperty = BindableProperty.Create("BackgroundImage", typeof(string), typeof(View), default(string), propertyChanged: (bindable, oldValue, newValue) =>
100 var view = (View)bindable;
101 if (newValue != null)
103 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.BACKGROUND, new Tizen.NUI.PropertyValue((string)newValue));
106 defaultValueCreator:(bindable) =>
108 var view = (View)bindable;
109 string backgroundImage = "";
111 Tizen.NUI.PropertyMap background = view.Background;
113 background.Find(Visual.Property.Type)?.Get(out visualType);
114 if (visualType == (int)Visual.Type.Image)
116 background.Find(ImageVisualProperty.URL)?.Get(out backgroundImage);
119 return backgroundImage;
121 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
122 [EditorBrowsable(EditorBrowsableState.Never)]
123 public static readonly BindableProperty BackgroundProperty = BindableProperty.Create("Background", typeof(PropertyMap), typeof(View), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
125 var view = (View)bindable;
126 if (newValue != null)
128 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.BACKGROUND, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
131 defaultValueCreator:(bindable) =>
133 var view = (View)bindable;
134 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
135 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.BACKGROUND).Get(temp);
138 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
139 [EditorBrowsable(EditorBrowsableState.Never)]
140 public static readonly BindableProperty StateProperty = BindableProperty.Create("State", typeof(States), typeof(View), States.Normal, propertyChanged: (bindable, oldValue, newValue) =>
142 var view = (View)bindable;
143 if (newValue != null)
145 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.STATE, new Tizen.NUI.PropertyValue((int)newValue));
148 defaultValueCreator:(bindable) =>
150 var view = (View)bindable;
152 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.STATE).Get(out temp) == false)
154 NUILog.Error("State get error!");
158 case 0: return States.Normal;
159 case 1: return States.Focused;
160 case 2: return States.Disabled;
161 default: return States.Normal;
164 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
165 [EditorBrowsable(EditorBrowsableState.Never)]
166 public static readonly BindableProperty SubStateProperty = BindableProperty.Create("SubState", typeof(States), typeof(View), States.Normal, propertyChanged: (bindable, oldValue, newValue) =>
168 var view = (View)bindable;
169 string valueToString = "";
170 if (newValue != null)
172 switch ((States)newValue)
174 case States.Normal: { valueToString = "NORMAL"; break; }
175 case States.Focused: { valueToString = "FOCUSED"; break; }
176 case States.Disabled: { valueToString = "DISABLED"; break; }
177 default: { valueToString = "NORMAL"; break; }
179 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SUB_STATE, new Tizen.NUI.PropertyValue(valueToString));
182 defaultValueCreator:(bindable) =>
184 var view = (View)bindable;
186 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SUB_STATE).Get(out temp) == false)
188 NUILog.Error("subState get error!");
192 case "NORMAL": return States.Normal;
193 case "FOCUSED": return States.Focused;
194 case "DISABLED": return States.Disabled;
195 default: return States.Normal;
198 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
199 [EditorBrowsable(EditorBrowsableState.Never)]
200 public static readonly BindableProperty TooltipProperty = BindableProperty.Create("Tooltip", typeof(PropertyMap), typeof(View), new PropertyMap(), propertyChanged: (bindable, oldValue, newValue) =>
202 var view = (View)bindable;
203 if (newValue != null)
205 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.TOOLTIP, new Tizen.NUI.PropertyValue((PropertyMap)newValue));
208 defaultValueCreator:(bindable) =>
210 var view = (View)bindable;
211 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
212 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.TOOLTIP).Get(temp);
215 // public static readonly BindableProperty TooltipTextProperty = BindableProperty.Create("TooltipText", typeof(string), typeof(View), default(string), propertyChanged: (bindable, oldValue, newValue) =>
217 // var view = (View)bindable;
218 // if (newValue != null)
220 // Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.TOOLTIP, new Tizen.NUI.PropertyValue((string)newValue));
223 public static readonly BindableProperty FlexProperty = BindableProperty.Create("Flex", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
225 var view = (View)bindable;
226 if (newValue != null)
228 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX, new Tizen.NUI.PropertyValue((float)newValue));
231 defaultValueCreator:(bindable) =>
233 var view = (View)bindable;
235 Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX).Get(out temp);
238 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
239 [EditorBrowsable(EditorBrowsableState.Never)]
240 public static readonly BindableProperty AlignSelfProperty = BindableProperty.Create("AlignSelf", typeof(int), typeof(View), default(int), propertyChanged: (bindable, oldValue, newValue) =>
242 var view = (View)bindable;
243 if (newValue != null)
245 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.ALIGN_SELF, new Tizen.NUI.PropertyValue((int)newValue));
248 defaultValueCreator:(bindable) =>
250 var view = (View)bindable;
252 Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.ALIGN_SELF).Get(out temp);
255 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
256 [EditorBrowsable(EditorBrowsableState.Never)]
257 public static readonly BindableProperty FlexMarginProperty = BindableProperty.Create("FlexMargin", typeof(Vector4), typeof(View), Vector4.Zero, propertyChanged: (bindable, oldValue, newValue) =>
259 var view = (View)bindable;
260 if (newValue != null)
262 Tizen.NUI.Object.SetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX_MARGIN, new Tizen.NUI.PropertyValue((Vector4)newValue));
265 defaultValueCreator:(bindable) =>
267 var view = (View)bindable;
268 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
269 Tizen.NUI.Object.GetProperty(view.swigCPtr, FlexContainer.ChildProperty.FLEX_MARGIN).Get(temp);
272 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
273 [EditorBrowsable(EditorBrowsableState.Never)]
274 public static readonly BindableProperty CellIndexProperty = BindableProperty.Create("CellIndex", typeof(Vector2), typeof(View), Vector2.Zero, propertyChanged: (bindable, oldValue, newValue) =>
276 var view = (View)bindable;
277 if (newValue != null)
279 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_INDEX, new Tizen.NUI.PropertyValue((Vector2)newValue));
282 defaultValueCreator:(bindable) =>
284 var view = (View)bindable;
285 Vector2 temp = new Vector2(0.0f, 0.0f);
286 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_INDEX).Get(temp);
289 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
290 [EditorBrowsable(EditorBrowsableState.Never)]
291 public static readonly BindableProperty RowSpanProperty = BindableProperty.Create("RowSpan", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
293 var view = (View)bindable;
294 if (newValue != null)
296 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.ROW_SPAN, new Tizen.NUI.PropertyValue((float)newValue));
299 defaultValueCreator:(bindable) =>
301 var view = (View)bindable;
303 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.ROW_SPAN).Get(out temp);
306 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
307 [EditorBrowsable(EditorBrowsableState.Never)]
308 public static readonly BindableProperty ColumnSpanProperty = BindableProperty.Create("ColumnSpan", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
310 var view = (View)bindable;
311 if (newValue != null)
313 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.COLUMN_SPAN, new Tizen.NUI.PropertyValue((float)newValue));
316 defaultValueCreator:(bindable) =>
318 var view = (View)bindable;
320 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.COLUMN_SPAN).Get(out temp);
323 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
324 [EditorBrowsable(EditorBrowsableState.Never)]
325 public static readonly BindableProperty CellHorizontalAlignmentProperty = BindableProperty.Create("CellHorizontalAlignment", typeof(HorizontalAlignmentType), typeof(View), HorizontalAlignmentType.Left, propertyChanged: (bindable, oldValue, newValue) =>
327 var view = (View)bindable;
328 string valueToString = "";
330 if (newValue != null)
332 switch ((HorizontalAlignmentType)newValue)
334 case Tizen.NUI.HorizontalAlignmentType.Left: { valueToString = "left"; break; }
335 case Tizen.NUI.HorizontalAlignmentType.Center: { valueToString = "center"; break; }
336 case Tizen.NUI.HorizontalAlignmentType.Right: { valueToString = "right"; break; }
337 default: { valueToString = "left"; break; }
339 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
342 defaultValueCreator:(bindable) =>
344 var view = (View)bindable;
346 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT).Get(out temp) == false)
348 NUILog.Error("CellHorizontalAlignment get error!");
353 case "left": return Tizen.NUI.HorizontalAlignmentType.Left;
354 case "center": return Tizen.NUI.HorizontalAlignmentType.Center;
355 case "right": return Tizen.NUI.HorizontalAlignmentType.Right;
356 default: return Tizen.NUI.HorizontalAlignmentType.Left;
359 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
360 [EditorBrowsable(EditorBrowsableState.Never)]
361 public static readonly BindableProperty CellVerticalAlignmentProperty = BindableProperty.Create("CellVerticalAlignment", typeof(VerticalAlignmentType), typeof(View), VerticalAlignmentType.Top, propertyChanged: (bindable, oldValue, newValue) =>
363 var view = (View)bindable;
364 string valueToString = "";
366 if (newValue != null)
368 switch ((VerticalAlignmentType)newValue)
370 case Tizen.NUI.VerticalAlignmentType.Top: { valueToString = "top"; break; }
371 case Tizen.NUI.VerticalAlignmentType.Center: { valueToString = "center"; break; }
372 case Tizen.NUI.VerticalAlignmentType.Bottom: { valueToString = "bottom"; break; }
373 default: { valueToString = "top"; break; }
375 Tizen.NUI.Object.SetProperty(view.swigCPtr, TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
378 defaultValueCreator:(bindable) =>
380 var view = (View)bindable;
382 Tizen.NUI.Object.GetProperty(view.swigCPtr, TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT).Get(out temp);
384 NUILog.Error("CellVerticalAlignment get error!");
389 case "top": return Tizen.NUI.VerticalAlignmentType.Top;
390 case "center": return Tizen.NUI.VerticalAlignmentType.Center;
391 case "bottom": return Tizen.NUI.VerticalAlignmentType.Bottom;
392 default: return Tizen.NUI.VerticalAlignmentType.Top;
395 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
396 [EditorBrowsable(EditorBrowsableState.Never)]
397 public static readonly BindableProperty LeftFocusableViewProperty = BindableProperty.Create("LeftFocusableView", typeof(View), typeof(View), default(View), propertyChanged: (bindable, oldValue, newValue) =>
399 var view = (View)bindable;
400 if (newValue != null) { view.LeftFocusableViewId = (int)(newValue as View).GetId(); }
401 else { view.LeftFocusableViewId = -1; }
403 defaultValueCreator:(bindable) =>
405 var view = (View)bindable;
406 if (view.LeftFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.LeftFocusableViewId); }
409 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
410 [EditorBrowsable(EditorBrowsableState.Never)]
411 public static readonly BindableProperty RightFocusableViewProperty = BindableProperty.Create("RightFocusableView", typeof(View), typeof(View), default(View), propertyChanged: (bindable, oldValue, newValue) =>
413 var view = (View)bindable;
414 if (newValue != null) { view.RightFocusableViewId = (int)(newValue as View).GetId(); }
415 else { view.RightFocusableViewId = -1; }
417 defaultValueCreator:(bindable) =>
419 var view = (View)bindable;
420 if (view.RightFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.RightFocusableViewId); }
423 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
424 [EditorBrowsable(EditorBrowsableState.Never)]
425 public static readonly BindableProperty UpFocusableViewProperty = BindableProperty.Create("UpFocusableView", typeof(View), typeof(View), default(View), propertyChanged: (bindable, oldValue, newValue) =>
427 var view = (View)bindable;
428 if (newValue != null) { view.UpFocusableViewId = (int)(newValue as View).GetId(); }
429 else { view.UpFocusableViewId = -1; }
431 defaultValueCreator:(bindable) =>
433 var view = (View)bindable;
434 if (view.UpFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.UpFocusableViewId); }
437 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
438 [EditorBrowsable(EditorBrowsableState.Never)]
439 public static readonly BindableProperty DownFocusableViewProperty = BindableProperty.Create("DownFocusableView", typeof(View), typeof(View), default(View), propertyChanged: (bindable, oldValue, newValue) =>
441 var view = (View)bindable;
442 if (newValue != null) { view.DownFocusableViewId = (int)(newValue as View).GetId(); }
443 else { view.DownFocusableViewId = -1; }
445 defaultValueCreator:(bindable) =>
447 var view = (View)bindable;
448 if (view.DownFocusableViewId >= 0) { return view.ConvertIdToView((uint)view.DownFocusableViewId); }
451 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
452 [EditorBrowsable(EditorBrowsableState.Never)]
453 public static readonly BindableProperty FocusableProperty = BindableProperty.Create("Focusable", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
455 var view = (View)bindable;
456 if (newValue != null) { view.SetKeyboardFocusable((bool)newValue); }
458 defaultValueCreator:(bindable) =>
460 var view = (View)bindable;
461 return view.IsKeyboardFocusable();
463 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
464 [EditorBrowsable(EditorBrowsableState.Never)]
465 public static readonly BindableProperty Size2DProperty = BindableProperty.Create("Size2D", typeof(Size2D), typeof(View), new Size2D(0,0), propertyChanged: (bindable, oldValue, newValue) =>
467 var view = (View)bindable;
468 if (newValue != null)
470 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE, new Tizen.NUI.PropertyValue( new Size((Size2D)newValue)));
473 defaultValueCreator:(bindable) =>
475 var view = (View)bindable;
476 Size temp = new Size(0.0f, 0.0f, 0.0f);
477 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE).Get(temp);
478 Size2D size = new Size2D((int)temp.Width, (int)temp.Height);
479 Console.WriteLine($"View Size2DProperty get width: {size.Width} height: {size.Height}");
482 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
483 [EditorBrowsable(EditorBrowsableState.Never)]
484 public static readonly BindableProperty OpacityProperty = BindableProperty.Create("Opacity", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
486 var view = (View)bindable;
487 if (newValue != null)
489 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.OPACITY, new Tizen.NUI.PropertyValue((float)newValue));
492 defaultValueCreator:(bindable) =>
494 var view = (View)bindable;
496 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.OPACITY).Get(out temp);
499 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
500 [EditorBrowsable(EditorBrowsableState.Never)]
501 public static readonly BindableProperty Position2DProperty = BindableProperty.Create("Position2D", typeof(Position2D), typeof(View), new Position2D(0,0), propertyChanged: (bindable, oldValue, newValue) =>
503 var view = (View)bindable;
504 if (newValue != null)
506 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION, new Tizen.NUI.PropertyValue( new Position((Position2D)newValue) ));
509 defaultValueCreator:(bindable) =>
511 var view = (View)bindable;
512 Position temp = new Position(0.0f, 0.0f, 0.0f);
513 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION).Get(temp);
514 return new Position2D(temp);
516 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
517 [EditorBrowsable(EditorBrowsableState.Never)]
518 public static readonly BindableProperty PositionUsesPivotPointProperty = BindableProperty.Create("PositionUsesPivotPoint", typeof(bool), typeof(View), true, propertyChanged: (bindable, oldValue, newValue) =>
520 var view = (View)bindable;
521 if (newValue != null)
523 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue((bool)newValue));
525 Console.WriteLine("View PositionUsesPivotPointProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
527 defaultValueCreator:(bindable) =>
529 var view = (View)bindable;
531 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_USES_ANCHOR_POINT).Get(out temp);
534 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
535 [EditorBrowsable(EditorBrowsableState.Never)]
536 public static readonly BindableProperty SiblingOrderProperty = BindableProperty.Create("SiblingOrder", typeof(int), typeof(View), default(int), propertyChanged: (bindable, oldValue, newValue) =>
538 var view = (View)bindable;
540 if (newValue != null)
542 value = (int)newValue;
545 NUILog.Error("SiblingOrder should be bigger than 0 or equal to 0.");
548 var siblings = view.GetParent()?.Children;
549 if (siblings != null)
551 int currentOrder = siblings.IndexOf(view);
552 if (value != currentOrder)
554 if (value == 0) { view.LowerToBottom(); }
555 else if (value < siblings.Count - 1)
557 if (value > currentOrder) { view.RaiseAbove(siblings[value]); }
558 else { view.LowerBelow(siblings[value]); }
560 else { view.RaiseToTop(); }
565 defaultValueCreator:(bindable) =>
567 var view = (View)bindable;
568 var parentChildren = view.GetParent()?.Children;
569 int currentOrder = 0;
570 if (parentChildren != null)
572 currentOrder = parentChildren.IndexOf(view);
574 if (currentOrder < 0) { return 0; }
575 else if (currentOrder < parentChildren.Count) { return currentOrder; }
580 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
581 [EditorBrowsable(EditorBrowsableState.Never)]
582 public static readonly BindableProperty ParentOriginProperty = BindableProperty.Create("ParentOrigin", typeof(Position), typeof(View), Position.ParentOriginTopLeft, propertyChanged: (bindable, oldValue, newValue) =>
584 var view = (View)bindable;
585 if (newValue != null)
587 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.PARENT_ORIGIN, new Tizen.NUI.PropertyValue((Position)newValue));
589 Console.WriteLine("View ParentOriginProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
591 defaultValueCreator:(bindable) =>
593 var view = (View)bindable;
594 Position temp = new Position(0.0f, 0.0f, 0.0f);
595 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.PARENT_ORIGIN).Get(temp);
599 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
600 [EditorBrowsable(EditorBrowsableState.Never)]
601 public static readonly BindableProperty PivotPointProperty = BindableProperty.Create("PivotPoint", typeof(Position), typeof(View), Position.PivotPointTopLeft, propertyChanged: (bindable, oldValue, newValue) =>
603 var view = (View)bindable;
604 if (newValue != null)
606 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue((Position)newValue));
608 Console.WriteLine("View PivotPointProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
610 defaultValueCreator:(bindable) =>
612 var view = (View)bindable;
613 Position temp = new Position(0.0f, 0.0f, 0.0f);
614 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.ANCHOR_POINT).Get(temp);
617 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
618 [EditorBrowsable(EditorBrowsableState.Never)]
619 public static readonly BindableProperty SizeWidthProperty = BindableProperty.Create("SizeWidth", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
621 var view = (View)bindable;
622 if (newValue != null)
624 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_WIDTH, new Tizen.NUI.PropertyValue((float)newValue));
626 Console.WriteLine("View SizeWidthProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
628 defaultValueCreator:(bindable) =>
630 var view = (View)bindable;
632 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_WIDTH).Get(out temp);
633 Console.WriteLine($"View SizeWidthProperty get Value: {temp}");
636 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
637 [EditorBrowsable(EditorBrowsableState.Never)]
638 public static readonly BindableProperty SizeHeightProperty = BindableProperty.Create("SizeHeight", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
640 var view = (View)bindable;
641 if (newValue != null)
643 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_HEIGHT, new Tizen.NUI.PropertyValue((float)newValue));
645 Console.WriteLine("View SizeHeightProperty changed: oldValue: " + oldValue + ", newValue: " + newValue);
647 defaultValueCreator:(bindable) =>
649 var view = (View)bindable;
651 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_HEIGHT).Get(out temp);
652 Console.WriteLine($"View SizeHeightProperty get Value: {temp}");
655 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
656 [EditorBrowsable(EditorBrowsableState.Never)]
657 public static readonly BindableProperty PositionProperty = BindableProperty.Create("Position", typeof(Position), typeof(View), Position.Zero, propertyChanged: (bindable, oldValue, newValue) =>
659 var view = (View)bindable;
660 if (newValue != null)
662 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION, new Tizen.NUI.PropertyValue((Position)newValue));
665 defaultValueCreator:(bindable) =>
667 var view = (View)bindable;
668 Position temp = new Position(0.0f, 0.0f, 0.0f);
669 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION).Get(temp);
672 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
673 [EditorBrowsable(EditorBrowsableState.Never)]
674 public static readonly BindableProperty PositionXProperty = BindableProperty.Create("PositionX", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
676 var view = (View)bindable;
677 if (newValue != null)
679 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_X, new Tizen.NUI.PropertyValue((float)newValue));
682 defaultValueCreator:(bindable) =>
684 var view = (View)bindable;
686 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_X).Get(out temp);
689 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
690 [EditorBrowsable(EditorBrowsableState.Never)]
691 public static readonly BindableProperty PositionYProperty = BindableProperty.Create("PositionY", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
693 var view = (View)bindable;
694 if (newValue != null)
696 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_Y, new Tizen.NUI.PropertyValue((float)newValue));
699 defaultValueCreator:(bindable) =>
701 var view = (View)bindable;
703 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_Y).Get(out temp);
706 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
707 [EditorBrowsable(EditorBrowsableState.Never)]
708 public static readonly BindableProperty PositionZProperty = BindableProperty.Create("PositionZ", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
710 var view = (View)bindable;
711 if (newValue != null)
713 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.POSITION_Z, new Tizen.NUI.PropertyValue((float)newValue));
716 defaultValueCreator:(bindable) =>
718 var view = (View)bindable;
720 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.POSITION_Z).Get(out temp);
723 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
724 [EditorBrowsable(EditorBrowsableState.Never)]
725 public static readonly BindableProperty OrientationProperty = BindableProperty.Create("Orientation", typeof(Rotation), typeof(View), new Rotation(new Radian(0), Vector3.ZAxis), propertyChanged: (bindable, oldValue, newValue) =>
727 var view = (View)bindable;
728 if (newValue != null)
730 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.ORIENTATION, new Tizen.NUI.PropertyValue((Rotation)newValue));
733 defaultValueCreator:(bindable) =>
735 var view = (View)bindable;
736 Rotation temp = new Rotation();
737 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.ORIENTATION).Get(temp);
740 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
741 [EditorBrowsable(EditorBrowsableState.Never)]
742 public static readonly BindableProperty ScaleProperty = BindableProperty.Create("Scale", typeof(Vector3), typeof(View), Vector3.Zero, propertyChanged: (bindable, oldValue, newValue) =>
744 var view = (View)bindable;
745 if (newValue != null)
747 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE, new Tizen.NUI.PropertyValue((Vector3)newValue));
750 defaultValueCreator:(bindable) =>
752 var view = (View)bindable;
753 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
754 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE).Get(temp);
757 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
758 [EditorBrowsable(EditorBrowsableState.Never)]
759 public static readonly BindableProperty ScaleXProperty = BindableProperty.Create("ScaleX", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
761 var view = (View)bindable;
762 if (newValue != null)
764 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_X, new Tizen.NUI.PropertyValue((float)newValue));
767 defaultValueCreator:(bindable) =>
769 var view = (View)bindable;
771 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_X).Get(out temp);
774 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
775 [EditorBrowsable(EditorBrowsableState.Never)]
776 public static readonly BindableProperty ScaleYProperty = BindableProperty.Create("ScaleY", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
778 var view = (View)bindable;
779 if (newValue != null)
781 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_Y, new Tizen.NUI.PropertyValue((float)newValue));
784 defaultValueCreator:(bindable) =>
786 var view = (View)bindable;
788 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_Y).Get(out temp);
791 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
792 [EditorBrowsable(EditorBrowsableState.Never)]
793 public static readonly BindableProperty ScaleZProperty = BindableProperty.Create("ScaleZ", typeof(float), typeof(View), default(float), propertyChanged: (bindable, oldValue, newValue) =>
795 var view = (View)bindable;
796 if (newValue != null)
798 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SCALE_Z, new Tizen.NUI.PropertyValue((float)newValue));
801 defaultValueCreator:(bindable) =>
803 var view = (View)bindable;
805 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SCALE_Z).Get(out temp);
808 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
809 [EditorBrowsable(EditorBrowsableState.Never)]
810 public static readonly BindableProperty NameProperty = BindableProperty.Create("Name", typeof(string), typeof(View), string.Empty, propertyChanged: (bindable, oldValue, newValue) =>
812 var view = (View)bindable;
813 if (newValue != null)
815 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.NAME, new Tizen.NUI.PropertyValue((string)newValue));
818 defaultValueCreator:(bindable) =>
820 var view = (View)bindable;
822 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.NAME).Get(out temp);
825 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
826 [EditorBrowsable(EditorBrowsableState.Never)]
827 public static readonly BindableProperty SensitiveProperty = BindableProperty.Create("Sensitive", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
829 var view = (View)bindable;
830 if (newValue != null)
832 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SENSITIVE, new Tizen.NUI.PropertyValue((bool)newValue));
835 defaultValueCreator:(bindable) =>
837 var view = (View)bindable;
839 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SENSITIVE).Get(out temp);
842 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
843 [EditorBrowsable(EditorBrowsableState.Never)]
844 public static readonly BindableProperty LeaveRequiredProperty = BindableProperty.Create("LeaveRequired", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
846 var view = (View)bindable;
847 if (newValue != null)
849 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.LEAVE_REQUIRED, new Tizen.NUI.PropertyValue((bool)newValue));
852 defaultValueCreator:(bindable) =>
854 var view = (View)bindable;
856 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.LEAVE_REQUIRED).Get(out temp);
859 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
860 [EditorBrowsable(EditorBrowsableState.Never)]
861 public static readonly BindableProperty InheritOrientationProperty = BindableProperty.Create("InheritOrientation", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
863 var view = (View)bindable;
864 if (newValue != null)
866 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_ORIENTATION, new Tizen.NUI.PropertyValue((bool)newValue));
869 defaultValueCreator:(bindable) =>
871 var view = (View)bindable;
873 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_ORIENTATION).Get(out temp);
876 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
877 [EditorBrowsable(EditorBrowsableState.Never)]
878 public static readonly BindableProperty InheritScaleProperty = BindableProperty.Create("InheritScale", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
880 var view = (View)bindable;
881 if (newValue != null)
883 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_SCALE, new Tizen.NUI.PropertyValue((bool)newValue));
886 defaultValueCreator:(bindable) =>
888 var view = (View)bindable;
890 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_SCALE).Get(out temp);
893 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
894 [EditorBrowsable(EditorBrowsableState.Never)]
895 public static readonly BindableProperty DrawModeProperty = BindableProperty.Create("DrawMode", typeof(DrawModeType), typeof(View), DrawModeType.Normal, propertyChanged: (bindable, oldValue, newValue) =>
897 var view = (View)bindable;
898 if (newValue != null)
900 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.DRAW_MODE, new Tizen.NUI.PropertyValue((int)newValue));
903 defaultValueCreator:(bindable) =>
905 var view = (View)bindable;
907 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.DRAW_MODE).Get(out temp) == false)
909 NUILog.Error("DrawMode get error!");
913 case "NORMAL": return DrawModeType.Normal;
914 case "OVERLAY_2D": return DrawModeType.Overlay2D;
915 case "STENCIL": return DrawModeType.Stencil;
916 default: return DrawModeType.Normal;
919 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
920 [EditorBrowsable(EditorBrowsableState.Never)]
921 public static readonly BindableProperty SizeModeFactorProperty = BindableProperty.Create("SizeModeFactor", typeof(Vector3), typeof(View), Vector3.Zero, propertyChanged: (bindable, oldValue, newValue) =>
923 var view = (View)bindable;
924 if (newValue != null)
926 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_MODE_FACTOR, new Tizen.NUI.PropertyValue((Vector3)newValue));
929 defaultValueCreator:(bindable) =>
931 var view = (View)bindable;
932 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
933 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_MODE_FACTOR).Get(temp);
936 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
937 [EditorBrowsable(EditorBrowsableState.Never)]
938 public static readonly BindableProperty WidthResizePolicyProperty = BindableProperty.Create("WidthResizePolicy", typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (bindable, oldValue, newValue) =>
940 var view = (View)bindable;
941 if (newValue != null)
943 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.WIDTH_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)newValue));
946 defaultValueCreator:(bindable) =>
948 var view = (View)bindable;
950 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.WIDTH_RESIZE_POLICY).Get(out temp) == false)
952 NUILog.Error("WidthResizePolicy get error!");
956 case "FIXED": return ResizePolicyType.Fixed;
957 case "USE_NATURAL_SIZE": return ResizePolicyType.UseNaturalSize;
958 case "FILL_TO_PARENT": return ResizePolicyType.FillToParent;
959 case "SIZE_RELATIVE_TO_PARENT": return ResizePolicyType.SizeRelativeToParent;
960 case "SIZE_FIXED_OFFSET_FROM_PARENT": return ResizePolicyType.SizeFixedOffsetFromParent;
961 case "FIT_TO_CHILDREN": return ResizePolicyType.FitToChildren;
962 case "DIMENSION_DEPENDENCY": return ResizePolicyType.DimensionDependency;
963 case "USE_ASSIGNED_SIZE": return ResizePolicyType.UseAssignedSize;
964 default: return ResizePolicyType.Fixed;
967 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
968 [EditorBrowsable(EditorBrowsableState.Never)]
969 public static readonly BindableProperty HeightResizePolicyProperty = BindableProperty.Create("HeightResizePolicy", typeof(ResizePolicyType), typeof(View), ResizePolicyType.Fixed, propertyChanged: (bindable, oldValue, newValue) =>
971 var view = (View)bindable;
972 if (newValue != null)
974 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.HEIGHT_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)newValue));
977 defaultValueCreator:(bindable) =>
979 var view = (View)bindable;
981 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.HEIGHT_RESIZE_POLICY).Get(out temp) == false)
983 NUILog.Error("HeightResizePolicy get error!");
987 case "FIXED": return ResizePolicyType.Fixed;
988 case "USE_NATURAL_SIZE": return ResizePolicyType.UseNaturalSize;
989 case "FILL_TO_PARENT": return ResizePolicyType.FillToParent;
990 case "SIZE_RELATIVE_TO_PARENT": return ResizePolicyType.SizeRelativeToParent;
991 case "SIZE_FIXED_OFFSET_FROM_PARENT": return ResizePolicyType.SizeFixedOffsetFromParent;
992 case "FIT_TO_CHILDREN": return ResizePolicyType.FitToChildren;
993 case "DIMENSION_DEPENDENCY": return ResizePolicyType.DimensionDependency;
994 case "USE_ASSIGNED_SIZE": return ResizePolicyType.UseAssignedSize;
995 default: return ResizePolicyType.Fixed;
998 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
999 [EditorBrowsable(EditorBrowsableState.Never)]
1000 public static readonly BindableProperty SizeScalePolicyProperty = BindableProperty.Create("SizeScalePolicy", typeof(SizeScalePolicyType), typeof(View), SizeScalePolicyType.UseSizeSet, propertyChanged: (bindable, oldValue, newValue) =>
1002 var view = (View)bindable;
1003 string valueToString = "";
1004 if (newValue != null)
1006 switch ((SizeScalePolicyType)newValue)
1008 case SizeScalePolicyType.UseSizeSet: { valueToString = "USE_SIZE_SET"; break; }
1009 case SizeScalePolicyType.FitWithAspectRatio: { valueToString = "FIT_WITH_ASPECT_RATIO"; break; }
1010 case SizeScalePolicyType.FillWithAspectRatio: { valueToString = "FILL_WITH_ASPECT_RATIO"; break; }
1011 default: { valueToString = "USE_SIZE_SET"; break; }
1013 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE_SCALE_POLICY, new Tizen.NUI.PropertyValue(valueToString));
1016 defaultValueCreator:(bindable) =>
1018 var view = (View)bindable;
1020 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE_SCALE_POLICY).Get(out temp) == false)
1022 NUILog.Error("SizeScalePolicy get error!");
1026 case "USE_SIZE_SET": return SizeScalePolicyType.UseSizeSet;
1027 case "FIT_WITH_ASPECT_RATIO": return SizeScalePolicyType.FitWithAspectRatio;
1028 case "FILL_WITH_ASPECT_RATIO": return SizeScalePolicyType.FillWithAspectRatio;
1029 default: return SizeScalePolicyType.UseSizeSet;
1032 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1033 [EditorBrowsable(EditorBrowsableState.Never)]
1034 public static readonly BindableProperty WidthForHeightProperty = BindableProperty.Create("WidthForHeight", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1036 var view = (View)bindable;
1037 if (newValue != null)
1039 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.WIDTH_FOR_HEIGHT, new Tizen.NUI.PropertyValue((bool)newValue));
1042 defaultValueCreator:(bindable) =>
1044 var view = (View)bindable;
1046 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.WIDTH_FOR_HEIGHT).Get(out temp);
1049 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1050 [EditorBrowsable(EditorBrowsableState.Never)]
1051 public static readonly BindableProperty HeightForWidthProperty = BindableProperty.Create("HeightForWidth", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1053 var view = (View)bindable;
1054 if (newValue != null)
1056 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.HEIGHT_FOR_WIDTH, new Tizen.NUI.PropertyValue((bool)newValue));
1059 defaultValueCreator:(bindable) =>
1061 var view = (View)bindable;
1063 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.HEIGHT_FOR_WIDTH).Get(out temp);
1066 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1067 [EditorBrowsable(EditorBrowsableState.Never)]
1068 public static readonly BindableProperty PaddingProperty = BindableProperty.Create("Padding", typeof(Extents), typeof(View), new Extents(0,0,0,0), propertyChanged: (bindable, oldValue, newValue) =>
1070 var view = (View)bindable;
1071 if (newValue != null)
1073 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.PADDING, new Tizen.NUI.PropertyValue((Extents)newValue));
1076 defaultValueCreator:(bindable) =>
1078 var view = (View)bindable;
1079 Extents temp = new Extents(0, 0, 0, 0);
1080 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.PADDING).Get(temp);
1083 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1084 [EditorBrowsable(EditorBrowsableState.Never)]
1085 public static readonly BindableProperty SizeProperty = BindableProperty.Create("Size", typeof(Size), typeof(View), new Size(0,0,0), propertyChanged: (bindable, oldValue, newValue) =>
1087 var view = (View)bindable;
1088 if (newValue != null)
1090 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.SIZE, new Tizen.NUI.PropertyValue((Size)newValue));
1093 defaultValueCreator: (bindable) => {
1094 var view = (View)bindable;
1095 Size temp = new Size(0, 0, 0);
1096 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.SIZE).Get(temp);
1099 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1100 [EditorBrowsable(EditorBrowsableState.Never)]
1101 public static readonly BindableProperty MinimumSizeProperty = BindableProperty.Create("MinimumSize", typeof(Size2D), typeof(View), new Size2D(0,0), propertyChanged: (bindable, oldValue, newValue) =>
1103 var view = (View)bindable;
1104 if (newValue != null)
1106 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MINIMUM_SIZE, new Tizen.NUI.PropertyValue((Size2D)newValue));
1109 defaultValueCreator:(bindable) =>
1111 var view = (View)bindable;
1112 Size2D temp = new Size2D(0, 0);
1113 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MINIMUM_SIZE).Get(temp);
1116 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1117 [EditorBrowsable(EditorBrowsableState.Never)]
1118 public static readonly BindableProperty MaximumSizeProperty = BindableProperty.Create("MaximumSize", typeof(Size2D), typeof(View), new Size2D(0,0), propertyChanged: (bindable, oldValue, newValue) =>
1120 var view = (View)bindable;
1121 if (newValue != null)
1123 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MAXIMUM_SIZE, new Tizen.NUI.PropertyValue((Size2D)newValue));
1126 defaultValueCreator:(bindable) =>
1128 var view = (View)bindable;
1129 Size2D temp = new Size2D(0, 0);
1130 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MAXIMUM_SIZE).Get(temp);
1133 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1134 [EditorBrowsable(EditorBrowsableState.Never)]
1135 public static readonly BindableProperty InheritPositionProperty = BindableProperty.Create("InheritPosition", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1137 var view = (View)bindable;
1138 if (newValue != null)
1140 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_POSITION, new Tizen.NUI.PropertyValue((bool)newValue));
1143 defaultValueCreator:(bindable) =>
1145 var view = (View)bindable;
1147 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_POSITION).Get(out temp);
1150 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1151 [EditorBrowsable(EditorBrowsableState.Never)]
1152 public static readonly BindableProperty ClippingModeProperty = BindableProperty.Create("ClippingMode", typeof(ClippingModeType), typeof(View), ClippingModeType.Disabled, propertyChanged: (bindable, oldValue, newValue) =>
1154 var view = (View)bindable;
1155 if (newValue != null)
1157 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.CLIPPING_MODE, new Tizen.NUI.PropertyValue((int)newValue));
1160 defaultValueCreator:(bindable) =>
1162 var view = (View)bindable;
1164 if (Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.CLIPPING_MODE).Get(out temp) == false)
1166 NUILog.Error("ClippingMode get error!");
1170 case "DISABLED": return ClippingModeType.Disabled;
1171 case "CLIP_CHILDREN": return ClippingModeType.ClipChildren;
1172 case "CLIP_TO_BOUNDING_BOX": return ClippingModeType.ClipToBoundingBox;
1173 default: return ClippingModeType.Disabled;
1176 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1177 [EditorBrowsable(EditorBrowsableState.Never)]
1178 public static readonly BindableProperty InheritLayoutDirectionProperty = BindableProperty.Create("InheritLayoutDirection", typeof(bool), typeof(View), false, propertyChanged: (bindable, oldValue, newValue) =>
1180 var view = (View)bindable;
1181 if (newValue != null)
1183 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.INHERIT_LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue((bool)newValue));
1186 defaultValueCreator:(bindable) =>
1188 var view = (View)bindable;
1190 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.INHERIT_LAYOUT_DIRECTION).Get(out temp);
1193 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1194 [EditorBrowsable(EditorBrowsableState.Never)]
1195 public static readonly BindableProperty LayoutDirectionProperty = BindableProperty.Create("LayoutDirection", typeof(ViewLayoutDirectionType), typeof(View), ViewLayoutDirectionType.LTR, propertyChanged: (bindable, oldValue, newValue) =>
1197 var view = (View)bindable;
1198 if (newValue != null)
1200 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue((int)newValue));
1203 defaultValueCreator:(bindable) =>
1205 var view = (View)bindable;
1207 if (false == Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.LAYOUT_DIRECTION).Get(out temp))
1209 NUILog.Error("LAYOUT_DIRECTION get error!");
1211 return (ViewLayoutDirectionType)temp;
1213 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1214 [EditorBrowsable(EditorBrowsableState.Never)]
1215 public static readonly BindableProperty MarginProperty = BindableProperty.Create("Margin", typeof(Extents), typeof(View), new Extents(0,0,0,0), propertyChanged: (bindable, oldValue, newValue) =>
1217 var view = (View)bindable;
1218 if (newValue != null)
1220 Tizen.NUI.Object.SetProperty(view.swigCPtr, View.Property.MARGIN, new Tizen.NUI.PropertyValue((Extents)newValue));
1223 defaultValueCreator:(bindable) =>
1225 var view = (View)bindable;
1226 Extents temp = new Extents(0, 0, 0, 0);
1227 Tizen.NUI.Object.GetProperty(view.swigCPtr, View.Property.MARGIN).Get(temp);
1230 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1231 [EditorBrowsable(EditorBrowsableState.Never)]
1232 public static readonly BindableProperty StyleProperty = BindableProperty.Create("Style", typeof(Style), typeof(View), default(Style),
1233 propertyChanged: (bindable, oldvalue, newvalue) => ((View)bindable)._mergedStyle.Style = (Style)newvalue);
1236 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
1238 internal View(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.View_SWIGUpcast(cPtr), cMemoryOwn)
1240 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
1243 PositionUsesPivotPoint = false;
1245 _mergedStyle = new MergedStyle(GetType(), this);
1248 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(View obj)
1250 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
1254 /// Event argument passed through ChildAdded event
1256 /// <since_tizen> 5 </since_tizen>
1257 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1258 [EditorBrowsable(EditorBrowsableState.Never)]
1259 public class ChildAddedEventArgs : EventArgs
1262 /// Added child View at moment
1264 /// <since_tizen> 5 </since_tizen>
1265 public View Added { get; set; }
1269 /// Event when a child is added
1271 /// <since_tizen> 5 </since_tizen>
1272 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1273 [EditorBrowsable(EditorBrowsableState.Never)]
1274 public new event EventHandler<ChildAddedEventArgs> ChildAdded;
1276 // From Container Base class
1278 /// Adds a child view to this view.
1280 /// <seealso cref="Container.Add" />
1281 /// <since_tizen> 4 </since_tizen>
1282 public override void Add(View child)
1284 Container oldParent = child.Parent;
1285 if (oldParent != this)
1287 if (oldParent != null)
1289 oldParent.Remove(child);
1292 LayoutItem layoutItem = new LayoutItem();
1293 child.Layout = layoutItem;
1295 NDalicPINVOKE.Actor_Add(swigCPtr, View.getCPtr(child));
1296 if (NDalicPINVOKE.SWIGPendingException.Pending)
1297 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1298 Children.Add(child);
1300 if (ChildAdded != null)
1302 ChildAddedEventArgs e = new ChildAddedEventArgs
1306 ChildAdded(this, e);
1312 /// Event argument passed through ChildRemoved event
1314 /// <since_tizen> 5 </since_tizen>
1315 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1316 [EditorBrowsable(EditorBrowsableState.Never)]
1317 public class ChildRemovedEventArgs : EventArgs
1320 /// Removed child View at moment
1322 /// <since_tizen> 5 </since_tizen>
1323 public View Removed { get; set; }
1327 /// Event when a child is removed
1329 /// <since_tizen> 5 </since_tizen>
1330 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
1331 [EditorBrowsable(EditorBrowsableState.Never)]
1332 public new event EventHandler<ChildRemovedEventArgs> ChildRemoved;
1336 /// Removes a child view from this View. If the view was not a child of this view, this is a no-op.
1338 /// <seealso cref="Container.Remove" />
1339 /// <since_tizen> 4 </since_tizen>
1340 public override void Remove(View child)
1342 NDalicPINVOKE.Actor_Remove(swigCPtr, View.getCPtr(child));
1343 if (NDalicPINVOKE.SWIGPendingException.Pending)
1344 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1346 Children.Remove(child);
1348 if (ChildRemoved != null)
1350 ChildRemovedEventArgs e = new ChildRemovedEventArgs
1354 ChildRemoved(this, e);
1359 /// Retrieves a child view by index.
1361 /// <seealso cref="Container.GetChildAt" />
1362 /// <since_tizen> 4 </since_tizen>
1363 public override View GetChildAt(uint index)
1365 if (index < Children.Count)
1367 return Children[Convert.ToInt32(index)];
1376 /// Retrieves the number of children held by the view.
1378 /// <seealso cref="Container.GetChildCount" />
1379 /// <since_tizen> 4 </since_tizen>
1380 public override uint GetChildCount()
1382 return Convert.ToUInt32(Children.Count);
1386 /// Gets the views parent.
1388 /// <seealso cref="Container.GetParent()" />
1389 /// <since_tizen> 4 </since_tizen>
1390 public override Container GetParent()
1392 //to fix memory leak issue, match the handle count with native side.
1393 IntPtr cPtr = NDalicPINVOKE.Actor_GetParent(swigCPtr);
1394 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
1395 BaseHandle basehandle = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle);
1396 NDalicPINVOKE.delete_BaseHandle(CPtr);
1397 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
1399 if (NDalicPINVOKE.SWIGPendingException.Pending)
1400 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1402 return basehandle as Container;
1405 internal bool IsTopLevelView()
1407 if (GetParent() is Layer)
1415 /// you can override it to clean-up your own resources.
1417 /// <param name="type">DisposeTypes</param>
1418 /// <since_tizen> 3 </since_tizen>
1419 protected override void Dispose(DisposeTypes type)
1426 if (type == DisposeTypes.Explicit)
1429 //Release your own managed resources here.
1430 //You should release all of your own disposable objects here.
1433 //Release your own unmanaged resources here.
1434 //You should not access any managed member here except static instance.
1435 //because the execution order of Finalizes is non-deterministic.
1438 DisConnectFromSignals();
1441 if (swigCPtr.Handle != global::System.IntPtr.Zero)
1445 swigCMemOwn = false;
1446 NDalicPINVOKE.delete_View(swigCPtr);
1448 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
1455 private void DisConnectFromSignals()
1457 // Save current CPtr.
1458 global::System.Runtime.InteropServices.HandleRef currentCPtr = swigCPtr;
1460 // Use BaseHandle CPtr as current might have been deleted already in derived classes.
1461 swigCPtr = GetBaseHandleCPtrHandleRef;
1463 if (_onRelayoutEventCallback != null)
1465 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
1468 if (_offWindowEventCallback != null)
1470 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
1473 if (_onWindowEventCallback != null)
1475 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
1478 if (_wheelEventCallback != null)
1480 this.WheelEventSignal().Disconnect(_wheelEventCallback);
1483 if (_hoverEventCallback != null)
1485 this.HoveredSignal().Disconnect(_hoverEventCallback);
1488 if (_touchDataCallback != null)
1490 this.TouchSignal().Disconnect(_touchDataCallback);
1493 if (_ResourcesLoadedCallback != null)
1495 this.ResourcesLoadedSignal().Disconnect(_ResourcesLoadedCallback);
1498 if (_offWindowEventCallback != null)
1500 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
1503 if (_onWindowEventCallback != null)
1505 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
1508 if (_wheelEventCallback != null)
1510 this.WheelEventSignal().Disconnect(_wheelEventCallback);
1513 if (_hoverEventCallback != null)
1515 this.HoveredSignal().Disconnect(_hoverEventCallback);
1518 if (_touchDataCallback != null)
1520 this.TouchSignal().Disconnect(_touchDataCallback);
1523 if (_onRelayoutEventCallback != null)
1525 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
1528 if (_keyCallback != null)
1530 this.KeyEventSignal().Disconnect(_keyCallback);
1533 if (_keyInputFocusLostCallback != null)
1535 this.KeyInputFocusLostSignal().Disconnect(_keyInputFocusLostCallback);
1538 if (_keyInputFocusGainedCallback != null)
1540 this.KeyInputFocusGainedSignal().Disconnect(_keyInputFocusGainedCallback);
1543 // BaseHandle CPtr is used in Registry and there is danger of deletion if we keep using it here.
1544 // Restore current CPtr.
1545 swigCPtr = currentCPtr;
1548 private EventHandler _keyInputFocusGainedEventHandler;
1549 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1550 private delegate void KeyInputFocusGainedCallbackType(IntPtr control);
1551 private KeyInputFocusGainedCallbackType _keyInputFocusGainedCallback;
1554 /// An event for the KeyInputFocusGained signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1555 /// The KeyInputFocusGained signal is emitted when the control gets the key input focus.<br />
1557 /// <since_tizen> 3 </since_tizen>
1558 public event EventHandler FocusGained
1562 if (_keyInputFocusGainedEventHandler == null)
1564 _keyInputFocusGainedCallback = OnKeyInputFocusGained;
1565 this.KeyInputFocusGainedSignal().Connect(_keyInputFocusGainedCallback);
1568 _keyInputFocusGainedEventHandler += value;
1573 _keyInputFocusGainedEventHandler -= value;
1575 if (_keyInputFocusGainedEventHandler == null && KeyInputFocusGainedSignal().Empty() == false)
1577 this.KeyInputFocusGainedSignal().Disconnect(_keyInputFocusGainedCallback);
1582 private void OnKeyInputFocusGained(IntPtr view)
1584 if (_keyInputFocusGainedEventHandler != null)
1586 _keyInputFocusGainedEventHandler(this, null);
1591 private EventHandler _keyInputFocusLostEventHandler;
1592 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1593 private delegate void KeyInputFocusLostCallbackType(IntPtr control);
1594 private KeyInputFocusLostCallbackType _keyInputFocusLostCallback;
1597 /// An event for the KeyInputFocusLost signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1598 /// The KeyInputFocusLost signal is emitted when the control loses the key input focus.<br />
1600 /// <since_tizen> 3 </since_tizen>
1601 public event EventHandler FocusLost
1605 if (_keyInputFocusLostEventHandler == null)
1607 _keyInputFocusLostCallback = OnKeyInputFocusLost;
1608 this.KeyInputFocusLostSignal().Connect(_keyInputFocusLostCallback);
1611 _keyInputFocusLostEventHandler += value;
1616 _keyInputFocusLostEventHandler -= value;
1618 if (_keyInputFocusLostEventHandler == null && KeyInputFocusLostSignal().Empty() == false)
1620 this.KeyInputFocusLostSignal().Disconnect(_keyInputFocusLostCallback);
1625 private void OnKeyInputFocusLost(IntPtr view)
1627 if (_keyInputFocusLostEventHandler != null)
1629 _keyInputFocusLostEventHandler(this, null);
1634 /// Event arguments that passed via the KeyEvent signal.
1636 /// <since_tizen> 3 </since_tizen>
1637 public class KeyEventArgs : EventArgs
1642 /// Key - is the key sent to the view.
1644 /// <since_tizen> 3 </since_tizen>
1658 private EventHandlerWithReturnType<object, KeyEventArgs, bool> _keyEventHandler;
1659 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1660 private delegate bool KeyCallbackType(IntPtr control, IntPtr keyEvent);
1661 private KeyCallbackType _keyCallback;
1664 /// An event for the KeyPressed signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1665 /// The KeyPressed signal is emitted when the key event is received.<br />
1667 /// <since_tizen> 3 </since_tizen>
1668 public event EventHandlerWithReturnType<object, KeyEventArgs, bool> KeyEvent
1672 if (_keyEventHandler == null)
1674 _keyCallback = OnKeyEvent;
1675 this.KeyEventSignal().Connect(_keyCallback);
1678 _keyEventHandler += value;
1683 _keyEventHandler -= value;
1685 if (_keyEventHandler == null && KeyEventSignal().Empty() == false)
1687 this.KeyEventSignal().Disconnect(_keyCallback);
1692 private bool OnKeyEvent(IntPtr view, IntPtr keyEvent)
1694 if (keyEvent == global::System.IntPtr.Zero)
1696 NUILog.Error("keyEvent should not be null!");
1700 KeyEventArgs e = new KeyEventArgs();
1702 bool result = false;
1704 e.Key = Tizen.NUI.Key.GetKeyFromPtr(keyEvent);
1706 if (_keyEventHandler != null)
1708 Delegate[] delegateList = _keyEventHandler.GetInvocationList();
1710 // Oring the result of each callback.
1711 foreach (EventHandlerWithReturnType<object, KeyEventArgs, bool> del in delegateList)
1713 result |= del(this, e);
1720 private EventHandler _onRelayoutEventHandler;
1721 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1722 private delegate void OnRelayoutEventCallbackType(IntPtr control);
1723 private OnRelayoutEventCallbackType _onRelayoutEventCallback;
1726 /// An event for the OnRelayout signal which can be used to subscribe or unsubscribe the event handler.<br />
1727 /// The OnRelayout signal is emitted after the size has been set on the view during relayout.<br />
1729 /// <since_tizen> 3 </since_tizen>
1730 public event EventHandler Relayout
1734 if (_onRelayoutEventHandler == null)
1736 _onRelayoutEventCallback = OnRelayout;
1737 this.OnRelayoutSignal().Connect(_onRelayoutEventCallback);
1740 _onRelayoutEventHandler += value;
1745 _onRelayoutEventHandler -= value;
1747 if (_onRelayoutEventHandler == null && OnRelayoutSignal().Empty() == false)
1749 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
1755 // Callback for View OnRelayout signal
1756 private void OnRelayout(IntPtr data)
1758 if (_onRelayoutEventHandler != null)
1760 _onRelayoutEventHandler(this, null);
1765 /// Event arguments that passed via the touch signal.
1767 /// <since_tizen> 3 </since_tizen>
1768 public class TouchEventArgs : EventArgs
1770 private Touch _touch;
1773 /// Touch - contains the information of touch points.
1775 /// <since_tizen> 3 </since_tizen>
1789 private EventHandlerWithReturnType<object, TouchEventArgs, bool> _touchDataEventHandler;
1790 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1791 private delegate bool TouchDataCallbackType(IntPtr view, IntPtr touchData);
1792 private TouchDataCallbackType _touchDataCallback;
1795 /// An event for the touched signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1796 /// The touched signal is emitted when the touch input is received.<br />
1798 /// <since_tizen> 3 </since_tizen>
1799 public event EventHandlerWithReturnType<object, TouchEventArgs, bool> TouchEvent
1803 if (_touchDataEventHandler == null)
1805 _touchDataCallback = OnTouch;
1806 this.TouchSignal().Connect(_touchDataCallback);
1809 _touchDataEventHandler += value;
1814 _touchDataEventHandler -= value;
1816 if (_touchDataEventHandler == null && TouchSignal().Empty() == false)
1818 this.TouchSignal().Disconnect(_touchDataCallback);
1824 // Callback for View TouchSignal
1825 private bool OnTouch(IntPtr view, IntPtr touchData)
1827 if (touchData == global::System.IntPtr.Zero)
1829 NUILog.Error("touchData should not be null!");
1833 TouchEventArgs e = new TouchEventArgs();
1835 e.Touch = Tizen.NUI.Touch.GetTouchFromPtr(touchData);
1837 if (_touchDataEventHandler != null)
1839 return _touchDataEventHandler(this, e);
1846 /// Event arguments that passed via the hover signal.
1848 /// <since_tizen> 3 </since_tizen>
1849 public class HoverEventArgs : EventArgs
1851 private Hover _hover;
1854 /// Hover - contains touch points that represent the points that are currently being hovered or the points where a hover has stopped.
1856 /// <since_tizen> 3 </since_tizen>
1870 private EventHandlerWithReturnType<object, HoverEventArgs, bool> _hoverEventHandler;
1871 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1872 private delegate bool HoverEventCallbackType(IntPtr view, IntPtr hoverEvent);
1873 private HoverEventCallbackType _hoverEventCallback;
1876 /// An event for the hovered signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1877 /// The hovered signal is emitted when the hover input is received.<br />
1879 /// <since_tizen> 3 </since_tizen>
1880 public event EventHandlerWithReturnType<object, HoverEventArgs, bool> HoverEvent
1884 if (_hoverEventHandler == null)
1886 _hoverEventCallback = OnHoverEvent;
1887 this.HoveredSignal().Connect(_hoverEventCallback);
1890 _hoverEventHandler += value;
1895 _hoverEventHandler -= value;
1897 if (_hoverEventHandler == null && HoveredSignal().Empty() == false)
1899 this.HoveredSignal().Disconnect(_hoverEventCallback);
1905 // Callback for View Hover signal
1906 private bool OnHoverEvent(IntPtr view, IntPtr hoverEvent)
1908 if (hoverEvent == global::System.IntPtr.Zero)
1910 NUILog.Error("hoverEvent should not be null!");
1914 HoverEventArgs e = new HoverEventArgs();
1916 e.Hover = Tizen.NUI.Hover.GetHoverFromPtr(hoverEvent);
1918 if (_hoverEventHandler != null)
1920 return _hoverEventHandler(this, e);
1927 /// Event arguments that passed via the wheel signal.
1929 /// <since_tizen> 3 </since_tizen>
1930 public class WheelEventArgs : EventArgs
1932 private Wheel _wheel;
1935 /// WheelEvent - store a wheel rolling type: MOUSE_WHEEL or CUSTOM_WHEEL.
1937 /// <since_tizen> 3 </since_tizen>
1951 private EventHandlerWithReturnType<object, WheelEventArgs, bool> _wheelEventHandler;
1952 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1953 private delegate bool WheelEventCallbackType(IntPtr view, IntPtr wheelEvent);
1954 private WheelEventCallbackType _wheelEventCallback;
1957 /// An event for the WheelMoved signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1958 /// The WheelMoved signal is emitted when the wheel event is received.<br />
1960 /// <since_tizen> 3 </since_tizen>
1961 public event EventHandlerWithReturnType<object, WheelEventArgs, bool> WheelEvent
1965 if (_wheelEventHandler == null)
1967 _wheelEventCallback = OnWheelEvent;
1968 this.WheelEventSignal().Connect(_wheelEventCallback);
1971 _wheelEventHandler += value;
1976 _wheelEventHandler -= value;
1978 if (_wheelEventHandler == null && WheelEventSignal().Empty() == false)
1980 this.WheelEventSignal().Disconnect(_wheelEventCallback);
1986 // Callback for View Wheel signal
1987 private bool OnWheelEvent(IntPtr view, IntPtr wheelEvent)
1989 if (wheelEvent == global::System.IntPtr.Zero)
1991 NUILog.Error("wheelEvent should not be null!");
1995 WheelEventArgs e = new WheelEventArgs();
1997 e.Wheel = Tizen.NUI.Wheel.GetWheelFromPtr(wheelEvent);
1999 if (_wheelEventHandler != null)
2001 return _wheelEventHandler(this, e);
2007 private EventHandler _onWindowEventHandler;
2008 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
2009 private delegate void OnWindowEventCallbackType(IntPtr control);
2010 private OnWindowEventCallbackType _onWindowEventCallback;
2013 /// An event for the OnWindow signal which can be used to subscribe or unsubscribe the event handler.<br />
2014 /// The OnWindow signal is emitted after the view has been connected to the window.<br />
2016 /// <since_tizen> 3 </since_tizen>
2017 public event EventHandler AddedToWindow
2021 if (_onWindowEventHandler == null)
2023 _onWindowEventCallback = OnWindow;
2024 this.OnWindowSignal().Connect(_onWindowEventCallback);
2027 _onWindowEventHandler += value;
2032 _onWindowEventHandler -= value;
2034 if (_onWindowEventHandler == null && OnWindowSignal().Empty() == false)
2036 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
2041 // Callback for View OnWindow signal
2042 private void OnWindow(IntPtr data)
2044 if (_onWindowEventHandler != null)
2046 _onWindowEventHandler(this, null);
2051 private EventHandler _offWindowEventHandler;
2052 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
2053 private delegate void OffWindowEventCallbackType(IntPtr control);
2054 private OffWindowEventCallbackType _offWindowEventCallback;
2057 /// An event for the OffWindow signal, which can be used to subscribe or unsubscribe the event handler.<br />
2058 /// OffWindow signal is emitted after the view has been disconnected from the window.<br />
2060 /// <since_tizen> 3 </since_tizen>
2061 public event EventHandler RemovedFromWindow
2065 if (_offWindowEventHandler == null)
2067 _offWindowEventCallback = OffWindow;
2068 this.OffWindowSignal().Connect(_offWindowEventCallback);
2071 _offWindowEventHandler += value;
2076 _offWindowEventHandler -= value;
2078 if (_offWindowEventHandler == null && OffWindowSignal().Empty() == false)
2080 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
2085 // Callback for View OffWindow signal
2086 private void OffWindow(IntPtr data)
2088 if (_offWindowEventHandler != null)
2090 _offWindowEventHandler(this, null);
2095 /// Event arguments of visibility changed.
2097 /// <since_tizen> 3 </since_tizen>
2098 public class VisibilityChangedEventArgs : EventArgs
2101 private bool _visibility;
2102 private VisibilityChangeType _type;
2105 /// The view, or child of view, whose visibility has changed.
2107 /// <since_tizen> 3 </since_tizen>
2121 /// Whether the view is now visible or not.
2123 /// <since_tizen> 3 </since_tizen>
2124 public bool Visibility
2132 _visibility = value;
2137 /// Whether the view's visible property has changed or a parent's.
2139 /// <since_tizen> 3 </since_tizen>
2140 public VisibilityChangeType Type
2153 private EventHandler<VisibilityChangedEventArgs> _visibilityChangedEventHandler;
2154 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
2155 private delegate void VisibilityChangedEventCallbackType(IntPtr data, bool visibility, VisibilityChangeType type);
2156 private VisibilityChangedEventCallbackType _visibilityChangedEventCallback;
2159 /// An event for visibility change which can be used to subscribe or unsubscribe the event handler.<br />
2160 /// This signal is emitted when the visible property of this or a parent view is changed.<br />
2162 /// <since_tizen> 3 </since_tizen>
2163 public event EventHandler<VisibilityChangedEventArgs> VisibilityChanged
2167 if (_visibilityChangedEventHandler == null)
2169 _visibilityChangedEventCallback = OnVisibilityChanged;
2170 VisibilityChangedSignal(this).Connect(_visibilityChangedEventCallback);
2173 _visibilityChangedEventHandler += value;
2178 _visibilityChangedEventHandler -= value;
2180 if (_visibilityChangedEventHandler == null && VisibilityChangedSignal(this).Empty() == false)
2182 VisibilityChangedSignal(this).Disconnect(_visibilityChangedEventCallback);
2187 // Callback for View visibility change signal
2188 private void OnVisibilityChanged(IntPtr data, bool visibility, VisibilityChangeType type)
2190 VisibilityChangedEventArgs e = new VisibilityChangedEventArgs();
2193 e.View = Registry.GetManagedBaseHandleFromNativePtr(data) as View;
2195 e.Visibility = visibility;
2198 if (_visibilityChangedEventHandler != null)
2200 _visibilityChangedEventHandler(this, e);
2206 /// Event arguments of layout direction changed.
2208 /// <since_tizen> 4 </since_tizen>
2209 public class LayoutDirectionChangedEventArgs : EventArgs
2212 private ViewLayoutDirectionType _type;
2215 /// The view, or child of view, whose layout direction has changed.
2217 /// <since_tizen> 4 </since_tizen>
2231 /// Whether the view's layout direction property has changed or a parent's.
2233 /// <since_tizen> 4 </since_tizen>
2234 public ViewLayoutDirectionType Type
2247 private EventHandler<LayoutDirectionChangedEventArgs> _layoutDirectionChangedEventHandler;
2248 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
2249 private delegate void LayoutDirectionChangedEventCallbackType(IntPtr data, ViewLayoutDirectionType type);
2250 private LayoutDirectionChangedEventCallbackType _layoutDirectionChangedEventCallback;
2253 /// Event for layout direction change which can be used to subscribe/unsubscribe the event handler.<br />
2254 /// This signal is emitted when the layout direction property of this or a parent view is changed.<br />
2256 /// <since_tizen> 4 </since_tizen>
2257 public event EventHandler<LayoutDirectionChangedEventArgs> LayoutDirectionChanged
2261 if (_layoutDirectionChangedEventHandler == null)
2263 _layoutDirectionChangedEventCallback = OnLayoutDirectionChanged;
2264 LayoutDirectionChangedSignal(this).Connect(_layoutDirectionChangedEventCallback);
2267 _layoutDirectionChangedEventHandler += value;
2272 _layoutDirectionChangedEventHandler -= value;
2274 if (_layoutDirectionChangedEventHandler == null && LayoutDirectionChangedSignal(this).Empty() == false)
2276 LayoutDirectionChangedSignal(this).Disconnect(_layoutDirectionChangedEventCallback);
2281 // Callback for View layout direction change signal
2282 private void OnLayoutDirectionChanged(IntPtr data, ViewLayoutDirectionType type)
2284 LayoutDirectionChangedEventArgs e = new LayoutDirectionChangedEventArgs();
2287 e.View = Registry.GetManagedBaseHandleFromNativePtr(data) as View;
2291 if (_layoutDirectionChangedEventHandler != null)
2293 _layoutDirectionChangedEventHandler(this, e);
2297 // Resource Ready Signal
2299 private EventHandler _resourcesLoadedEventHandler;
2300 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
2301 private delegate void ResourcesLoadedCallbackType(IntPtr control);
2302 private ResourcesLoadedCallbackType _ResourcesLoadedCallback;
2305 /// An event for the ResourcesLoadedSignal signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
2306 /// This signal is emitted after all resources required by a view are loaded and ready.<br />
2308 /// <since_tizen> 3 </since_tizen>
2309 public event EventHandler ResourcesLoaded
2313 if (_resourcesLoadedEventHandler == null)
2315 _ResourcesLoadedCallback = OnResourcesLoaded;
2316 this.ResourcesLoadedSignal().Connect(_ResourcesLoadedCallback);
2319 _resourcesLoadedEventHandler += value;
2324 _resourcesLoadedEventHandler -= value;
2326 if (_resourcesLoadedEventHandler == null && ResourcesLoadedSignal().Empty() == false)
2328 this.ResourcesLoadedSignal().Disconnect(_ResourcesLoadedCallback);
2333 private void OnResourcesLoaded(IntPtr view)
2335 if (_resourcesLoadedEventHandler != null)
2337 _resourcesLoadedEventHandler(this, null);
2341 internal IntPtr GetPtrfromView()
2343 return (IntPtr)swigCPtr;
2346 internal class Property
2348 internal static readonly int TOOLTIP = NDalicManualPINVOKE.View_Property_TOOLTIP_get();
2349 internal static readonly int STATE = NDalicManualPINVOKE.View_Property_STATE_get();
2350 internal static readonly int SUB_STATE = NDalicManualPINVOKE.View_Property_SUB_STATE_get();
2351 internal static readonly int LEFT_FOCUSABLE_VIEW_ID = NDalicManualPINVOKE.View_Property_LEFT_FOCUSABLE_ACTOR_ID_get();
2352 internal static readonly int RIGHT_FOCUSABLE_VIEW_ID = NDalicManualPINVOKE.View_Property_RIGHT_FOCUSABLE_ACTOR_ID_get();
2353 internal static readonly int UP_FOCUSABLE_VIEW_ID = NDalicManualPINVOKE.View_Property_UP_FOCUSABLE_ACTOR_ID_get();
2354 internal static readonly int DOWN_FOCUSABLE_VIEW_ID = NDalicManualPINVOKE.View_Property_DOWN_FOCUSABLE_ACTOR_ID_get();
2355 internal static readonly int STYLE_NAME = NDalicPINVOKE.View_Property_STYLE_NAME_get();
2356 internal static readonly int BACKGROUND = NDalicPINVOKE.View_Property_BACKGROUND_get();
2357 internal static readonly int SIBLING_ORDER = NDalicManualPINVOKE.Actor_Property_SIBLING_ORDER_get();
2358 internal static readonly int OPACITY = NDalicManualPINVOKE.Actor_Property_OPACITY_get();
2359 internal static readonly int SCREEN_POSITION = NDalicManualPINVOKE.Actor_Property_SCREEN_POSITION_get();
2360 internal static readonly int POSITION_USES_ANCHOR_POINT = NDalicManualPINVOKE.Actor_Property_POSITION_USES_ANCHOR_POINT_get();
2361 internal static readonly int PARENT_ORIGIN = NDalicPINVOKE.Actor_Property_PARENT_ORIGIN_get();
2362 internal static readonly int PARENT_ORIGIN_X = NDalicPINVOKE.Actor_Property_PARENT_ORIGIN_X_get();
2363 internal static readonly int PARENT_ORIGIN_Y = NDalicPINVOKE.Actor_Property_PARENT_ORIGIN_Y_get();
2364 internal static readonly int PARENT_ORIGIN_Z = NDalicPINVOKE.Actor_Property_PARENT_ORIGIN_Z_get();
2365 internal static readonly int ANCHOR_POINT = NDalicPINVOKE.Actor_Property_ANCHOR_POINT_get();
2366 internal static readonly int ANCHOR_POINT_X = NDalicPINVOKE.Actor_Property_ANCHOR_POINT_X_get();
2367 internal static readonly int ANCHOR_POINT_Y = NDalicPINVOKE.Actor_Property_ANCHOR_POINT_Y_get();
2368 internal static readonly int ANCHOR_POINT_Z = NDalicPINVOKE.Actor_Property_ANCHOR_POINT_Z_get();
2369 internal static readonly int SIZE = NDalicPINVOKE.Actor_Property_SIZE_get();
2370 internal static readonly int SIZE_WIDTH = NDalicPINVOKE.Actor_Property_SIZE_WIDTH_get();
2371 internal static readonly int SIZE_HEIGHT = NDalicPINVOKE.Actor_Property_SIZE_HEIGHT_get();
2372 internal static readonly int SIZE_DEPTH = NDalicPINVOKE.Actor_Property_SIZE_DEPTH_get();
2373 internal static readonly int POSITION = NDalicPINVOKE.Actor_Property_POSITION_get();
2374 internal static readonly int POSITION_X = NDalicPINVOKE.Actor_Property_POSITION_X_get();
2375 internal static readonly int POSITION_Y = NDalicPINVOKE.Actor_Property_POSITION_Y_get();
2376 internal static readonly int POSITION_Z = NDalicPINVOKE.Actor_Property_POSITION_Z_get();
2377 internal static readonly int WORLD_POSITION = NDalicPINVOKE.Actor_Property_WORLD_POSITION_get();
2378 internal static readonly int WORLD_POSITION_X = NDalicPINVOKE.Actor_Property_WORLD_POSITION_X_get();
2379 internal static readonly int WORLD_POSITION_Y = NDalicPINVOKE.Actor_Property_WORLD_POSITION_Y_get();
2380 internal static readonly int WORLD_POSITION_Z = NDalicPINVOKE.Actor_Property_WORLD_POSITION_Z_get();
2381 internal static readonly int ORIENTATION = NDalicPINVOKE.Actor_Property_ORIENTATION_get();
2382 internal static readonly int WORLD_ORIENTATION = NDalicPINVOKE.Actor_Property_WORLD_ORIENTATION_get();
2383 internal static readonly int SCALE = NDalicPINVOKE.Actor_Property_SCALE_get();
2384 internal static readonly int SCALE_X = NDalicPINVOKE.Actor_Property_SCALE_X_get();
2385 internal static readonly int SCALE_Y = NDalicPINVOKE.Actor_Property_SCALE_Y_get();
2386 internal static readonly int SCALE_Z = NDalicPINVOKE.Actor_Property_SCALE_Z_get();
2387 internal static readonly int WORLD_SCALE = NDalicPINVOKE.Actor_Property_WORLD_SCALE_get();
2388 internal static readonly int VISIBLE = NDalicPINVOKE.Actor_Property_VISIBLE_get();
2389 internal static readonly int WORLD_COLOR = NDalicPINVOKE.Actor_Property_WORLD_COLOR_get();
2390 internal static readonly int WORLD_MATRIX = NDalicPINVOKE.Actor_Property_WORLD_MATRIX_get();
2391 internal static readonly int NAME = NDalicPINVOKE.Actor_Property_NAME_get();
2392 internal static readonly int SENSITIVE = NDalicPINVOKE.Actor_Property_SENSITIVE_get();
2393 internal static readonly int LEAVE_REQUIRED = NDalicPINVOKE.Actor_Property_LEAVE_REQUIRED_get();
2394 internal static readonly int INHERIT_ORIENTATION = NDalicPINVOKE.Actor_Property_INHERIT_ORIENTATION_get();
2395 internal static readonly int INHERIT_SCALE = NDalicPINVOKE.Actor_Property_INHERIT_SCALE_get();
2396 internal static readonly int DRAW_MODE = NDalicPINVOKE.Actor_Property_DRAW_MODE_get();
2397 internal static readonly int SIZE_MODE_FACTOR = NDalicPINVOKE.Actor_Property_SIZE_MODE_FACTOR_get();
2398 internal static readonly int WIDTH_RESIZE_POLICY = NDalicPINVOKE.Actor_Property_WIDTH_RESIZE_POLICY_get();
2399 internal static readonly int HEIGHT_RESIZE_POLICY = NDalicPINVOKE.Actor_Property_HEIGHT_RESIZE_POLICY_get();
2400 internal static readonly int SIZE_SCALE_POLICY = NDalicPINVOKE.Actor_Property_SIZE_SCALE_POLICY_get();
2401 internal static readonly int WIDTH_FOR_HEIGHT = NDalicPINVOKE.Actor_Property_WIDTH_FOR_HEIGHT_get();
2402 internal static readonly int HEIGHT_FOR_WIDTH = NDalicPINVOKE.Actor_Property_HEIGHT_FOR_WIDTH_get();
2403 internal static readonly int MINIMUM_SIZE = NDalicPINVOKE.Actor_Property_MINIMUM_SIZE_get();
2404 internal static readonly int MAXIMUM_SIZE = NDalicPINVOKE.Actor_Property_MAXIMUM_SIZE_get();
2405 internal static readonly int INHERIT_POSITION = NDalicPINVOKE.Actor_Property_INHERIT_POSITION_get();
2406 internal static readonly int CLIPPING_MODE = NDalicPINVOKE.Actor_Property_CLIPPING_MODE_get();
2407 internal static readonly int INHERIT_LAYOUT_DIRECTION = NDalicManualPINVOKE.Actor_Property_INHERIT_LAYOUT_DIRECTION_get();
2408 internal static readonly int LAYOUT_DIRECTION = NDalicManualPINVOKE.Actor_Property_LAYOUT_DIRECTION_get();
2409 internal static readonly int MARGIN = NDalicPINVOKE.View_Property_MARGIN_get();
2410 internal static readonly int PADDING = NDalicPINVOKE.View_Property_PADDING_get();
2414 /// Describes the direction to move the focus towards.
2416 /// <since_tizen> 3 </since_tizen>
2417 public enum FocusDirection
2420 /// Move keyboard focus towards the left direction.
2422 /// <since_tizen> 3 </since_tizen>
2425 /// Move keyboard focus towards the right direction.
2427 /// <since_tizen> 3 </since_tizen>
2430 /// Move keyboard focus towards the up direction.
2432 /// <since_tizen> 3 </since_tizen>
2435 /// Move keyboard focus towards the down direction.
2437 /// <since_tizen> 3 </since_tizen>
2440 /// Move keyboard focus towards the previous page direction.
2442 /// <since_tizen> 3 </since_tizen>
2445 /// Move keyboard focus towards the next page direction.
2447 /// <since_tizen> 3 </since_tizen>
2451 protected void InitXamlResource()
2453 if (null != Application.Current)
2455 Application.AddResourceChangedCallback(this, OnResourcesChanged);
2460 /// Creates a new instance of a view.
2462 /// <since_tizen> 3 </since_tizen>
2463 public View() : this(NDalicPINVOKE.View_New(), true)
2466 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2468 internal View(View uiControl) : this(NDalicPINVOKE.new_View__SWIG_1(View.getCPtr(uiControl)), true)
2471 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2474 private View ConvertIdToView(uint id)
2477 if (GetParent() is View)
2479 View parentView = GetParent() as View;
2480 view = parentView.FindChildById(id);
2485 view = Window.Instance.GetRootLayer().FindChildById(id);
2491 internal void SetKeyInputFocus()
2493 NDalicPINVOKE.View_SetKeyInputFocus(swigCPtr);
2494 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2498 /// Queries whether the view has a focus.
2500 /// <returns>True if this view has a focus.</returns>
2501 /// <since_tizen> 3 </since_tizen>
2502 public bool HasFocus()
2504 bool ret = NDalicPINVOKE.View_HasKeyInputFocus(swigCPtr);
2505 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2509 internal void ClearKeyInputFocus()
2511 NDalicPINVOKE.View_ClearKeyInputFocus(swigCPtr);
2512 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2515 internal PinchGestureDetector GetPinchGestureDetector()
2517 PinchGestureDetector ret = new PinchGestureDetector(NDalicPINVOKE.View_GetPinchGestureDetector(swigCPtr), true);
2518 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2522 internal PanGestureDetector GetPanGestureDetector()
2524 PanGestureDetector ret = new PanGestureDetector(NDalicPINVOKE.View_GetPanGestureDetector(swigCPtr), true);
2525 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2529 internal TapGestureDetector GetTapGestureDetector()
2531 TapGestureDetector ret = new TapGestureDetector(NDalicPINVOKE.View_GetTapGestureDetector(swigCPtr), true);
2532 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2536 internal LongPressGestureDetector GetLongPressGestureDetector()
2538 LongPressGestureDetector ret = new LongPressGestureDetector(NDalicPINVOKE.View_GetLongPressGestureDetector(swigCPtr), true);
2539 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2544 /// Sets the name of the style to be applied to the view.
2546 /// <param name="styleName">A string matching a style described in a stylesheet.</param>
2547 /// <since_tizen> 3 </since_tizen>
2548 public void SetStyleName(string styleName)
2550 NDalicPINVOKE.View_SetStyleName(swigCPtr, styleName);
2551 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2555 /// Retrieves the name of the style to be applied to the view (if any).
2557 /// <returns>A string matching a style, or an empty string.</returns>
2558 /// <since_tizen> 3 </since_tizen>
2559 public string GetStyleName()
2561 string ret = NDalicPINVOKE.View_GetStyleName(swigCPtr);
2562 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2566 internal void SetBackgroundColor(Vector4 color)
2568 NDalicPINVOKE.View_SetBackgroundColor(swigCPtr, Vector4.getCPtr(color));
2569 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2572 internal Vector4 GetBackgroundColor()
2574 Vector4 ret = new Vector4(NDalicPINVOKE.View_GetBackgroundColor(swigCPtr), true);
2575 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2579 internal void SetBackgroundImage(Image image)
2581 NDalicPINVOKE.View_SetBackgroundImage(swigCPtr, Image.getCPtr(image));
2582 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2586 /// Clears the background.
2588 /// <since_tizen> 3 </since_tizen>
2589 public void ClearBackground()
2591 NDalicPINVOKE.View_ClearBackground(swigCPtr);
2592 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2595 internal ControlKeySignal KeyEventSignal()
2597 ControlKeySignal ret = new ControlKeySignal(NDalicPINVOKE.View_KeyEventSignal(swigCPtr), false);
2598 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2602 internal KeyInputFocusSignal KeyInputFocusGainedSignal()
2604 KeyInputFocusSignal ret = new KeyInputFocusSignal(NDalicPINVOKE.View_KeyInputFocusGainedSignal(swigCPtr), false);
2605 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2609 internal KeyInputFocusSignal KeyInputFocusLostSignal()
2611 KeyInputFocusSignal ret = new KeyInputFocusSignal(NDalicPINVOKE.View_KeyInputFocusLostSignal(swigCPtr), false);
2612 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2616 internal View(ViewImpl implementation) : this(NDalicPINVOKE.new_View__SWIG_2(ViewImpl.getCPtr(implementation)), true)
2618 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2621 internal enum PropertyRange
2623 PROPERTY_START_INDEX = PropertyRanges.PROPERTY_REGISTRATION_START_INDEX,
2624 CONTROL_PROPERTY_START_INDEX = PROPERTY_START_INDEX,
2625 CONTROL_PROPERTY_END_INDEX = CONTROL_PROPERTY_START_INDEX + 1000
2629 /// The StyleName, type string.
2631 /// <since_tizen> 3 </since_tizen>
2632 public string StyleName
2636 return (string)GetValue(StyleNameProperty);
2640 SetValue(StyleNameProperty, value);
2641 NotifyPropertyChanged();
2646 /// The mutually exclusive with BACKGROUND_IMAGE and BACKGROUND type Vector4.
2648 /// <since_tizen> 3 </since_tizen>
2649 public Color BackgroundColor
2653 return (Color)GetValue(BackgroundColorProperty);
2657 SetValue(BackgroundColorProperty, value);
2658 NotifyPropertyChanged();
2663 /// Creates an animation to animate the background color visual. If there is no
2664 /// background visual, creates one with transparent black as it's mixColor.
2666 /// <since_tizen> 3 </since_tizen>
2667 public Animation AnimateBackgroundColor(object destinationValue,
2670 AlphaFunction.BuiltinFunctions? alphaFunction = null,
2671 object initialValue = null)
2673 Tizen.NUI.PropertyMap background = Background;
2675 if (background.Empty())
2677 // If there is no background yet, ensure there is a transparent
2679 BackgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f);
2680 background = Background;
2682 return AnimateColor("background", destinationValue, startTime, endTime, alphaFunction, initialValue);
2686 /// Creates an animation to animate the mixColor of the named visual.
2688 /// <since_tizen> 3 </since_tizen>
2689 public Animation AnimateColor(string targetVisual, object destinationColor, int startTime, int endTime, AlphaFunction.BuiltinFunctions? alphaFunction = null, object initialColor = null)
2691 Animation animation = null;
2693 PropertyMap _animator = new PropertyMap();
2694 if (alphaFunction != null)
2696 _animator.Add("alphaFunction", new PropertyValue(AlphaFunction.BuiltinToPropertyKey(alphaFunction)));
2699 PropertyMap _timePeriod = new PropertyMap();
2700 _timePeriod.Add("duration", new PropertyValue((endTime - startTime) / 1000.0f));
2701 _timePeriod.Add("delay", new PropertyValue(startTime / 1000.0f));
2702 _animator.Add("timePeriod", new PropertyValue(_timePeriod));
2704 PropertyMap _transition = new PropertyMap();
2705 _transition.Add("animator", new PropertyValue(_animator));
2706 _transition.Add("target", new PropertyValue(targetVisual));
2707 _transition.Add("property", new PropertyValue("mixColor"));
2709 if (initialColor != null)
2711 PropertyValue initValue = PropertyValue.CreateFromObject(initialColor);
2712 _transition.Add("initialValue", initValue);
2715 PropertyValue destValue = PropertyValue.CreateFromObject(destinationColor);
2716 _transition.Add("targetValue", destValue);
2717 TransitionData _transitionData = new TransitionData(_transition);
2719 animation = new Animation(NDalicManualPINVOKE.View_CreateTransition(swigCPtr, TransitionData.getCPtr(_transitionData)), true);
2720 if (NDalicPINVOKE.SWIGPendingException.Pending)
2721 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2727 /// The mutually exclusive with BACKGROUND_COLOR and BACKGROUND type Map.
2729 /// <since_tizen> 3 </since_tizen>
2730 public string BackgroundImage
2734 return (string)GetValue(BackgroundImageProperty);
2738 SetValue(BackgroundImageProperty, value);
2739 NotifyPropertyChanged();
2744 /// The background of view.
2746 /// <since_tizen> 3 </since_tizen>
2747 public Tizen.NUI.PropertyMap Background
2751 return (PropertyMap)GetValue(BackgroundProperty);
2755 SetValue(BackgroundProperty, value);
2756 NotifyPropertyChanged();
2762 /// The current state of the view.
2764 /// <since_tizen> 3 </since_tizen>
2769 return (States)GetValue(StateProperty);
2773 SetValue(StateProperty, value);
2774 NotifyPropertyChanged();
2779 /// The current sub state of the view.
2781 /// <since_tizen> 3 </since_tizen>
2782 public States SubState
2786 return (States)GetValue(SubStateProperty);
2790 SetValue(SubStateProperty, value);
2791 NotifyPropertyChanged();
2796 /// Displays a tooltip
2798 /// <since_tizen> 3 </since_tizen>
2799 public Tizen.NUI.PropertyMap Tooltip
2803 return (PropertyMap)GetValue(TooltipProperty);
2807 SetValue(TooltipProperty, value);
2808 NotifyPropertyChanged();
2813 /// Displays a tooltip as a text.
2815 /// <since_tizen> 3 </since_tizen>
2816 public string TooltipText
2820 SetProperty(View.Property.TOOLTIP, new Tizen.NUI.PropertyValue(value));
2821 NotifyPropertyChanged();
2825 private int LeftFocusableViewId
2830 GetProperty(View.Property.LEFT_FOCUSABLE_VIEW_ID).Get(out temp);
2835 SetProperty(View.Property.LEFT_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
2839 private int RightFocusableViewId
2844 GetProperty(View.Property.RIGHT_FOCUSABLE_VIEW_ID).Get(out temp);
2849 SetProperty(View.Property.RIGHT_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
2853 private int UpFocusableViewId
2858 GetProperty(View.Property.UP_FOCUSABLE_VIEW_ID).Get(out temp);
2863 SetProperty(View.Property.UP_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
2867 private int DownFocusableViewId
2872 GetProperty(View.Property.DOWN_FOCUSABLE_VIEW_ID).Get(out temp);
2877 SetProperty(View.Property.DOWN_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
2882 /// The Child property of FlexContainer.<br />
2883 /// The proportion of the free space in the container, the flex item will receive.<br />
2884 /// If all items in the container set this property, their sizes will be proportional to the specified flex factor.<br />
2886 /// <since_tizen> 3 </since_tizen>
2891 return (float)GetValue(FlexProperty);
2895 SetValue(FlexProperty, value);
2896 NotifyPropertyChanged();
2901 /// The Child property of FlexContainer.<br />
2902 /// The alignment of the flex item along the cross axis, which, if set, overides the default alignment for all items in the container.<br />
2904 /// <since_tizen> 3 </since_tizen>
2905 public int AlignSelf
2909 return (int)GetValue(AlignSelfProperty);
2913 SetValue(AlignSelfProperty, value);
2914 NotifyPropertyChanged();
2919 /// The Child property of FlexContainer.<br />
2920 /// The space around the flex item.<br />
2922 /// <since_tizen> 3 </since_tizen>
2923 public Vector4 FlexMargin
2927 return (Vector4)GetValue(FlexMarginProperty);
2931 SetValue(FlexMarginProperty, value);
2932 NotifyPropertyChanged();
2937 /// The top-left cell this child occupies, if not set, the first available cell is used.
2939 /// <since_tizen> 3 </since_tizen>
2940 public Vector2 CellIndex
2944 return (Vector2)GetValue(CellIndexProperty);
2948 SetValue(CellIndexProperty, value);
2949 NotifyPropertyChanged();
2954 /// The number of rows this child occupies, if not set, the default value is 1.
2956 /// <since_tizen> 3 </since_tizen>
2957 public float RowSpan
2961 return (float)GetValue(RowSpanProperty);
2965 SetValue(RowSpanProperty, value);
2966 NotifyPropertyChanged();
2971 /// The number of columns this child occupies, if not set, the default value is 1.
2973 /// <since_tizen> 3 </since_tizen>
2974 public float ColumnSpan
2978 return (float)GetValue(ColumnSpanProperty);
2982 SetValue(ColumnSpanProperty, value);
2983 NotifyPropertyChanged();
2988 /// The horizontal alignment of this child inside the cells, if not set, the default value is 'left'.
2990 /// <since_tizen> 3 </since_tizen>
2991 public Tizen.NUI.HorizontalAlignmentType CellHorizontalAlignment
2995 return (HorizontalAlignmentType)GetValue(CellHorizontalAlignmentProperty);
2999 SetValue(CellHorizontalAlignmentProperty, value);
3000 NotifyPropertyChanged();
3005 /// The vertical alignment of this child inside the cells, if not set, the default value is 'top'.
3007 /// <since_tizen> 3 </since_tizen>
3008 public Tizen.NUI.VerticalAlignmentType CellVerticalAlignment
3012 return (VerticalAlignmentType)GetValue(CellVerticalAlignmentProperty);
3016 SetValue(CellVerticalAlignmentProperty, value);
3017 NotifyPropertyChanged();
3022 /// The left focusable view.<br />
3023 /// This will return null if not set.<br />
3024 /// This will also return null if the specified left focusable view is not on a window.<br />
3026 /// <since_tizen> 3 </since_tizen>
3027 public View LeftFocusableView
3029 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
3032 return (View)GetValue(LeftFocusableViewProperty);
3036 SetValue(LeftFocusableViewProperty, value);
3037 NotifyPropertyChanged();
3042 /// The right focusable view.<br />
3043 /// This will return null if not set.<br />
3044 /// This will also return null if the specified right focusable view is not on a window.<br />
3046 /// <since_tizen> 3 </since_tizen>
3047 public View RightFocusableView
3049 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
3052 return (View)GetValue(RightFocusableViewProperty);
3056 SetValue(RightFocusableViewProperty, value);
3057 NotifyPropertyChanged();
3062 /// The up focusable view.<br />
3063 /// This will return null if not set.<br />
3064 /// This will also return null if the specified up focusable view is not on a window.<br />
3066 /// <since_tizen> 3 </since_tizen>
3067 public View UpFocusableView
3069 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
3072 return (View)GetValue(UpFocusableViewProperty);
3076 SetValue(UpFocusableViewProperty, value);
3077 NotifyPropertyChanged();
3082 /// The down focusable view.<br />
3083 /// This will return null if not set.<br />
3084 /// This will also return null if the specified down focusable view is not on a window.<br />
3086 /// <since_tizen> 3 </since_tizen>
3087 public View DownFocusableView
3089 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
3092 return (View)GetValue(DownFocusableViewProperty);
3096 SetValue(DownFocusableViewProperty, value);
3097 NotifyPropertyChanged();
3102 /// Whether the view should be focusable by keyboard navigation.
3104 /// <since_tizen> 3 </since_tizen>
3105 public bool Focusable
3109 SetValue(FocusableProperty, value);
3110 NotifyPropertyChanged();
3114 return (bool)GetValue(FocusableProperty);
3119 /// Enumeration for describing the states of the view.
3121 /// <since_tizen> 3 </since_tizen>
3125 /// The normal state.
3129 /// The focused state.
3133 /// The disabled state.
3139 /// Retrieves the position of the view.<br />
3140 /// The coordinates are relative to the view's parent.<br />
3142 /// <since_tizen> 3 </since_tizen>
3143 public Position CurrentPosition
3147 return GetCurrentPosition();
3152 /// Sets the size of a view for the width and the height.<br />
3153 /// Geometry can be scaled to fit within this area.<br />
3154 /// This does not interfere with the view's scale factor.<br />
3155 /// The views default depth is the minimum of width and height.<br />
3157 /// <since_tizen> 3 </since_tizen>
3158 public Size2D Size2D
3162 return (Size2D)GetValue(Size2DProperty);
3166 SetValue(Size2DProperty, value);
3167 NotifyPropertyChanged();
3172 /// Retrieves the size of the view.<br />
3173 /// The coordinates are relative to the view's parent.<br />
3175 /// <since_tizen> 3 </since_tizen>
3176 public Size2D CurrentSize
3180 return GetCurrentSize();
3185 /// Retrieves and sets the view's opacity.<br />
3187 /// <since_tizen> 3 </since_tizen>
3188 public float Opacity
3192 return (float)GetValue(OpacityProperty);
3196 SetValue(OpacityProperty, value);
3197 NotifyPropertyChanged();
3202 /// Sets the position of the view for X and Y.<br />
3203 /// By default, sets the position vector between the parent origin and the pivot point (default).<br />
3204 /// If the position inheritance is disabled, sets the world position.<br />
3206 /// <since_tizen> 3 </since_tizen>
3207 public Position2D Position2D
3211 return (Position2D)GetValue(Position2DProperty);
3215 SetValue(Position2DProperty, value);
3216 NotifyPropertyChanged();
3221 /// Retrieves the screen postion of the view.<br />
3223 /// <since_tizen> 3 </since_tizen>
3224 public Vector2 ScreenPosition
3228 Vector2 temp = new Vector2(0.0f, 0.0f);
3229 GetProperty(View.Property.SCREEN_POSITION).Get(temp);
3235 /// Determines whether the pivot point should be used to determine the position of the view.
3236 /// This is true by default.
3238 /// <remarks>If false, then the top-left of the view is used for the position.
3239 /// Setting this to false will allow scaling or rotation around the anchor-point without affecting the view's position.
3241 /// <since_tizen> 3 </since_tizen>
3242 public bool PositionUsesPivotPoint
3246 return (bool)GetValue(PositionUsesPivotPointProperty);
3250 SetValue(PositionUsesPivotPointProperty, value);
3251 NotifyPropertyChanged();
3256 /// Please do not use! this will be deprecated.
3258 /// Please do not use! this will be deprecated!
3259 /// Instead please use PositionUsesPivotPoint.
3260 /// <since_tizen> 3 </since_tizen>
3261 [Obsolete("Please do not use! This will be deprecated! Please use PositionUsesPivotPoint instead! " +
3263 "View view = new View(); " +
3264 "view.PivotPoint = PivotPoint.Center; " +
3265 "view.PositionUsesPivotPoint = true;")]
3266 [EditorBrowsable(EditorBrowsableState.Never)]
3267 public bool PositionUsesAnchorPoint
3272 GetProperty(View.Property.POSITION_USES_ANCHOR_POINT).Get(out temp);
3277 SetProperty(View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
3278 NotifyPropertyChanged();
3282 internal bool FocusState
3286 return IsKeyboardFocusable();
3290 SetKeyboardFocusable(value);
3295 /// Queries whether the view is connected to the stage.<br />
3296 /// When a view is connected, it will be directly or indirectly parented to the root view.<br />
3298 /// <since_tizen> 3 </since_tizen>
3299 public bool IsOnWindow
3308 /// Gets the depth in the hierarchy for the view.
3310 /// <since_tizen> 3 </since_tizen>
3311 public int HierarchyDepth
3315 return GetHierarchyDepth();
3320 /// Sets the sibling order of the view so the depth position can be defined within the same parent.
3323 /// Note the initial value is 0. SiblingOrder should be bigger than 0 or equal to 0.
3324 /// Raise, Lower, RaiseToTop, LowerToBottom, RaiseAbove, and LowerBelow will override the sibling order.
3325 /// The values set by this property will likely change.
3327 /// <since_tizen> 3 </since_tizen>
3328 public int SiblingOrder
3332 return (int)GetValue(SiblingOrderProperty);
3336 SetValue(SiblingOrderProperty, value);
3337 NotifyPropertyChanged();
3342 /// Returns the natural size of the view.
3345 /// Deriving classes stipulate the natural size and by default a view has a zero natural size.
3347 /// /// Please do not use! this will be deprecated!
3348 /// Instead please use NaturalSize2D.
3349 /// <since_tizen> 3 </since_tizen>
3350 [Obsolete("Please do not use! This will be deprecated! Please use NaturalSize2D instead! " +
3352 "TextLabel label = new TextLabel(\"Hello World!\"); " +
3353 "Size2D size = label.NaturalSize2D;")]
3354 [EditorBrowsable(EditorBrowsableState.Never)]
3355 public Vector3 NaturalSize
3359 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetNaturalSize(swigCPtr), true);
3360 if (NDalicPINVOKE.SWIGPendingException.Pending)
3361 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3367 /// Returns the natural size (Size2D) of the view.
3370 /// Deriving classes stipulate the natural size and by default a view has a zero natural size.
3372 /// <since_tizen> 4 </since_tizen>
3373 public Size2D NaturalSize2D
3377 Vector3 temp = new Vector3(NDalicPINVOKE.Actor_GetNaturalSize(swigCPtr), true);
3378 if (NDalicPINVOKE.SWIGPendingException.Pending)
3379 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3381 return new Size2D((int)temp.Width, (int)temp.Height);
3386 /// Set the layout on this control.
3390 /// <since_tizen> 5 </since_tizen>
3391 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
3392 [EditorBrowsable(EditorBrowsableState.Never)]
3393 public LayoutItem Layout
3397 IntPtr cPtr = Tizen.NUI.NDalicManualPINVOKE.GetLayout__SWIG_1(View.getCPtr(this));
3399 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
3400 BaseHandle basehandle = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle);
3401 NDalicPINVOKE.delete_BaseHandle(CPtr);
3402 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
3404 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3406 return basehandle as LayoutItem;
3410 Tizen.NUI.NDalicManualPINVOKE.SetLayout__SWIG_1(View.getCPtr(this), LayoutItem.getCPtr(value));
3418 /// This is an asynchronous method.
3420 /// <since_tizen> 3 </since_tizen>
3430 /// This is an asynchronous method.
3431 /// If the view is hidden, then the view and its children will not be rendered.
3432 /// 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.
3434 /// <since_tizen> 3 </since_tizen>
3440 internal void Raise()
3442 var parentChildren = GetParent()?.Children;
3444 if (parentChildren != null)
3446 int currentIndex = parentChildren.IndexOf(this);
3448 // If the view is not already the last item in the list.
3449 if (currentIndex >= 0 && currentIndex < parentChildren.Count - 1)
3451 View temp = parentChildren[currentIndex + 1];
3452 parentChildren[currentIndex + 1] = this;
3453 parentChildren[currentIndex] = temp;
3455 NDalicPINVOKE.Raise(swigCPtr);
3456 if (NDalicPINVOKE.SWIGPendingException.Pending)
3457 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3463 internal void Lower()
3465 var parentChildren = GetParent()?.Children;
3467 if (parentChildren != null)
3469 int currentIndex = parentChildren.IndexOf(this);
3471 // If the view is not already the first item in the list.
3472 if (currentIndex > 0 && currentIndex < parentChildren.Count)
3474 View temp = parentChildren[currentIndex - 1];
3475 parentChildren[currentIndex - 1] = this;
3476 parentChildren[currentIndex] = temp;
3478 NDalicPINVOKE.Lower(swigCPtr);
3479 if (NDalicPINVOKE.SWIGPendingException.Pending)
3480 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3486 /// Raises the view above all other views.
3489 /// Sibling order of views within the parent will be updated automatically.
3490 /// Once a raise or lower API is used, that view will then have an exclusive sibling order independent of insertion.
3492 /// <since_tizen> 3 </since_tizen>
3493 public void RaiseToTop()
3495 var parentChildren = GetParent()?.Children;
3497 if (parentChildren != null)
3499 parentChildren.Remove(this);
3500 parentChildren.Add(this);
3502 NDalicPINVOKE.RaiseToTop(swigCPtr);
3503 if (NDalicPINVOKE.SWIGPendingException.Pending)
3504 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3510 /// Lowers the view to the bottom of all views.
3513 /// The sibling order of views within the parent will be updated automatically.
3514 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
3516 /// <since_tizen> 3 </since_tizen>
3517 public void LowerToBottom()
3519 var parentChildren = GetParent()?.Children;
3521 if (parentChildren != null)
3523 parentChildren.Remove(this);
3524 parentChildren.Insert(0, this);
3526 NDalicPINVOKE.LowerToBottom(swigCPtr);
3527 if (NDalicPINVOKE.SWIGPendingException.Pending)
3528 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3533 /// Queries if all resources required by a view are loaded and ready.
3535 /// <remarks>Most resources are only loaded when the control is placed on the stage.
3537 /// <since_tizen> 3 </since_tizen>
3538 public bool IsResourceReady()
3540 bool ret = NDalicPINVOKE.IsResourceReady(swigCPtr);
3541 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3546 /// Raises the view to above the target view.
3548 /// <remarks>The sibling order of views within the parent will be updated automatically.
3549 /// Views on the level above the target view will still be shown above this view.
3550 /// Raising this view above views with the same sibling order as each other will raise this view above them.
3551 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
3553 /// <param name="target">Will be raised above this view.</param>
3554 internal void RaiseAbove(View target)
3556 var parentChildren = GetParent()?.Children;
3558 if (parentChildren != null)
3560 int currentIndex = parentChildren.IndexOf(this);
3561 int targetIndex = parentChildren.IndexOf(target);
3563 if (currentIndex < 0 || targetIndex < 0 ||
3564 currentIndex >= parentChildren.Count || targetIndex >= parentChildren.Count)
3566 NUILog.Error("index should be bigger than 0 and less than children of layer count");
3569 // If the currentIndex is less than the target index and the target has the same parent.
3570 if (currentIndex < targetIndex)
3572 parentChildren.Remove(this);
3573 parentChildren.Insert(targetIndex, this);
3575 NDalicPINVOKE.RaiseAbove(swigCPtr, View.getCPtr(target));
3576 if (NDalicPINVOKE.SWIGPendingException.Pending)
3577 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3584 /// Lowers the view to below the target view.
3586 /// <remarks>The sibling order of views within the parent will be updated automatically.
3587 /// Lowering this view below views with the same sibling order as each other will lower this view above them.
3588 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
3590 /// <param name="target">Will be lowered below this view.</param>
3591 internal void LowerBelow(View target)
3593 var parentChildren = GetParent()?.Children;
3595 if (parentChildren != null)
3597 int currentIndex = parentChildren.IndexOf(this);
3598 int targetIndex = parentChildren.IndexOf(target);
3599 if (currentIndex < 0 || targetIndex < 0 ||
3600 currentIndex >= parentChildren.Count || targetIndex >= parentChildren.Count)
3602 NUILog.Error("index should be bigger than 0 and less than children of layer count");
3606 // If the currentIndex is not already the 0th index and the target has the same parent.
3607 if ((currentIndex != 0) && (targetIndex != -1) &&
3608 (currentIndex > targetIndex))
3610 parentChildren.Remove(this);
3611 parentChildren.Insert(targetIndex, this);
3613 NDalicPINVOKE.LowerBelow(swigCPtr, View.getCPtr(target));
3614 if (NDalicPINVOKE.SWIGPendingException.Pending)
3615 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3621 internal string GetName()
3623 string ret = NDalicPINVOKE.Actor_GetName(swigCPtr);
3624 if (NDalicPINVOKE.SWIGPendingException.Pending)
3625 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3629 internal void SetName(string name)
3631 NDalicPINVOKE.Actor_SetName(swigCPtr, name);
3632 if (NDalicPINVOKE.SWIGPendingException.Pending)
3633 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3636 internal uint GetId()
3638 uint ret = NDalicPINVOKE.Actor_GetId(swigCPtr);
3639 if (NDalicPINVOKE.SWIGPendingException.Pending)
3640 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3644 internal bool IsRoot()
3646 bool ret = NDalicPINVOKE.Actor_IsRoot(swigCPtr);
3647 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3651 internal bool OnWindow()
3653 bool ret = NDalicPINVOKE.Actor_OnStage(swigCPtr);
3654 if (NDalicPINVOKE.SWIGPendingException.Pending)
3655 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3660 /// Gets the parent layer of this view.If a view has no parent, this method does nothing.
3662 /// <pre>The view has been initialized. </pre>
3663 /// <returns>the parent layer of view </returns>
3664 /// <since_tizen> 5 </since_tizen>
3665 public Layer GetLayer()
3667 //to fix memory leak issue, match the handle count with native side.
3668 IntPtr cPtr = NDalicPINVOKE.Actor_GetLayer(swigCPtr);
3669 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
3670 Layer ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as Layer;
3671 NDalicPINVOKE.delete_BaseHandle(CPtr);
3672 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
3674 if (NDalicPINVOKE.SWIGPendingException.Pending)
3675 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3680 /// Removes a view from its parent view or layer. If a view has no parent, this method does nothing.
3682 /// <pre>The (child) view has been initialized. </pre>
3683 /// <since_tizen> 4 </since_tizen>
3684 public void Unparent()
3686 GetParent()?.Remove(this);
3690 /// Search through this view's hierarchy for a view with the given name.
3691 /// The view itself is also considered in the search.
3693 /// <pre>The view has been initialized.</pre>
3694 /// <param name="viewName">The name of the view to find.</param>
3695 /// <returns>A handle to the view if found, or an empty handle if not.</returns>
3696 /// <since_tizen> 3 </since_tizen>
3697 public View FindChildByName(string viewName)
3699 //to fix memory leak issue, match the handle count with native side.
3700 IntPtr cPtr = NDalicPINVOKE.Actor_FindChildByName(swigCPtr, viewName);
3701 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
3702 View ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as View;
3703 NDalicPINVOKE.delete_BaseHandle(CPtr);
3704 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
3706 if (NDalicPINVOKE.SWIGPendingException.Pending)
3707 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3711 internal View FindChildById(uint id)
3713 //to fix memory leak issue, match the handle count with native side.
3714 IntPtr cPtr = NDalicPINVOKE.Actor_FindChildById(swigCPtr, id);
3715 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
3716 View ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as View;
3717 NDalicPINVOKE.delete_BaseHandle(CPtr);
3718 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
3720 if (NDalicPINVOKE.SWIGPendingException.Pending)
3721 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3725 internal void SetParentOrigin(Vector3 origin)
3727 NDalicPINVOKE.Actor_SetParentOrigin(swigCPtr, Vector3.getCPtr(origin));
3728 if (NDalicPINVOKE.SWIGPendingException.Pending)
3729 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3732 internal Vector3 GetCurrentParentOrigin()
3734 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentParentOrigin(swigCPtr), true);
3735 if (NDalicPINVOKE.SWIGPendingException.Pending)
3736 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3740 internal void SetAnchorPoint(Vector3 anchorPoint)
3742 NDalicPINVOKE.Actor_SetAnchorPoint(swigCPtr, Vector3.getCPtr(anchorPoint));
3743 if (NDalicPINVOKE.SWIGPendingException.Pending)
3744 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3747 internal Vector3 GetCurrentAnchorPoint()
3749 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentAnchorPoint(swigCPtr), true);
3750 if (NDalicPINVOKE.SWIGPendingException.Pending)
3751 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3755 internal void SetSize(float width, float height)
3757 NDalicPINVOKE.Actor_SetSize__SWIG_0(swigCPtr, width, height);
3758 if (NDalicPINVOKE.SWIGPendingException.Pending)
3759 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3762 internal void SetSize(float width, float height, float depth)
3764 NDalicPINVOKE.Actor_SetSize__SWIG_1(swigCPtr, width, height, depth);
3765 if (NDalicPINVOKE.SWIGPendingException.Pending)
3766 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3769 internal void SetSize(Vector2 size)
3771 NDalicPINVOKE.Actor_SetSize__SWIG_2(swigCPtr, Vector2.getCPtr(size));
3772 if (NDalicPINVOKE.SWIGPendingException.Pending)
3773 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3776 internal void SetSize(Vector3 size)
3778 NDalicPINVOKE.Actor_SetSize__SWIG_3(swigCPtr, Vector3.getCPtr(size));
3779 if (NDalicPINVOKE.SWIGPendingException.Pending)
3780 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3783 internal Vector3 GetTargetSize()
3785 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetTargetSize(swigCPtr), true);
3786 if (NDalicPINVOKE.SWIGPendingException.Pending)
3787 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3791 internal Size2D GetCurrentSize()
3793 Size ret = new Size(NDalicPINVOKE.Actor_GetCurrentSize(swigCPtr), true);
3794 if (NDalicPINVOKE.SWIGPendingException.Pending)
3795 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3796 Size2D size = new Size2D((int)ret.Width, (int)ret.Height);
3800 internal Vector3 GetNaturalSize()
3802 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetNaturalSize(swigCPtr), true);
3803 if (NDalicPINVOKE.SWIGPendingException.Pending)
3804 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3808 internal void SetPosition(float x, float y)
3810 NDalicPINVOKE.Actor_SetPosition__SWIG_0(swigCPtr, x, y);
3811 if (NDalicPINVOKE.SWIGPendingException.Pending)
3812 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3815 internal void SetPosition(float x, float y, float z)
3817 NDalicPINVOKE.Actor_SetPosition__SWIG_1(swigCPtr, x, y, z);
3818 if (NDalicPINVOKE.SWIGPendingException.Pending)
3819 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3822 internal void SetPosition(Vector3 position)
3824 NDalicPINVOKE.Actor_SetPosition__SWIG_2(swigCPtr, Vector3.getCPtr(position));
3825 if (NDalicPINVOKE.SWIGPendingException.Pending)
3826 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3829 internal void SetX(float x)
3831 NDalicPINVOKE.Actor_SetX(swigCPtr, x);
3832 if (NDalicPINVOKE.SWIGPendingException.Pending)
3833 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3836 internal void SetY(float y)
3838 NDalicPINVOKE.Actor_SetY(swigCPtr, y);
3839 if (NDalicPINVOKE.SWIGPendingException.Pending)
3840 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3843 internal void SetZ(float z)
3845 NDalicPINVOKE.Actor_SetZ(swigCPtr, z);
3846 if (NDalicPINVOKE.SWIGPendingException.Pending)
3847 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3850 internal void TranslateBy(Vector3 distance)
3852 NDalicPINVOKE.Actor_TranslateBy(swigCPtr, Vector3.getCPtr(distance));
3853 if (NDalicPINVOKE.SWIGPendingException.Pending)
3854 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3857 internal Position GetCurrentPosition()
3859 Position ret = new Position(NDalicPINVOKE.Actor_GetCurrentPosition(swigCPtr), true);
3860 if (NDalicPINVOKE.SWIGPendingException.Pending)
3861 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3865 internal Vector3 GetCurrentWorldPosition()
3867 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentWorldPosition(swigCPtr), true);
3868 if (NDalicPINVOKE.SWIGPendingException.Pending)
3869 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3873 internal void SetInheritPosition(bool inherit)
3875 NDalicPINVOKE.Actor_SetInheritPosition(swigCPtr, inherit);
3876 if (NDalicPINVOKE.SWIGPendingException.Pending)
3877 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3880 internal bool IsPositionInherited()
3882 bool ret = NDalicPINVOKE.Actor_IsPositionInherited(swigCPtr);
3883 if (NDalicPINVOKE.SWIGPendingException.Pending)
3884 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3888 internal void SetOrientation(Degree angle, Vector3 axis)
3890 NDalicPINVOKE.Actor_SetOrientation__SWIG_0(swigCPtr, Degree.getCPtr(angle), Vector3.getCPtr(axis));
3891 if (NDalicPINVOKE.SWIGPendingException.Pending)
3892 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3895 internal void SetOrientation(Radian angle, Vector3 axis)
3897 NDalicPINVOKE.Actor_SetOrientation__SWIG_1(swigCPtr, Radian.getCPtr(angle), Vector3.getCPtr(axis));
3898 if (NDalicPINVOKE.SWIGPendingException.Pending)
3899 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3902 internal void SetOrientation(Rotation orientation)
3904 NDalicPINVOKE.Actor_SetOrientation__SWIG_2(swigCPtr, Rotation.getCPtr(orientation));
3905 if (NDalicPINVOKE.SWIGPendingException.Pending)
3906 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3909 internal void RotateBy(Degree angle, Vector3 axis)
3911 NDalicPINVOKE.Actor_RotateBy__SWIG_0(swigCPtr, Degree.getCPtr(angle), Vector3.getCPtr(axis));
3912 if (NDalicPINVOKE.SWIGPendingException.Pending)
3913 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3916 internal void RotateBy(Radian angle, Vector3 axis)
3918 NDalicPINVOKE.Actor_RotateBy__SWIG_1(swigCPtr, Radian.getCPtr(angle), Vector3.getCPtr(axis));
3919 if (NDalicPINVOKE.SWIGPendingException.Pending)
3920 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3923 internal void RotateBy(Rotation relativeRotation)
3925 NDalicPINVOKE.Actor_RotateBy__SWIG_2(swigCPtr, Rotation.getCPtr(relativeRotation));
3926 if (NDalicPINVOKE.SWIGPendingException.Pending)
3927 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3930 internal Rotation GetCurrentOrientation()
3932 Rotation ret = new Rotation(NDalicPINVOKE.Actor_GetCurrentOrientation(swigCPtr), true);
3933 if (NDalicPINVOKE.SWIGPendingException.Pending)
3934 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3938 internal void SetInheritOrientation(bool inherit)
3940 NDalicPINVOKE.Actor_SetInheritOrientation(swigCPtr, inherit);
3941 if (NDalicPINVOKE.SWIGPendingException.Pending)
3942 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3945 internal bool IsOrientationInherited()
3947 bool ret = NDalicPINVOKE.Actor_IsOrientationInherited(swigCPtr);
3948 if (NDalicPINVOKE.SWIGPendingException.Pending)
3949 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3953 internal Rotation GetCurrentWorldOrientation()
3955 Rotation ret = new Rotation(NDalicPINVOKE.Actor_GetCurrentWorldOrientation(swigCPtr), true);
3956 if (NDalicPINVOKE.SWIGPendingException.Pending)
3957 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3961 internal void SetScale(float scale)
3963 NDalicPINVOKE.Actor_SetScale__SWIG_0(swigCPtr, scale);
3964 if (NDalicPINVOKE.SWIGPendingException.Pending)
3965 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3968 internal void SetScale(float scaleX, float scaleY, float scaleZ)
3970 NDalicPINVOKE.Actor_SetScale__SWIG_1(swigCPtr, scaleX, scaleY, scaleZ);
3971 if (NDalicPINVOKE.SWIGPendingException.Pending)
3972 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3975 internal void SetScale(Vector3 scale)
3977 NDalicPINVOKE.Actor_SetScale__SWIG_2(swigCPtr, Vector3.getCPtr(scale));
3978 if (NDalicPINVOKE.SWIGPendingException.Pending)
3979 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3982 internal void ScaleBy(Vector3 relativeScale)
3984 NDalicPINVOKE.Actor_ScaleBy(swigCPtr, Vector3.getCPtr(relativeScale));
3985 if (NDalicPINVOKE.SWIGPendingException.Pending)
3986 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3989 internal Vector3 GetCurrentScale()
3991 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentScale(swigCPtr), true);
3992 if (NDalicPINVOKE.SWIGPendingException.Pending)
3993 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3997 internal Vector3 GetCurrentWorldScale()
3999 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentWorldScale(swigCPtr), true);
4000 if (NDalicPINVOKE.SWIGPendingException.Pending)
4001 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4005 internal void SetInheritScale(bool inherit)
4007 NDalicPINVOKE.Actor_SetInheritScale(swigCPtr, inherit);
4008 if (NDalicPINVOKE.SWIGPendingException.Pending)
4009 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4012 internal bool IsScaleInherited()
4014 bool ret = NDalicPINVOKE.Actor_IsScaleInherited(swigCPtr);
4015 if (NDalicPINVOKE.SWIGPendingException.Pending)
4016 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4020 internal Matrix GetCurrentWorldMatrix()
4022 Matrix ret = new Matrix(NDalicPINVOKE.Actor_GetCurrentWorldMatrix(swigCPtr), true);
4023 if (NDalicPINVOKE.SWIGPendingException.Pending)
4024 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4028 internal void SetVisible(bool visible)
4030 NDalicPINVOKE.Actor_SetVisible(swigCPtr, visible);
4031 if (NDalicPINVOKE.SWIGPendingException.Pending)
4032 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4035 internal bool IsVisible()
4037 bool ret = NDalicPINVOKE.Actor_IsVisible(swigCPtr);
4038 if (NDalicPINVOKE.SWIGPendingException.Pending)
4039 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4043 internal void SetOpacity(float opacity)
4045 NDalicPINVOKE.Actor_SetOpacity(swigCPtr, opacity);
4046 if (NDalicPINVOKE.SWIGPendingException.Pending)
4047 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4050 internal float GetCurrentOpacity()
4052 float ret = NDalicPINVOKE.Actor_GetCurrentOpacity(swigCPtr);
4053 if (NDalicPINVOKE.SWIGPendingException.Pending)
4054 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4058 internal void SetColor(Vector4 color)
4060 NDalicPINVOKE.Actor_SetColor(swigCPtr, Vector4.getCPtr(color));
4061 if (NDalicPINVOKE.SWIGPendingException.Pending)
4062 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4065 internal Vector4 GetCurrentColor()
4067 Vector4 ret = new Vector4(NDalicPINVOKE.Actor_GetCurrentColor(swigCPtr), true);
4068 if (NDalicPINVOKE.SWIGPendingException.Pending)
4069 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4073 internal void SetColorMode(ColorMode colorMode)
4075 NDalicPINVOKE.Actor_SetColorMode(swigCPtr, (int)colorMode);
4076 if (NDalicPINVOKE.SWIGPendingException.Pending)
4077 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4080 internal ColorMode GetColorMode()
4082 ColorMode ret = (ColorMode)NDalicPINVOKE.Actor_GetColorMode(swigCPtr);
4083 if (NDalicPINVOKE.SWIGPendingException.Pending)
4084 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4088 internal Vector4 GetCurrentWorldColor()
4090 Vector4 ret = new Vector4(NDalicPINVOKE.Actor_GetCurrentWorldColor(swigCPtr), true);
4091 if (NDalicPINVOKE.SWIGPendingException.Pending)
4092 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4096 internal void SetDrawMode(DrawModeType drawMode)
4098 NDalicPINVOKE.Actor_SetDrawMode(swigCPtr, (int)drawMode);
4099 if (NDalicPINVOKE.SWIGPendingException.Pending)
4100 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4103 internal DrawModeType GetDrawMode()
4105 DrawModeType ret = (DrawModeType)NDalicPINVOKE.Actor_GetDrawMode(swigCPtr);
4106 if (NDalicPINVOKE.SWIGPendingException.Pending)
4107 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4112 /// Converts screen coordinates into the view's coordinate system using the default camera.
4114 /// <pre>The view has been initialized.</pre>
4115 /// <remarks>The view coordinates are relative to the top-left(0.0, 0.0, 0.5).</remarks>
4116 /// <param name="localX">On return, the X-coordinate relative to the view.</param>
4117 /// <param name="localY">On return, the Y-coordinate relative to the view.</param>
4118 /// <param name="screenX">The screen X-coordinate.</param>
4119 /// <param name="screenY">The screen Y-coordinate.</param>
4120 /// <returns>True if the conversion succeeded.</returns>
4121 /// <since_tizen> 3 </since_tizen>
4122 public bool ScreenToLocal(out float localX, out float localY, float screenX, float screenY)
4124 bool ret = NDalicPINVOKE.Actor_ScreenToLocal(swigCPtr, out localX, out localY, screenX, screenY);
4125 if (NDalicPINVOKE.SWIGPendingException.Pending)
4126 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4130 internal void SetKeyboardFocusable(bool focusable)
4132 NDalicPINVOKE.Actor_SetKeyboardFocusable(swigCPtr, focusable);
4133 if (NDalicPINVOKE.SWIGPendingException.Pending)
4134 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4137 internal bool IsKeyboardFocusable()
4139 bool ret = NDalicPINVOKE.Actor_IsKeyboardFocusable(swigCPtr);
4140 if (NDalicPINVOKE.SWIGPendingException.Pending)
4141 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4145 internal void SetResizePolicy(ResizePolicyType policy, DimensionType dimension)
4147 NDalicPINVOKE.Actor_SetResizePolicy(swigCPtr, (int)policy, (int)dimension);
4148 if (NDalicPINVOKE.SWIGPendingException.Pending)
4149 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4152 internal ResizePolicyType GetResizePolicy(DimensionType dimension)
4154 ResizePolicyType ret = (ResizePolicyType)NDalicPINVOKE.Actor_GetResizePolicy(swigCPtr, (int)dimension);
4155 if (NDalicPINVOKE.SWIGPendingException.Pending)
4156 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4161 /// Sets the relative to parent size factor of the view.<br />
4162 /// This factor is only used when ResizePolicy is set to either:
4163 /// ResizePolicy::SIZE_RELATIVE_TO_PARENT or ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT.<br />
4164 /// This view's size is set to the view's size multiplied by or added to this factor, depending on ResizePolicy.<br />
4166 /// <pre>The view has been initialized.</pre>
4167 /// <param name="factor">A Vector3 representing the relative factor to be applied to each axis.</param>
4168 /// <since_tizen> 3 </since_tizen>
4169 public void SetSizeModeFactor(Vector3 factor)
4171 NDalicPINVOKE.Actor_SetSizeModeFactor(swigCPtr, Vector3.getCPtr(factor));
4172 if (NDalicPINVOKE.SWIGPendingException.Pending)
4173 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4176 internal Vector3 GetSizeModeFactor()
4178 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetSizeModeFactor(swigCPtr), true);
4179 if (NDalicPINVOKE.SWIGPendingException.Pending)
4180 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4185 /// Calculates the height of the view given a width.<br />
4186 /// The natural size is used for default calculation.<br />
4187 /// Size 0 is treated as aspect ratio 1:1.<br />
4189 /// <param name="width">The width to use.</param>
4190 /// <returns>The height based on the width.</returns>
4191 /// <since_tizen> 3 </since_tizen>
4192 public float GetHeightForWidth(float width)
4194 float ret = NDalicPINVOKE.Actor_GetHeightForWidth(swigCPtr, width);
4195 if (NDalicPINVOKE.SWIGPendingException.Pending)
4196 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4201 /// Calculates the width of the view given a height.<br />
4202 /// The natural size is used for default calculation.<br />
4203 /// Size 0 is treated as aspect ratio 1:1.<br />
4205 /// <param name="height">The height to use.</param>
4206 /// <returns>The width based on the height.</returns>
4207 /// <since_tizen> 3 </since_tizen>
4208 public float GetWidthForHeight(float height)
4210 float ret = NDalicPINVOKE.Actor_GetWidthForHeight(swigCPtr, height);
4211 if (NDalicPINVOKE.SWIGPendingException.Pending)
4212 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4217 /// Return the amount of size allocated for relayout.
4219 /// <param name="dimension">The dimension to retrieve.</param>
4220 /// <returns>Return the size.</returns>
4221 /// <since_tizen> 3 </since_tizen>
4222 public float GetRelayoutSize(DimensionType dimension)
4224 float ret = NDalicPINVOKE.Actor_GetRelayoutSize(swigCPtr, (int)dimension);
4225 if (NDalicPINVOKE.SWIGPendingException.Pending)
4226 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4231 /// Set the padding for the view.
4233 /// <param name="padding">Padding for the view.</param>
4234 /// <since_tizen> 3 </since_tizen>
4235 public void SetPadding(PaddingType padding)
4237 NDalicPINVOKE.Actor_SetPadding(swigCPtr, PaddingType.getCPtr(padding));
4238 if (NDalicPINVOKE.SWIGPendingException.Pending)
4239 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4243 /// Return the value of padding for the view.
4245 /// <param name="paddingOut">the value of padding for the view</param>
4246 /// <since_tizen> 3 </since_tizen>
4247 public void GetPadding(PaddingType paddingOut)
4249 NDalicPINVOKE.Actor_GetPadding(swigCPtr, PaddingType.getCPtr(paddingOut));
4250 if (NDalicPINVOKE.SWIGPendingException.Pending)
4251 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4254 internal void SetMinimumSize(Vector2 size)
4256 NDalicPINVOKE.Actor_SetMinimumSize(swigCPtr, Vector2.getCPtr(size));
4257 if (NDalicPINVOKE.SWIGPendingException.Pending)
4258 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4261 internal Vector2 GetMinimumSize()
4263 Vector2 ret = new Vector2(NDalicPINVOKE.Actor_GetMinimumSize(swigCPtr), true);
4264 if (NDalicPINVOKE.SWIGPendingException.Pending)
4265 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4269 internal void SetMaximumSize(Vector2 size)
4271 NDalicPINVOKE.Actor_SetMaximumSize(swigCPtr, Vector2.getCPtr(size));
4272 if (NDalicPINVOKE.SWIGPendingException.Pending)
4273 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4276 internal Vector2 GetMaximumSize()
4278 Vector2 ret = new Vector2(NDalicPINVOKE.Actor_GetMaximumSize(swigCPtr), true);
4279 if (NDalicPINVOKE.SWIGPendingException.Pending)
4280 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4284 internal int GetHierarchyDepth()
4286 int ret = NDalicPINVOKE.Actor_GetHierarchyDepth(swigCPtr);
4287 if (NDalicPINVOKE.SWIGPendingException.Pending)
4288 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4292 /// <since_tizen> 3 </since_tizen>
4293 public uint AddRenderer(Renderer renderer)
4295 uint ret = NDalicPINVOKE.Actor_AddRenderer(swigCPtr, Renderer.getCPtr(renderer));
4296 if (NDalicPINVOKE.SWIGPendingException.Pending)
4297 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4301 internal uint GetRendererCount()
4303 uint ret = NDalicPINVOKE.Actor_GetRendererCount(swigCPtr);
4304 if (NDalicPINVOKE.SWIGPendingException.Pending)
4305 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4309 /// <since_tizen> 3 </since_tizen>
4310 public Renderer GetRendererAt(uint index)
4312 //to fix memory leak issue, match the handle count with native side.
4313 IntPtr cPtr = NDalicPINVOKE.Actor_GetRendererAt(swigCPtr, index);
4314 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
4315 Renderer ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as Renderer;
4316 NDalicPINVOKE.delete_BaseHandle(CPtr);
4317 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
4319 if (NDalicPINVOKE.SWIGPendingException.Pending)
4320 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4324 /// <since_tizen> 3 </since_tizen>
4325 public void RemoveRenderer(Renderer renderer)
4327 NDalicPINVOKE.Actor_RemoveRenderer__SWIG_0(swigCPtr, Renderer.getCPtr(renderer));
4328 if (NDalicPINVOKE.SWIGPendingException.Pending)
4329 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4332 /// <since_tizen> 3 </since_tizen>
4333 public void RemoveRenderer(uint index)
4335 NDalicPINVOKE.Actor_RemoveRenderer__SWIG_1(swigCPtr, index);
4336 if (NDalicPINVOKE.SWIGPendingException.Pending)
4337 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4340 internal TouchDataSignal TouchSignal()
4342 TouchDataSignal ret = new TouchDataSignal(NDalicPINVOKE.Actor_TouchSignal(swigCPtr), false);
4343 if (NDalicPINVOKE.SWIGPendingException.Pending)
4344 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4348 internal HoverSignal HoveredSignal()
4350 HoverSignal ret = new HoverSignal(NDalicPINVOKE.Actor_HoveredSignal(swigCPtr), false);
4351 if (NDalicPINVOKE.SWIGPendingException.Pending)
4352 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4356 internal WheelSignal WheelEventSignal()
4358 WheelSignal ret = new WheelSignal(NDalicPINVOKE.Actor_WheelEventSignal(swigCPtr), false);
4359 if (NDalicPINVOKE.SWIGPendingException.Pending)
4360 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4364 internal ViewSignal OnWindowSignal()
4366 ViewSignal ret = new ViewSignal(NDalicPINVOKE.Actor_OnStageSignal(swigCPtr), false);
4367 if (NDalicPINVOKE.SWIGPendingException.Pending)
4368 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4372 internal ViewSignal OffWindowSignal()
4374 ViewSignal ret = new ViewSignal(NDalicPINVOKE.Actor_OffStageSignal(swigCPtr), false);
4375 if (NDalicPINVOKE.SWIGPendingException.Pending)
4376 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4380 internal ViewSignal OnRelayoutSignal()
4382 ViewSignal ret = new ViewSignal(NDalicPINVOKE.Actor_OnRelayoutSignal(swigCPtr), false);
4383 if (NDalicPINVOKE.SWIGPendingException.Pending)
4384 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4388 internal ViewVisibilityChangedSignal VisibilityChangedSignal(View view)
4390 ViewVisibilityChangedSignal ret = new ViewVisibilityChangedSignal(NDalicPINVOKE.VisibilityChangedSignal(View.getCPtr(view)), false);
4391 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4396 internal ViewLayoutDirectionChangedSignal LayoutDirectionChangedSignal(View view)
4398 ViewLayoutDirectionChangedSignal ret = new ViewLayoutDirectionChangedSignal(NDalicManualPINVOKE.LayoutDirectionChangedSignal(View.getCPtr(view)), false);
4399 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4404 internal ViewSignal ResourcesLoadedSignal()
4406 ViewSignal ret = new ViewSignal(NDalicPINVOKE.ResourceReadySignal(swigCPtr), false);
4407 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4412 /// Gets or sets the origin of a view within its parent's area.<br />
4413 /// 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 />
4414 /// The default parent-origin is ParentOrigin.TopLeft (0.0, 0.0, 0.5).<br />
4415 /// A view's position is the distance between this origin and the view's anchor-point.<br />
4417 /// <pre>The view has been initialized.</pre>
4418 /// <since_tizen> 3 </since_tizen>
4419 public Position ParentOrigin
4423 return (Position)GetValue(ParentOriginProperty);
4427 SetValue(ParentOriginProperty, value);
4428 NotifyPropertyChanged();
4432 internal float ParentOriginX
4437 GetProperty(View.Property.PARENT_ORIGIN_X).Get(out temp);
4442 SetProperty(View.Property.PARENT_ORIGIN_X, new Tizen.NUI.PropertyValue(value));
4443 NotifyPropertyChanged();
4447 internal float ParentOriginY
4452 GetProperty(View.Property.PARENT_ORIGIN_Y).Get(out temp);
4457 SetProperty(View.Property.PARENT_ORIGIN_Y, new Tizen.NUI.PropertyValue(value));
4458 NotifyPropertyChanged();
4462 internal float ParentOriginZ
4467 GetProperty(View.Property.PARENT_ORIGIN_Z).Get(out temp);
4472 SetProperty(View.Property.PARENT_ORIGIN_Z, new Tizen.NUI.PropertyValue(value));
4473 NotifyPropertyChanged();
4478 /// Gets or sets the anchor-point of a view.<br />
4479 /// 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 />
4480 /// The default pivot point is PivotPoint.Center (0.5, 0.5, 0.5).<br />
4481 /// A view position is the distance between its parent-origin and this anchor-point.<br />
4482 /// A view's orientation is the rotation from its default orientation, the rotation is centered around its anchor-point.<br />
4483 /// <pre>The view has been initialized.</pre>
4485 /// <since_tizen> 3 </since_tizen>
4486 public Position PivotPoint
4490 return (Position)GetValue(PivotPointProperty);
4494 SetValue(PivotPointProperty, value);
4495 NotifyPropertyChanged();
4499 internal float PivotPointX
4504 GetProperty(View.Property.ANCHOR_POINT_X).Get(out temp);
4509 SetProperty(View.Property.ANCHOR_POINT_X, new Tizen.NUI.PropertyValue(value));
4513 internal float PivotPointY
4518 GetProperty(View.Property.ANCHOR_POINT_Y).Get(out temp);
4523 SetProperty(View.Property.ANCHOR_POINT_Y, new Tizen.NUI.PropertyValue(value));
4527 internal float PivotPointZ
4532 GetProperty(View.Property.ANCHOR_POINT_Z).Get(out temp);
4537 SetProperty(View.Property.ANCHOR_POINT_Z, new Tizen.NUI.PropertyValue(value));
4542 /// Gets or sets the size width of the view.
4544 /// <since_tizen> 3 </since_tizen>
4545 public float SizeWidth
4549 return (float)GetValue(SizeWidthProperty);
4553 SetValue(SizeWidthProperty, value);
4554 NotifyPropertyChanged();
4559 /// Gets or sets the size height of the view.
4561 /// <since_tizen> 3 </since_tizen>
4562 public float SizeHeight
4566 return (float)GetValue(SizeHeightProperty);
4570 SetValue(SizeHeightProperty, value);
4571 NotifyPropertyChanged();
4576 /// Gets or sets the position of the view.<br />
4577 /// By default, sets the position vector between the parent origin and pivot point (default).<br />
4578 /// If the position inheritance is disabled, sets the world position.<br />
4580 /// <since_tizen> 3 </since_tizen>
4581 public Position Position
4585 return (Position)GetValue(PositionProperty);
4589 SetValue(PositionProperty, value);
4590 NotifyPropertyChanged();
4595 /// Gets or sets the position X of the view.
4597 /// <since_tizen> 3 </since_tizen>
4598 public float PositionX
4602 return (float)GetValue(PositionXProperty);
4606 SetValue(PositionXProperty, value);
4607 NotifyPropertyChanged();
4612 /// Gets or sets the position Y of the view.
4614 /// <since_tizen> 3 </since_tizen>
4615 public float PositionY
4619 return (float)GetValue(PositionYProperty);
4623 SetValue(PositionYProperty, value);
4624 NotifyPropertyChanged();
4629 /// Gets or sets the position Z of the view.
4631 /// <since_tizen> 3 </since_tizen>
4632 public float PositionZ
4636 return (float)GetValue(PositionZProperty);
4640 SetValue(PositionZProperty, value);
4641 NotifyPropertyChanged();
4646 /// Gets or sets the world position of the view.
4648 /// <since_tizen> 3 </since_tizen>
4649 public Vector3 WorldPosition
4653 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
4654 GetProperty(View.Property.WORLD_POSITION).Get(temp);
4659 internal float WorldPositionX
4664 GetProperty(View.Property.WORLD_POSITION_X).Get(out temp);
4669 internal float WorldPositionY
4674 GetProperty(View.Property.WORLD_POSITION_Y).Get(out temp);
4679 internal float WorldPositionZ
4684 GetProperty(View.Property.WORLD_POSITION_Z).Get(out temp);
4690 /// Gets or sets the orientation of the view.<br />
4691 /// The view's orientation is the rotation from its default orientation, and the rotation is centered around its anchor-point.<br />
4693 /// <remarks>This is an asynchronous method.</remarks>
4694 /// <since_tizen> 3 </since_tizen>
4695 public Rotation Orientation
4699 return (Rotation)GetValue(OrientationProperty);
4703 SetValue(OrientationProperty, value);
4704 NotifyPropertyChanged();
4709 /// Gets or sets the world orientation of the view.<br />
4711 /// <since_tizen> 3 </since_tizen>
4712 public Rotation WorldOrientation
4716 Rotation temp = new Rotation();
4717 GetProperty(View.Property.WORLD_ORIENTATION).Get(temp);
4723 /// Gets or sets the scale factor applied to the view.<br />
4725 /// <since_tizen> 3 </since_tizen>
4726 public Vector3 Scale
4730 return (Vector3)GetValue(ScaleProperty);
4734 SetValue(ScaleProperty, value);
4735 NotifyPropertyChanged();
4740 /// Gets or sets the scale X factor applied to the view.
4742 /// <since_tizen> 3 </since_tizen>
4747 return (float)GetValue(ScaleXProperty);
4751 SetValue(ScaleXProperty, value);
4752 NotifyPropertyChanged();
4757 /// Gets or sets the scale Y factor applied to the view.
4759 /// <since_tizen> 3 </since_tizen>
4764 return (float)GetValue(ScaleYProperty);
4768 SetValue(ScaleYProperty, value);
4769 NotifyPropertyChanged();
4774 /// Gets or sets the scale Z factor applied to the view.
4776 /// <since_tizen> 3 </since_tizen>
4781 return (float)GetValue(ScaleZProperty);
4785 SetValue(ScaleZProperty, value);
4786 NotifyPropertyChanged();
4791 /// Gets the world scale of the view.
4793 /// <since_tizen> 3 </since_tizen>
4794 public Vector3 WorldScale
4798 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
4799 GetProperty(View.Property.WORLD_SCALE).Get(temp);
4805 /// Retrieves the visibility flag of the view.
4808 /// If the view is not visible, then the view and its children will not be rendered.
4809 /// 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.
4811 /// <since_tizen> 3 </since_tizen>
4812 public bool Visibility
4817 GetProperty(View.Property.VISIBLE).Get(out temp);
4823 /// Gets the view's world color.
4825 /// <since_tizen> 3 </since_tizen>
4826 public Vector4 WorldColor
4830 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
4831 GetProperty(View.Property.WORLD_COLOR).Get(temp);
4836 internal Matrix WorldMatrix
4840 Matrix temp = new Matrix();
4841 GetProperty(View.Property.WORLD_MATRIX).Get(temp);
4847 /// Gets or sets the view's name.
4849 /// <since_tizen> 3 </since_tizen>
4854 return (string)GetValue(NameProperty);
4858 SetValue(NameProperty, value);
4859 NotifyPropertyChanged();
4864 /// Get the number of children held by the view.
4866 /// <since_tizen> 3 </since_tizen>
4867 public new uint ChildCount
4871 return GetChildCount();
4876 /// Gets the view's ID.
4879 /// <since_tizen> 3 </since_tizen>
4889 /// Gets or sets the status of whether the view should emit touch or hover signals.
4891 /// <since_tizen> 3 </since_tizen>
4892 public bool Sensitive
4896 return (bool)GetValue(SensitiveProperty);
4900 SetValue(SensitiveProperty, value);
4901 NotifyPropertyChanged();
4906 /// 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.
4908 /// <since_tizen> 3 </since_tizen>
4909 public bool LeaveRequired
4913 return (bool)GetValue(LeaveRequiredProperty);
4917 SetValue(LeaveRequiredProperty, value);
4918 NotifyPropertyChanged();
4923 /// Gets or sets the status of whether a child view inherits it's parent's orientation.
4925 /// <since_tizen> 3 </since_tizen>
4926 public bool InheritOrientation
4930 return (bool)GetValue(InheritOrientationProperty);
4934 SetValue(InheritOrientationProperty, value);
4935 NotifyPropertyChanged();
4940 /// Gets or sets the status of whether a child view inherits it's parent's scale.
4942 /// <since_tizen> 3 </since_tizen>
4943 public bool InheritScale
4947 return (bool)GetValue(InheritScaleProperty);
4951 SetValue(InheritScaleProperty, value);
4952 NotifyPropertyChanged();
4957 /// Gets or sets the status of how the view and its children should be drawn.<br />
4958 /// Not all views are renderable, but DrawMode can be inherited from any view.<br />
4959 /// 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 />
4960 /// If DrawMode.Overlay2D is used, the view and its children will be drawn as a 2D overlay.<br />
4961 /// Overlay views are drawn in a separate pass, after all non-overlay views within the layer.<br />
4962 /// For overlay views, the drawing order is with respect to tree levels of views, and depth-testing will not be used.<br />
4964 /// <since_tizen> 3 </since_tizen>
4965 public DrawModeType DrawMode
4969 return (DrawModeType)GetValue(DrawModeProperty);
4973 SetValue(DrawModeProperty, value);
4974 NotifyPropertyChanged();
4979 /// Gets or sets the relative to parent size factor of the view.<br />
4980 /// This factor is only used when ResizePolicyType is set to either: ResizePolicyType.SizeRelativeToParent or ResizePolicyType.SizeFixedOffsetFromParent.<br />
4981 /// This view's size is set to the view's size multiplied by or added to this factor, depending on ResizePolicyType.<br />
4983 /// <since_tizen> 3 </since_tizen>
4984 public Vector3 SizeModeFactor
4988 return (Vector3)GetValue(SizeModeFactorProperty);
4992 SetValue(SizeModeFactorProperty, value);
4993 NotifyPropertyChanged();
4998 /// Gets or sets the width resize policy to be used.
5000 /// <since_tizen> 3 </since_tizen>
5001 public ResizePolicyType WidthResizePolicy
5005 return (ResizePolicyType)GetValue(WidthResizePolicyProperty);
5009 SetValue(WidthResizePolicyProperty, value);
5010 NotifyPropertyChanged();
5015 /// Gets or sets the height resize policy to be used.
5017 /// <since_tizen> 3 </since_tizen>
5018 public ResizePolicyType HeightResizePolicy
5022 return (ResizePolicyType)GetValue(HeightResizePolicyProperty);
5026 SetValue(HeightResizePolicyProperty, value);
5027 NotifyPropertyChanged();
5032 /// Gets or sets the policy to use when setting size with size negotiation.<br />
5033 /// Defaults to SizeScalePolicyType.UseSizeSet.<br />
5035 /// <since_tizen> 3 </since_tizen>
5036 public SizeScalePolicyType SizeScalePolicy
5040 return (SizeScalePolicyType)GetValue(SizeScalePolicyProperty);
5044 SetValue(SizeScalePolicyProperty, value);
5045 NotifyPropertyChanged();
5050 /// Gets or sets the status of whether the width size is dependent on the height size.
5052 /// <since_tizen> 3 </since_tizen>
5053 public bool WidthForHeight
5057 return (bool)GetValue(WidthForHeightProperty);
5061 SetValue(WidthForHeightProperty, value);
5062 NotifyPropertyChanged();
5067 /// Gets or sets the status of whether the height size is dependent on the width size.
5069 /// <since_tizen> 3 </since_tizen>
5070 public bool HeightForWidth
5074 return (bool)GetValue(HeightForWidthProperty);
5078 SetValue(HeightForWidthProperty, value);
5079 NotifyPropertyChanged();
5084 /// Gets or sets the padding for use in layout.
5086 /// <since_tizen> 5 </since_tizen>
5087 public Extents Padding
5091 return (Extents)GetValue(PaddingProperty);
5095 SetValue(PaddingProperty, value);
5096 NotifyPropertyChanged();
5101 /// Gets or sets the minimum size the view can be assigned in size negotiation.
5103 /// <since_tizen> 3 </since_tizen>
5104 public Size2D MinimumSize
5108 return (Size2D)GetValue(MinimumSizeProperty);
5112 SetValue(MinimumSizeProperty, value);
5113 NotifyPropertyChanged();
5118 /// Gets or sets the maximum size the view can be assigned in size negotiation.
5120 /// <since_tizen> 3 </since_tizen>
5121 public Size2D MaximumSize
5125 return (Size2D)GetValue(MaximumSizeProperty);
5129 SetValue(MaximumSizeProperty, value);
5130 NotifyPropertyChanged();
5135 /// Gets or sets whether a child view inherits it's parent's position.<br />
5136 /// Default is to inherit.<br />
5137 /// 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 />
5139 /// <since_tizen> 3 </since_tizen>
5140 public bool InheritPosition
5144 return (bool)GetValue(InheritPositionProperty);
5148 SetValue(InheritPositionProperty, value);
5149 NotifyPropertyChanged();
5154 /// Gets or sets the clipping behavior (mode) of it's children.
5156 /// <since_tizen> 3 </since_tizen>
5157 public ClippingModeType ClippingMode
5161 return (ClippingModeType)GetValue(ClippingModeProperty);
5165 SetValue(ClippingModeProperty, value);
5166 NotifyPropertyChanged();
5171 /// Gets the number of renderers held by the view.
5173 /// <since_tizen> 3 </since_tizen>
5174 public uint RendererCount
5178 return GetRendererCount();
5183 /// [Obsolete("Please do not use! this will be deprecated")]
5185 /// <since_tizen> 3 </since_tizen>
5186 /// Please do not use! this will be deprecated!
5187 /// Instead please use PivotPoint.
5188 [Obsolete("Please do not use! This will be deprecated! Please use PivotPoint instead! " +
5190 "View view = new View(); " +
5191 "view.PivotPoint = PivotPoint.Center; " +
5192 "view.PositionUsesPivotPoint = true;")]
5193 [EditorBrowsable(EditorBrowsableState.Never)]
5194 public Position AnchorPoint
5198 Position temp = new Position(0.0f, 0.0f, 0.0f);
5199 GetProperty(View.Property.ANCHOR_POINT).Get(temp);
5204 SetProperty(View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
5205 NotifyPropertyChanged();
5210 /// [Obsolete("Please do not use! this will be deprecated")]
5212 /// <since_tizen> 3 </since_tizen>
5213 [Obsolete("Please do not use! This will be deprecated! Please use Size2D instead! " +
5215 "View view = new View(); " +
5216 "view.Size2D = new Size2D(100, 100);")]
5217 [EditorBrowsable(EditorBrowsableState.Never)]
5222 return (Size)GetValue(SizeProperty);
5226 SetValue(SizeProperty, value);
5227 NotifyPropertyChanged();
5232 /// "Please DO NOT use! This will be deprecated! Please use 'Container GetParent() for derived class' instead!"
5234 /// <since_tizen> 3 </since_tizen>
5235 [Obsolete("Please do not use! This will be deprecated! Please use 'Container GetParent() for derived class' instead! " +
5237 "Container parent = view.GetParent(); " +
5238 "View view = parent as View;")]
5239 [EditorBrowsable(EditorBrowsableState.Never)]
5240 public new View Parent
5245 IntPtr cPtr = NDalicPINVOKE.Actor_GetParent(swigCPtr);
5246 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
5247 BaseHandle basehandle = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle);
5249 if (basehandle is Layer layer)
5251 ret = new View(Layer.getCPtr(layer).Handle, false);
5252 NUILog.Error("This Parent property is deprecated, shoud do not be used");
5256 ret = basehandle as View;
5259 NDalicPINVOKE.delete_BaseHandle(CPtr);
5260 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
5262 if (NDalicPINVOKE.SWIGPendingException.Pending)
5263 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5269 /// Gets/Sets whether inherit parent's the layout Direction.
5271 /// <since_tizen> 4 </since_tizen>
5272 public bool InheritLayoutDirection
5276 return (bool)GetValue(InheritLayoutDirectionProperty);
5280 SetValue(InheritLayoutDirectionProperty, value);
5281 NotifyPropertyChanged();
5286 /// Gets/Sets the layout Direction.
5288 /// <since_tizen> 4 </since_tizen>
5289 public ViewLayoutDirectionType LayoutDirection
5293 return (ViewLayoutDirectionType)GetValue(LayoutDirectionProperty);
5297 SetValue(LayoutDirectionProperty, value);
5298 NotifyPropertyChanged();
5303 /// Gets or sets the Margin for use in layout.
5305 /// <since_tizen> 4 </since_tizen>
5306 public Extents Margin
5310 return (Extents)GetValue(MarginProperty);
5314 SetValue(MarginProperty, value);
5315 NotifyPropertyChanged();
5319 internal Style Style
5323 return (Style)GetValue(StyleProperty);
5327 SetValue(StyleProperty, value);
5332 /// [Obsolete("Please do not use! this will be deprecated")]
5334 /// Please do not use! this will be deprecated!
5335 /// Instead please use Padding.
5336 /// <since_tizen> 4 </since_tizen>
5337 [Obsolete("Please do not use! this will be deprecated, instead please use Padding.")]
5338 [EditorBrowsable(EditorBrowsableState.Never)]
5339 public Extents PaddingEX
5343 Extents temp = new Extents(0, 0, 0, 0);
5344 GetProperty(View.Property.PADDING).Get(temp);
5349 SetProperty(View.Property.PADDING, new Tizen.NUI.PropertyValue(value));
5350 NotifyPropertyChanged();
5355 /// Perform an action on a visual registered to this view. <br />
5356 /// Visuals will have actions, this API is used to perform one of these actions with the given attributes.
5358 /// <param name="propertyIndexOfVisual">The Property index of the visual.</param>
5359 /// <param name="propertyIndexOfActionId">The action to perform. See Visual to find supported actions.</param>
5360 /// <param name="attributes">Optional attributes for the action.</param>
5361 /// <since_tizen> 5 </since_tizen>
5362 public void DoAction(int propertyIndexOfVisual, int propertyIndexOfActionId, PropertyValue attributes)
5364 NDalicManualPINVOKE.View_DoAction(swigCPtr, propertyIndexOfVisual, propertyIndexOfActionId, PropertyValue.getCPtr(attributes));
5365 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
5368 internal readonly MergedStyle _mergedStyle;
5370 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
5371 [EditorBrowsable(EditorBrowsableState.Never)]
5372 public int WidthSpecificationFixed
5377 if (GetProperty(LayoutItemWrapper.ChildProperty.WIDTH_SPECIFICATION).Get(out tmp) == false)
5379 NUILog.Error("WidthSpecificationFixed get error!");
5385 SetProperty(LayoutItemWrapper.ChildProperty.WIDTH_SPECIFICATION, new Tizen.NUI.PropertyValue(value));
5389 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
5390 [EditorBrowsable(EditorBrowsableState.Never)]
5391 public int HeightSpecificationFixed
5396 if (GetProperty(LayoutItemWrapper.ChildProperty.HEIGHT_SPECIFICATION).Get(out tmp) == false)
5398 NUILog.Error("HeightSpecificationFixed get error!");
5404 SetProperty(LayoutItemWrapper.ChildProperty.HEIGHT_SPECIFICATION, new Tizen.NUI.PropertyValue(value));
5408 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
5409 [EditorBrowsable(EditorBrowsableState.Never)]
5410 public ChildLayoutData WidthSpecification
5415 if (GetProperty(LayoutItemWrapper.ChildProperty.WIDTH_SPECIFICATION).Get(out tmp) == false)
5417 NUILog.Error("WidthSpecificationFixed get error!");
5419 return (ChildLayoutData)tmp;
5423 SetProperty(LayoutItemWrapper.ChildProperty.WIDTH_SPECIFICATION, new Tizen.NUI.PropertyValue((int)value));
5427 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
5428 [EditorBrowsable(EditorBrowsableState.Never)]
5429 public ChildLayoutData HeightSpecification
5434 if (GetProperty(LayoutItemWrapper.ChildProperty.HEIGHT_SPECIFICATION).Get(out tmp) == false)
5436 NUILog.Error("HeightSpecificationFixed get error!");
5438 return (ChildLayoutData)tmp;
5442 SetProperty(LayoutItemWrapper.ChildProperty.HEIGHT_SPECIFICATION, new Tizen.NUI.PropertyValue((int)value));
5453 /// The View layout Direction type.
5455 /// <since_tizen> 4 </since_tizen>
5456 public enum ViewLayoutDirectionType
5461 /// <since_tizen> 4 </since_tizen>
5466 /// <since_tizen> 4 </since_tizen>
5470 /// This will be public opened in tizen_5.0 after ACR done. Before ACR, need to be hidden as inhouse API.
5471 [EditorBrowsable(EditorBrowsableState.Never)]
5472 public enum ChildLayoutData