2 * Copyright(c) 2017 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;
21 namespace Tizen.NUI.BaseComponents
24 /// View is the base class for all views.
26 /// <since_tizen> 3 </since_tizen>
27 public class View : Container
29 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
32 internal View(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.View_SWIGUpcast(cPtr), cMemoryOwn)
34 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
37 PositionUsesPivotPoint = false;
41 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(View obj)
43 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
46 // From Container Base class
49 /// Adds a child view to this view.
51 /// <seealso cref="Container.Add" />
52 /// <since_tizen> 4 </since_tizen>
53 public override void Add(View child)
55 Container oldParent = child.Parent;
58 if (oldParent != null)
60 oldParent.Remove(child);
62 NDalicPINVOKE.Actor_Add(swigCPtr, View.getCPtr(child));
63 if (NDalicPINVOKE.SWIGPendingException.Pending)
64 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
70 /// Removes a child view from this View. If the view was not a child of this view, this is a no-op.
72 /// <seealso cref="Container.Remove" />
73 /// <since_tizen> 4 </since_tizen>
74 public override void Remove(View child)
76 NDalicPINVOKE.Actor_Remove(swigCPtr, View.getCPtr(child));
77 if (NDalicPINVOKE.SWIGPendingException.Pending)
78 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
80 Children.Remove(child);
84 /// Retrieves a child view by index.
86 /// <seealso cref="Container.GetChildAt" />
87 /// <since_tizen> 4 </since_tizen>
88 public override View GetChildAt(uint index)
90 if (index < Children.Count)
92 return Children[Convert.ToInt32(index)];
101 /// Retrieves the number of children held by the view.
103 /// <seealso cref="Container.GetChildCount" />
104 /// <since_tizen> 4 </since_tizen>
105 public override uint GetChildCount()
107 return Convert.ToUInt32(Children.Count);
111 /// Gets the views parent.
113 /// <seealso cref="Container.GetParent()" />
114 /// <since_tizen> 4 </since_tizen>
115 public override Container GetParent()
117 //to fix memory leak issue, match the handle count with native side.
118 IntPtr cPtr = NDalicPINVOKE.Actor_GetParent(swigCPtr);
119 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
120 BaseHandle basehandle = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle);
121 NDalicPINVOKE.delete_BaseHandle(CPtr);
122 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
124 if (NDalicPINVOKE.SWIGPendingException.Pending)
125 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
127 return basehandle as Container;
130 internal bool IsTopLevelView()
132 if (GetParent() is Layer)
140 /// you can override it to clean-up your own resources.
142 /// <param name="type">DisposeTypes</param>
143 /// <since_tizen> 3 </since_tizen>
144 protected override void Dispose(DisposeTypes type)
151 if (type == DisposeTypes.Explicit)
154 //Release your own managed resources here.
155 //You should release all of your own disposable objects here.
158 //Release your own unmanaged resources here.
159 //You should not access any managed member here except static instance.
160 //because the execution order of Finalizes is non-deterministic.
163 DisConnectFromSignals();
166 if (swigCPtr.Handle != global::System.IntPtr.Zero)
171 NDalicPINVOKE.delete_View(swigCPtr);
173 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
180 private void DisConnectFromSignals()
182 // Save current CPtr.
183 global::System.Runtime.InteropServices.HandleRef currentCPtr = swigCPtr;
185 // Use BaseHandle CPtr as current might have been deleted already in derived classes.
186 swigCPtr = GetBaseHandleCPtrHandleRef;
188 if (_onRelayoutEventCallback != null)
190 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
193 if (_offWindowEventCallback != null)
195 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
198 if (_onWindowEventCallback != null)
200 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
203 if (_wheelEventCallback != null)
205 this.WheelEventSignal().Disconnect(_wheelEventCallback);
208 if (_hoverEventCallback != null)
210 this.HoveredSignal().Disconnect(_hoverEventCallback);
213 if (_touchDataCallback != null)
215 this.TouchSignal().Disconnect(_touchDataCallback);
218 if (_ResourcesLoadedCallback != null)
220 this.ResourcesLoadedSignal().Disconnect(_ResourcesLoadedCallback);
223 if (_offWindowEventCallback != null)
225 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
228 if (_onWindowEventCallback != null)
230 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
233 if (_wheelEventCallback != null)
235 this.WheelEventSignal().Disconnect(_wheelEventCallback);
238 if (_hoverEventCallback != null)
240 this.HoveredSignal().Disconnect(_hoverEventCallback);
243 if (_touchDataCallback != null)
245 this.TouchSignal().Disconnect(_touchDataCallback);
248 if (_onRelayoutEventCallback != null)
250 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
253 if (_keyCallback != null)
255 this.KeyEventSignal().Disconnect(_keyCallback);
258 if (_keyInputFocusLostCallback != null)
260 this.KeyInputFocusLostSignal().Disconnect(_keyInputFocusLostCallback);
263 if (_keyInputFocusGainedCallback != null)
265 this.KeyInputFocusGainedSignal().Disconnect(_keyInputFocusGainedCallback);
268 // BaseHandle CPtr is used in Registry and there is danger of deletion if we keep using it here.
269 // Restore current CPtr.
270 swigCPtr = currentCPtr;
273 private EventHandler _keyInputFocusGainedEventHandler;
274 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
275 private delegate void KeyInputFocusGainedCallbackType(IntPtr control);
276 private KeyInputFocusGainedCallbackType _keyInputFocusGainedCallback;
279 /// An event for the KeyInputFocusGained signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
280 /// The KeyInputFocusGained signal is emitted when the control gets the key input focus.<br />
282 /// <since_tizen> 3 </since_tizen>
283 public event EventHandler FocusGained
287 if (_keyInputFocusGainedEventHandler == null)
289 _keyInputFocusGainedCallback = OnKeyInputFocusGained;
290 this.KeyInputFocusGainedSignal().Connect(_keyInputFocusGainedCallback);
293 _keyInputFocusGainedEventHandler += value;
298 _keyInputFocusGainedEventHandler -= value;
300 if (_keyInputFocusGainedEventHandler == null && KeyInputFocusGainedSignal().Empty() == false)
302 this.KeyInputFocusGainedSignal().Disconnect(_keyInputFocusGainedCallback);
307 private void OnKeyInputFocusGained(IntPtr view)
309 if (_keyInputFocusGainedEventHandler != null)
311 _keyInputFocusGainedEventHandler(this, null);
316 private EventHandler _keyInputFocusLostEventHandler;
317 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
318 private delegate void KeyInputFocusLostCallbackType(IntPtr control);
319 private KeyInputFocusLostCallbackType _keyInputFocusLostCallback;
322 /// An event for the KeyInputFocusLost signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
323 /// The KeyInputFocusLost signal is emitted when the control loses the key input focus.<br />
325 /// <since_tizen> 3 </since_tizen>
326 public event EventHandler FocusLost
330 if (_keyInputFocusLostEventHandler == null)
332 _keyInputFocusLostCallback = OnKeyInputFocusLost;
333 this.KeyInputFocusLostSignal().Connect(_keyInputFocusLostCallback);
336 _keyInputFocusLostEventHandler += value;
341 _keyInputFocusLostEventHandler -= value;
343 if (_keyInputFocusLostEventHandler == null && KeyInputFocusLostSignal().Empty() == false)
345 this.KeyInputFocusLostSignal().Disconnect(_keyInputFocusLostCallback);
350 private void OnKeyInputFocusLost(IntPtr view)
352 if (_keyInputFocusLostEventHandler != null)
354 _keyInputFocusLostEventHandler(this, null);
359 /// Event arguments that passed via the KeyEvent signal.
361 /// <since_tizen> 3 </since_tizen>
362 public class KeyEventArgs : EventArgs
367 /// Key - is the key sent to the view.
369 /// <since_tizen> 3 </since_tizen>
383 private EventHandlerWithReturnType<object, KeyEventArgs, bool> _keyEventHandler;
384 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
385 private delegate bool KeyCallbackType(IntPtr control, IntPtr keyEvent);
386 private KeyCallbackType _keyCallback;
389 /// An event for the KeyPressed signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
390 /// The KeyPressed signal is emitted when the key event is received.<br />
392 /// <since_tizen> 3 </since_tizen>
393 public event EventHandlerWithReturnType<object, KeyEventArgs, bool> KeyEvent
397 if (_keyEventHandler == null)
399 _keyCallback = OnKeyEvent;
400 this.KeyEventSignal().Connect(_keyCallback);
403 _keyEventHandler += value;
408 _keyEventHandler -= value;
410 if (_keyEventHandler == null && KeyEventSignal().Empty() == false)
412 this.KeyEventSignal().Disconnect(_keyCallback);
417 private bool OnKeyEvent(IntPtr view, IntPtr keyEvent)
419 if (keyEvent == global::System.IntPtr.Zero)
421 NUILog.Error("keyEvent should not be null!");
425 KeyEventArgs e = new KeyEventArgs();
429 e.Key = Tizen.NUI.Key.GetKeyFromPtr(keyEvent);
431 if (_keyEventHandler != null)
433 Delegate[] delegateList = _keyEventHandler.GetInvocationList();
435 // Oring the result of each callback.
436 foreach (EventHandlerWithReturnType<object, KeyEventArgs, bool> del in delegateList)
438 result |= del(this, e);
445 private EventHandler _onRelayoutEventHandler;
446 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
447 private delegate void OnRelayoutEventCallbackType(IntPtr control);
448 private OnRelayoutEventCallbackType _onRelayoutEventCallback;
451 /// An event for the OnRelayout signal which can be used to subscribe or unsubscribe the event handler.<br />
452 /// The OnRelayout signal is emitted after the size has been set on the view during relayout.<br />
454 /// <since_tizen> 3 </since_tizen>
455 public event EventHandler Relayout
459 if (_onRelayoutEventHandler == null)
461 _onRelayoutEventCallback = OnRelayout;
462 this.OnRelayoutSignal().Connect(_onRelayoutEventCallback);
465 _onRelayoutEventHandler += value;
470 _onRelayoutEventHandler -= value;
472 if (_onRelayoutEventHandler == null && OnRelayoutSignal().Empty() == false)
474 this.OnRelayoutSignal().Disconnect(_onRelayoutEventCallback);
480 // Callback for View OnRelayout signal
481 private void OnRelayout(IntPtr data)
483 if (_onRelayoutEventHandler != null)
485 _onRelayoutEventHandler(this, null);
490 /// Event arguments that passed via the touch signal.
492 /// <since_tizen> 3 </since_tizen>
493 public class TouchEventArgs : EventArgs
495 private Touch _touch;
498 /// Touch - contains the information of touch points.
500 /// <since_tizen> 3 </since_tizen>
514 private EventHandlerWithReturnType<object, TouchEventArgs, bool> _touchDataEventHandler;
515 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
516 private delegate bool TouchDataCallbackType(IntPtr view, IntPtr touchData);
517 private TouchDataCallbackType _touchDataCallback;
520 /// An event for the touched signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
521 /// The touched signal is emitted when the touch input is received.<br />
523 /// <since_tizen> 3 </since_tizen>
524 public event EventHandlerWithReturnType<object, TouchEventArgs, bool> TouchEvent
528 if (_touchDataEventHandler == null)
530 _touchDataCallback = OnTouch;
531 this.TouchSignal().Connect(_touchDataCallback);
534 _touchDataEventHandler += value;
539 _touchDataEventHandler -= value;
541 if (_touchDataEventHandler == null && TouchSignal().Empty() == false)
543 this.TouchSignal().Disconnect(_touchDataCallback);
549 // Callback for View TouchSignal
550 private bool OnTouch(IntPtr view, IntPtr touchData)
552 if (touchData == global::System.IntPtr.Zero)
554 NUILog.Error("touchData should not be null!");
558 TouchEventArgs e = new TouchEventArgs();
560 e.Touch = Tizen.NUI.Touch.GetTouchFromPtr(touchData);
562 if (_touchDataEventHandler != null)
564 return _touchDataEventHandler(this, e);
571 /// Event arguments that passed via the hover signal.
573 /// <since_tizen> 3 </since_tizen>
574 public class HoverEventArgs : EventArgs
576 private Hover _hover;
579 /// Hover - contains touch points that represent the points that are currently being hovered or the points where a hover has stopped.
581 /// <since_tizen> 3 </since_tizen>
595 private EventHandlerWithReturnType<object, HoverEventArgs, bool> _hoverEventHandler;
596 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
597 private delegate bool HoverEventCallbackType(IntPtr view, IntPtr hoverEvent);
598 private HoverEventCallbackType _hoverEventCallback;
601 /// An event for the hovered signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
602 /// The hovered signal is emitted when the hover input is received.<br />
604 /// <since_tizen> 3 </since_tizen>
605 public event EventHandlerWithReturnType<object, HoverEventArgs, bool> HoverEvent
609 if (_hoverEventHandler == null)
611 _hoverEventCallback = OnHoverEvent;
612 this.HoveredSignal().Connect(_hoverEventCallback);
615 _hoverEventHandler += value;
620 _hoverEventHandler -= value;
622 if (_hoverEventHandler == null && HoveredSignal().Empty() == false)
624 this.HoveredSignal().Disconnect(_hoverEventCallback);
630 // Callback for View Hover signal
631 private bool OnHoverEvent(IntPtr view, IntPtr hoverEvent)
633 if (hoverEvent == global::System.IntPtr.Zero)
635 NUILog.Error("hoverEvent should not be null!");
639 HoverEventArgs e = new HoverEventArgs();
641 e.Hover = Tizen.NUI.Hover.GetHoverFromPtr(hoverEvent);
643 if (_hoverEventHandler != null)
645 return _hoverEventHandler(this, e);
652 /// Event arguments that passed via the wheel signal.
654 /// <since_tizen> 3 </since_tizen>
655 public class WheelEventArgs : EventArgs
657 private Wheel _wheel;
660 /// WheelEvent - store a wheel rolling type: MOUSE_WHEEL or CUSTOM_WHEEL.
662 /// <since_tizen> 3 </since_tizen>
676 private EventHandlerWithReturnType<object, WheelEventArgs, bool> _wheelEventHandler;
677 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
678 private delegate bool WheelEventCallbackType(IntPtr view, IntPtr wheelEvent);
679 private WheelEventCallbackType _wheelEventCallback;
682 /// An event for the WheelMoved signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
683 /// The WheelMoved signal is emitted when the wheel event is received.<br />
685 /// <since_tizen> 3 </since_tizen>
686 public event EventHandlerWithReturnType<object, WheelEventArgs, bool> WheelEvent
690 if (_wheelEventHandler == null)
692 _wheelEventCallback = OnWheelEvent;
693 this.WheelEventSignal().Connect(_wheelEventCallback);
696 _wheelEventHandler += value;
701 _wheelEventHandler -= value;
703 if (_wheelEventHandler == null && WheelEventSignal().Empty() == false)
705 this.WheelEventSignal().Disconnect(_wheelEventCallback);
711 // Callback for View Wheel signal
712 private bool OnWheelEvent(IntPtr view, IntPtr wheelEvent)
714 if (wheelEvent == global::System.IntPtr.Zero)
716 NUILog.Error("wheelEvent should not be null!");
720 WheelEventArgs e = new WheelEventArgs();
722 e.Wheel = Tizen.NUI.Wheel.GetWheelFromPtr(wheelEvent);
724 if (_wheelEventHandler != null)
726 return _wheelEventHandler(this, e);
732 private EventHandler _onWindowEventHandler;
733 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
734 private delegate void OnWindowEventCallbackType(IntPtr control);
735 private OnWindowEventCallbackType _onWindowEventCallback;
738 /// An event for the OnWindow signal which can be used to subscribe or unsubscribe the event handler.<br />
739 /// The OnWindow signal is emitted after the view has been connected to the window.<br />
741 /// <since_tizen> 3 </since_tizen>
742 public event EventHandler AddedToWindow
746 if (_onWindowEventHandler == null)
748 _onWindowEventCallback = OnWindow;
749 this.OnWindowSignal().Connect(_onWindowEventCallback);
752 _onWindowEventHandler += value;
757 _onWindowEventHandler -= value;
759 if (_onWindowEventHandler == null && OnWindowSignal().Empty() == false)
761 this.OnWindowSignal().Disconnect(_onWindowEventCallback);
766 // Callback for View OnWindow signal
767 private void OnWindow(IntPtr data)
769 if (_onWindowEventHandler != null)
771 _onWindowEventHandler(this, null);
776 private EventHandler _offWindowEventHandler;
777 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
778 private delegate void OffWindowEventCallbackType(IntPtr control);
779 private OffWindowEventCallbackType _offWindowEventCallback;
782 /// An event for the OffWindow signal, which can be used to subscribe or unsubscribe the event handler.<br />
783 /// OffWindow signal is emitted after the view has been disconnected from the window.<br />
785 /// <since_tizen> 3 </since_tizen>
786 public event EventHandler RemovedFromWindow
790 if (_offWindowEventHandler == null)
792 _offWindowEventCallback = OffWindow;
793 this.OffWindowSignal().Connect(_offWindowEventCallback);
796 _offWindowEventHandler += value;
801 _offWindowEventHandler -= value;
803 if (_offWindowEventHandler == null && OffWindowSignal().Empty() == false)
805 this.OffWindowSignal().Disconnect(_offWindowEventCallback);
810 // Callback for View OffWindow signal
811 private void OffWindow(IntPtr data)
813 if (_offWindowEventHandler != null)
815 _offWindowEventHandler(this, null);
820 /// Event arguments of visibility changed.
822 /// <since_tizen> 3 </since_tizen>
823 public class VisibilityChangedEventArgs : EventArgs
826 private bool _visibility;
827 private VisibilityChangeType _type;
830 /// The view, or child of view, whose visibility has changed.
832 /// <since_tizen> 3 </since_tizen>
846 /// Whether the view is now visible or not.
848 /// <since_tizen> 3 </since_tizen>
849 public bool Visibility
862 /// Whether the view's visible property has changed or a parent's.
864 /// <since_tizen> 3 </since_tizen>
865 public VisibilityChangeType Type
878 private EventHandler<VisibilityChangedEventArgs> _visibilityChangedEventHandler;
879 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
880 private delegate void VisibilityChangedEventCallbackType(IntPtr data, bool visibility, VisibilityChangeType type);
881 private VisibilityChangedEventCallbackType _visibilityChangedEventCallback;
884 /// An event for visibility change which can be used to subscribe or unsubscribe the event handler.<br />
885 /// This signal is emitted when the visible property of this or a parent view is changed.<br />
887 /// <since_tizen> 3 </since_tizen>
888 public event EventHandler<VisibilityChangedEventArgs> VisibilityChanged
892 if (_visibilityChangedEventHandler == null)
894 _visibilityChangedEventCallback = OnVisibilityChanged;
895 VisibilityChangedSignal(this).Connect(_visibilityChangedEventCallback);
898 _visibilityChangedEventHandler += value;
903 _visibilityChangedEventHandler -= value;
905 if (_visibilityChangedEventHandler == null && VisibilityChangedSignal(this).Empty() == false)
907 VisibilityChangedSignal(this).Disconnect(_visibilityChangedEventCallback);
912 // Callback for View visibility change signal
913 private void OnVisibilityChanged(IntPtr data, bool visibility, VisibilityChangeType type)
915 VisibilityChangedEventArgs e = new VisibilityChangedEventArgs();
918 e.View = Registry.GetManagedBaseHandleFromNativePtr(data) as View;
920 e.Visibility = visibility;
923 if (_visibilityChangedEventHandler != null)
925 _visibilityChangedEventHandler(this, e);
931 /// Event arguments of layout direction changed.
933 /// <since_tizen> 4 </since_tizen>
934 public class LayoutDirectionChangedEventArgs : EventArgs
937 private ViewLayoutDirectionType _type;
940 /// The view, or child of view, whose layout direction has changed.
942 /// <since_tizen> 4 </since_tizen>
956 /// Whether the view's layout direction property has changed or a parent's.
958 /// <since_tizen> 4 </since_tizen>
959 public ViewLayoutDirectionType Type
972 private EventHandler<LayoutDirectionChangedEventArgs> _layoutDirectionChangedEventHandler;
973 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
974 private delegate void LayoutDirectionChangedEventCallbackType(IntPtr data, ViewLayoutDirectionType type);
975 private LayoutDirectionChangedEventCallbackType _layoutDirectionChangedEventCallback;
978 /// Event for layout direction change which can be used to subscribe/unsubscribe the event handler.<br />
979 /// This signal is emitted when the layout direction property of this or a parent view is changed.<br />
981 /// <since_tizen> 4 </since_tizen>
982 public event EventHandler<LayoutDirectionChangedEventArgs> LayoutDirectionChanged
986 if (_layoutDirectionChangedEventHandler == null)
988 _layoutDirectionChangedEventCallback = OnLayoutDirectionChanged;
989 LayoutDirectionChangedSignal(this).Connect(_layoutDirectionChangedEventCallback);
992 _layoutDirectionChangedEventHandler += value;
997 _layoutDirectionChangedEventHandler -= value;
999 if (_layoutDirectionChangedEventHandler == null && LayoutDirectionChangedSignal(this).Empty() == false)
1001 LayoutDirectionChangedSignal(this).Disconnect(_layoutDirectionChangedEventCallback);
1006 // Callback for View layout direction change signal
1007 private void OnLayoutDirectionChanged(IntPtr data, ViewLayoutDirectionType type)
1009 LayoutDirectionChangedEventArgs e = new LayoutDirectionChangedEventArgs();
1012 e.View = Registry.GetManagedBaseHandleFromNativePtr(data) as View;
1016 if (_layoutDirectionChangedEventHandler != null)
1018 _layoutDirectionChangedEventHandler(this, e);
1028 // Resource Ready Signal
1030 private EventHandler _resourcesLoadedEventHandler;
1031 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
1032 private delegate void ResourcesLoadedCallbackType(IntPtr control);
1033 private ResourcesLoadedCallbackType _ResourcesLoadedCallback;
1036 /// An event for the ResourcesLoadedSignal signal which can be used to subscribe or unsubscribe the event handler provided by the user.<br />
1037 /// This signal is emitted after all resources required by a view are loaded and ready.<br />
1039 /// <since_tizen> 3 </since_tizen>
1040 public event EventHandler ResourcesLoaded
1044 if (_resourcesLoadedEventHandler == null)
1046 _ResourcesLoadedCallback = OnResourcesLoaded;
1047 this.ResourcesLoadedSignal().Connect(_ResourcesLoadedCallback);
1050 _resourcesLoadedEventHandler += value;
1055 _resourcesLoadedEventHandler -= value;
1057 if (_resourcesLoadedEventHandler == null && ResourcesLoadedSignal().Empty() == false)
1059 this.ResourcesLoadedSignal().Disconnect(_ResourcesLoadedCallback);
1064 private void OnResourcesLoaded(IntPtr view)
1066 if (_resourcesLoadedEventHandler != null)
1068 _resourcesLoadedEventHandler(this, null);
1072 internal IntPtr GetPtrfromView()
1074 return (IntPtr)swigCPtr;
1077 internal class Property
1079 internal static readonly int TOOLTIP = NDalicManualPINVOKE.View_Property_TOOLTIP_get();
1080 internal static readonly int STATE = NDalicManualPINVOKE.View_Property_STATE_get();
1081 internal static readonly int SUB_STATE = NDalicManualPINVOKE.View_Property_SUB_STATE_get();
1082 internal static readonly int LEFT_FOCUSABLE_VIEW_ID = NDalicManualPINVOKE.View_Property_LEFT_FOCUSABLE_ACTOR_ID_get();
1083 internal static readonly int RIGHT_FOCUSABLE_VIEW_ID = NDalicManualPINVOKE.View_Property_RIGHT_FOCUSABLE_ACTOR_ID_get();
1084 internal static readonly int UP_FOCUSABLE_VIEW_ID = NDalicManualPINVOKE.View_Property_UP_FOCUSABLE_ACTOR_ID_get();
1085 internal static readonly int DOWN_FOCUSABLE_VIEW_ID = NDalicManualPINVOKE.View_Property_DOWN_FOCUSABLE_ACTOR_ID_get();
1086 internal static readonly int STYLE_NAME = NDalicPINVOKE.View_Property_STYLE_NAME_get();
1087 internal static readonly int BACKGROUND = NDalicPINVOKE.View_Property_BACKGROUND_get();
1088 internal static readonly int SIBLING_ORDER = NDalicManualPINVOKE.Actor_Property_SIBLING_ORDER_get();
1089 internal static readonly int OPACITY = NDalicManualPINVOKE.Actor_Property_OPACITY_get();
1090 internal static readonly int SCREEN_POSITION = NDalicManualPINVOKE.Actor_Property_SCREEN_POSITION_get();
1091 internal static readonly int POSITION_USES_ANCHOR_POINT = NDalicManualPINVOKE.Actor_Property_POSITION_USES_ANCHOR_POINT_get();
1092 internal static readonly int PARENT_ORIGIN = NDalicPINVOKE.Actor_Property_PARENT_ORIGIN_get();
1093 internal static readonly int PARENT_ORIGIN_X = NDalicPINVOKE.Actor_Property_PARENT_ORIGIN_X_get();
1094 internal static readonly int PARENT_ORIGIN_Y = NDalicPINVOKE.Actor_Property_PARENT_ORIGIN_Y_get();
1095 internal static readonly int PARENT_ORIGIN_Z = NDalicPINVOKE.Actor_Property_PARENT_ORIGIN_Z_get();
1096 internal static readonly int ANCHOR_POINT = NDalicPINVOKE.Actor_Property_ANCHOR_POINT_get();
1097 internal static readonly int ANCHOR_POINT_X = NDalicPINVOKE.Actor_Property_ANCHOR_POINT_X_get();
1098 internal static readonly int ANCHOR_POINT_Y = NDalicPINVOKE.Actor_Property_ANCHOR_POINT_Y_get();
1099 internal static readonly int ANCHOR_POINT_Z = NDalicPINVOKE.Actor_Property_ANCHOR_POINT_Z_get();
1100 internal static readonly int SIZE = NDalicPINVOKE.Actor_Property_SIZE_get();
1101 internal static readonly int SIZE_WIDTH = NDalicPINVOKE.Actor_Property_SIZE_WIDTH_get();
1102 internal static readonly int SIZE_HEIGHT = NDalicPINVOKE.Actor_Property_SIZE_HEIGHT_get();
1103 internal static readonly int SIZE_DEPTH = NDalicPINVOKE.Actor_Property_SIZE_DEPTH_get();
1104 internal static readonly int POSITION = NDalicPINVOKE.Actor_Property_POSITION_get();
1105 internal static readonly int POSITION_X = NDalicPINVOKE.Actor_Property_POSITION_X_get();
1106 internal static readonly int POSITION_Y = NDalicPINVOKE.Actor_Property_POSITION_Y_get();
1107 internal static readonly int POSITION_Z = NDalicPINVOKE.Actor_Property_POSITION_Z_get();
1108 internal static readonly int WORLD_POSITION = NDalicPINVOKE.Actor_Property_WORLD_POSITION_get();
1109 internal static readonly int WORLD_POSITION_X = NDalicPINVOKE.Actor_Property_WORLD_POSITION_X_get();
1110 internal static readonly int WORLD_POSITION_Y = NDalicPINVOKE.Actor_Property_WORLD_POSITION_Y_get();
1111 internal static readonly int WORLD_POSITION_Z = NDalicPINVOKE.Actor_Property_WORLD_POSITION_Z_get();
1112 internal static readonly int ORIENTATION = NDalicPINVOKE.Actor_Property_ORIENTATION_get();
1113 internal static readonly int WORLD_ORIENTATION = NDalicPINVOKE.Actor_Property_WORLD_ORIENTATION_get();
1114 internal static readonly int SCALE = NDalicPINVOKE.Actor_Property_SCALE_get();
1115 internal static readonly int SCALE_X = NDalicPINVOKE.Actor_Property_SCALE_X_get();
1116 internal static readonly int SCALE_Y = NDalicPINVOKE.Actor_Property_SCALE_Y_get();
1117 internal static readonly int SCALE_Z = NDalicPINVOKE.Actor_Property_SCALE_Z_get();
1118 internal static readonly int WORLD_SCALE = NDalicPINVOKE.Actor_Property_WORLD_SCALE_get();
1119 internal static readonly int VISIBLE = NDalicPINVOKE.Actor_Property_VISIBLE_get();
1120 internal static readonly int WORLD_COLOR = NDalicPINVOKE.Actor_Property_WORLD_COLOR_get();
1121 internal static readonly int WORLD_MATRIX = NDalicPINVOKE.Actor_Property_WORLD_MATRIX_get();
1122 internal static readonly int NAME = NDalicPINVOKE.Actor_Property_NAME_get();
1123 internal static readonly int SENSITIVE = NDalicPINVOKE.Actor_Property_SENSITIVE_get();
1124 internal static readonly int LEAVE_REQUIRED = NDalicPINVOKE.Actor_Property_LEAVE_REQUIRED_get();
1125 internal static readonly int INHERIT_ORIENTATION = NDalicPINVOKE.Actor_Property_INHERIT_ORIENTATION_get();
1126 internal static readonly int INHERIT_SCALE = NDalicPINVOKE.Actor_Property_INHERIT_SCALE_get();
1127 internal static readonly int DRAW_MODE = NDalicPINVOKE.Actor_Property_DRAW_MODE_get();
1128 internal static readonly int SIZE_MODE_FACTOR = NDalicPINVOKE.Actor_Property_SIZE_MODE_FACTOR_get();
1129 internal static readonly int WIDTH_RESIZE_POLICY = NDalicPINVOKE.Actor_Property_WIDTH_RESIZE_POLICY_get();
1130 internal static readonly int HEIGHT_RESIZE_POLICY = NDalicPINVOKE.Actor_Property_HEIGHT_RESIZE_POLICY_get();
1131 internal static readonly int SIZE_SCALE_POLICY = NDalicPINVOKE.Actor_Property_SIZE_SCALE_POLICY_get();
1132 internal static readonly int WIDTH_FOR_HEIGHT = NDalicPINVOKE.Actor_Property_WIDTH_FOR_HEIGHT_get();
1133 internal static readonly int HEIGHT_FOR_WIDTH = NDalicPINVOKE.Actor_Property_HEIGHT_FOR_WIDTH_get();
1134 internal static readonly int MINIMUM_SIZE = NDalicPINVOKE.Actor_Property_MINIMUM_SIZE_get();
1135 internal static readonly int MAXIMUM_SIZE = NDalicPINVOKE.Actor_Property_MAXIMUM_SIZE_get();
1136 internal static readonly int INHERIT_POSITION = NDalicPINVOKE.Actor_Property_INHERIT_POSITION_get();
1137 internal static readonly int CLIPPING_MODE = NDalicPINVOKE.Actor_Property_CLIPPING_MODE_get();
1138 internal static readonly int INHERIT_LAYOUT_DIRECTION = NDalicManualPINVOKE.Actor_Property_INHERIT_LAYOUT_DIRECTION_get();
1139 internal static readonly int LAYOUT_DIRECTION = NDalicManualPINVOKE.Actor_Property_LAYOUT_DIRECTION_get();
1140 internal static readonly int MARGIN = NDalicPINVOKE.View_Property_MARGIN_get();
1141 internal static readonly int PADDING = NDalicPINVOKE.View_Property_PADDING_get();
1145 /// Describes the direction to move the focus towards.
1147 /// <since_tizen> 3 </since_tizen>
1148 public enum FocusDirection
1151 /// Move keyboard focus towards the left direction.
1153 /// <since_tizen> 3 </since_tizen>
1156 /// Move keyboard focus towards the right direction.
1158 /// <since_tizen> 3 </since_tizen>
1161 /// Move keyboard focus towards the up direction.
1163 /// <since_tizen> 3 </since_tizen>
1166 /// Move keyboard focus towards the down direction.
1168 /// <since_tizen> 3 </since_tizen>
1171 /// Move keyboard focus towards the previous page direction.
1173 /// <since_tizen> 3 </since_tizen>
1176 /// Move keyboard focus towards the next page direction.
1178 /// <since_tizen> 3 </since_tizen>
1183 /// Creates a new instance of a view.
1185 /// <since_tizen> 3 </since_tizen>
1186 public View() : this(NDalicPINVOKE.View_New(), true)
1188 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1191 internal View(View uiControl) : this(NDalicPINVOKE.new_View__SWIG_1(View.getCPtr(uiControl)), true)
1193 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1196 private View ConvertIdToView(uint id)
1199 if (GetParent() is View)
1201 View parentView = GetParent() as View;
1202 view = parentView.FindChildById(id);
1207 view = Window.Instance.GetRootLayer().FindChildById(id);
1213 internal void SetKeyInputFocus()
1215 NDalicPINVOKE.View_SetKeyInputFocus(swigCPtr);
1216 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1220 /// Queries whether the view has a focus.
1222 /// <returns>True if this view has a focus.</returns>
1223 /// <since_tizen> 3 </since_tizen>
1224 public bool HasFocus()
1226 bool ret = NDalicPINVOKE.View_HasKeyInputFocus(swigCPtr);
1227 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1231 internal void ClearKeyInputFocus()
1233 NDalicPINVOKE.View_ClearKeyInputFocus(swigCPtr);
1234 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1237 internal PinchGestureDetector GetPinchGestureDetector()
1239 PinchGestureDetector ret = new PinchGestureDetector(NDalicPINVOKE.View_GetPinchGestureDetector(swigCPtr), true);
1240 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1244 internal PanGestureDetector GetPanGestureDetector()
1246 PanGestureDetector ret = new PanGestureDetector(NDalicPINVOKE.View_GetPanGestureDetector(swigCPtr), true);
1247 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1251 internal TapGestureDetector GetTapGestureDetector()
1253 TapGestureDetector ret = new TapGestureDetector(NDalicPINVOKE.View_GetTapGestureDetector(swigCPtr), true);
1254 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1258 internal LongPressGestureDetector GetLongPressGestureDetector()
1260 LongPressGestureDetector ret = new LongPressGestureDetector(NDalicPINVOKE.View_GetLongPressGestureDetector(swigCPtr), true);
1261 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1266 /// Sets the name of the style to be applied to the view.
1268 /// <param name="styleName">A string matching a style described in a stylesheet.</param>
1269 /// <since_tizen> 3 </since_tizen>
1270 public void SetStyleName(string styleName)
1272 NDalicPINVOKE.View_SetStyleName(swigCPtr, styleName);
1273 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1277 /// Retrieves the name of the style to be applied to the view (if any).
1279 /// <returns>A string matching a style, or an empty string.</returns>
1280 /// <since_tizen> 3 </since_tizen>
1281 public string GetStyleName()
1283 string ret = NDalicPINVOKE.View_GetStyleName(swigCPtr);
1284 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1288 internal void SetBackgroundColor(Vector4 color)
1290 NDalicPINVOKE.View_SetBackgroundColor(swigCPtr, Vector4.getCPtr(color));
1291 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1294 internal Vector4 GetBackgroundColor()
1296 Vector4 ret = new Vector4(NDalicPINVOKE.View_GetBackgroundColor(swigCPtr), true);
1297 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1301 internal void SetBackgroundImage(Image image)
1303 NDalicPINVOKE.View_SetBackgroundImage(swigCPtr, Image.getCPtr(image));
1304 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1308 /// Clears the background.
1310 /// <since_tizen> 3 </since_tizen>
1311 public void ClearBackground()
1313 NDalicPINVOKE.View_ClearBackground(swigCPtr);
1314 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1317 internal ControlKeySignal KeyEventSignal()
1319 ControlKeySignal ret = new ControlKeySignal(NDalicPINVOKE.View_KeyEventSignal(swigCPtr), false);
1320 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1324 internal KeyInputFocusSignal KeyInputFocusGainedSignal()
1326 KeyInputFocusSignal ret = new KeyInputFocusSignal(NDalicPINVOKE.View_KeyInputFocusGainedSignal(swigCPtr), false);
1327 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1331 internal KeyInputFocusSignal KeyInputFocusLostSignal()
1333 KeyInputFocusSignal ret = new KeyInputFocusSignal(NDalicPINVOKE.View_KeyInputFocusLostSignal(swigCPtr), false);
1334 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1338 internal View(ViewImpl implementation) : this(NDalicPINVOKE.new_View__SWIG_2(ViewImpl.getCPtr(implementation)), true)
1340 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1343 internal enum PropertyRange
1345 PROPERTY_START_INDEX = PropertyRanges.PROPERTY_REGISTRATION_START_INDEX,
1346 CONTROL_PROPERTY_START_INDEX = PROPERTY_START_INDEX,
1347 CONTROL_PROPERTY_END_INDEX = CONTROL_PROPERTY_START_INDEX + 1000
1351 /// The StyleName, type string.
1353 /// <since_tizen> 3 </since_tizen>
1354 public string StyleName
1359 GetProperty(View.Property.STYLE_NAME).Get(out temp);
1364 SetProperty(View.Property.STYLE_NAME, new Tizen.NUI.PropertyValue(value));
1369 /// The mutually exclusive with BACKGROUND_IMAGE and BACKGROUND type Vector4.
1371 /// <since_tizen> 3 </since_tizen>
1372 public Color BackgroundColor
1376 Color backgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f);
1378 Tizen.NUI.PropertyMap background = Background;
1380 background.Find(Visual.Property.Type)?.Get(out visualType);
1381 if (visualType == (int)Visual.Type.Color)
1383 background.Find(ColorVisualProperty.MixColor)?.Get(backgroundColor);
1386 return backgroundColor;
1390 SetProperty(View.Property.BACKGROUND, new Tizen.NUI.PropertyValue(value));
1395 /// Creates an animation to animate the background color visual. If there is no
1396 /// background visual, creates one with transparent black as it's mixColor.
1398 /// <since_tizen> 3 </since_tizen>
1399 public Animation AnimateBackgroundColor(object destinationValue,
1402 AlphaFunction.BuiltinFunctions? alphaFunction = null,
1403 object initialValue = null)
1405 Tizen.NUI.PropertyMap background = Background;
1407 if (background.Empty())
1409 // If there is no background yet, ensure there is a transparent
1411 BackgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f);
1412 background = Background;
1414 return AnimateColor("background", destinationValue, startTime, endTime, alphaFunction, initialValue);
1418 /// Creates an animation to animate the mixColor of the named visual.
1420 /// <since_tizen> 3 </since_tizen>
1421 public Animation AnimateColor(string targetVisual, object destinationColor, int startTime, int endTime, AlphaFunction.BuiltinFunctions? alphaFunction = null, object initialColor = null)
1423 Animation animation = null;
1425 PropertyMap _animator = new PropertyMap();
1426 if (alphaFunction != null)
1428 _animator.Add("alphaFunction", new PropertyValue(AlphaFunction.BuiltinToPropertyKey(alphaFunction)));
1431 PropertyMap _timePeriod = new PropertyMap();
1432 _timePeriod.Add("duration", new PropertyValue((endTime - startTime) / 1000.0f));
1433 _timePeriod.Add("delay", new PropertyValue(startTime / 1000.0f));
1434 _animator.Add("timePeriod", new PropertyValue(_timePeriod));
1436 PropertyMap _transition = new PropertyMap();
1437 _transition.Add("animator", new PropertyValue(_animator));
1438 _transition.Add("target", new PropertyValue(targetVisual));
1439 _transition.Add("property", new PropertyValue("mixColor"));
1441 if (initialColor != null)
1443 PropertyValue initValue = PropertyValue.CreateFromObject(initialColor);
1444 _transition.Add("initialValue", initValue);
1447 PropertyValue destValue = PropertyValue.CreateFromObject(destinationColor);
1448 _transition.Add("targetValue", destValue);
1449 TransitionData _transitionData = new TransitionData(_transition);
1451 animation = new Animation(NDalicManualPINVOKE.View_CreateTransition(swigCPtr, TransitionData.getCPtr(_transitionData)), true);
1452 if (NDalicPINVOKE.SWIGPendingException.Pending)
1453 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1459 /// The mutually exclusive with BACKGROUND_COLOR and BACKGROUND type Map.
1461 /// <since_tizen> 3 </since_tizen>
1462 public string BackgroundImage
1466 string backgroundImage = "";
1468 Tizen.NUI.PropertyMap background = Background;
1470 background.Find(Visual.Property.Type)?.Get(out visualType);
1471 if (visualType == (int)Visual.Type.Image)
1473 background.Find(ImageVisualProperty.URL)?.Get(out backgroundImage);
1476 return backgroundImage;
1480 SetProperty(View.Property.BACKGROUND, new Tizen.NUI.PropertyValue(value));
1485 /// The background of view.
1487 /// <since_tizen> 3 </since_tizen>
1488 public Tizen.NUI.PropertyMap Background
1492 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
1493 GetProperty(View.Property.BACKGROUND).Get(temp);
1498 SetProperty(View.Property.BACKGROUND, new Tizen.NUI.PropertyValue(value));
1504 /// The current state of the view.
1506 /// <since_tizen> 3 </since_tizen>
1512 if (GetProperty(View.Property.STATE).Get(out temp) == false)
1514 NUILog.Error("State get error!");
1520 return States.Normal;
1524 return States.Focused;
1528 return States.Disabled;
1532 return States.Normal;
1538 SetProperty(View.Property.STATE, new Tizen.NUI.PropertyValue((int)value));
1543 /// The current sub state of the view.
1545 /// <since_tizen> 3 </since_tizen>
1546 public States SubState
1551 if (GetProperty(View.Property.SUB_STATE).Get(out temp) == false)
1553 NUILog.Error("subState get error!");
1558 return States.Normal;
1560 return States.Focused;
1562 return States.Disabled;
1564 return States.Normal;
1569 string valueToString = "";
1574 valueToString = "NORMAL";
1577 case States.Focused:
1579 valueToString = "FOCUSED";
1582 case States.Disabled:
1584 valueToString = "DISABLED";
1589 valueToString = "NORMAL";
1593 SetProperty(View.Property.SUB_STATE, new Tizen.NUI.PropertyValue(valueToString));
1598 /// Displays a tooltip
1600 /// <since_tizen> 3 </since_tizen>
1601 public Tizen.NUI.PropertyMap Tooltip
1605 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
1606 GetProperty(View.Property.TOOLTIP).Get(temp);
1611 SetProperty(View.Property.TOOLTIP, new Tizen.NUI.PropertyValue(value));
1616 /// Displays a tooltip as a text.
1618 /// <since_tizen> 3 </since_tizen>
1619 public string TooltipText
1623 SetProperty(View.Property.TOOLTIP, new Tizen.NUI.PropertyValue(value));
1627 private int LeftFocusableViewId
1632 GetProperty(View.Property.LEFT_FOCUSABLE_VIEW_ID).Get(out temp);
1637 SetProperty(View.Property.LEFT_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
1641 private int RightFocusableViewId
1646 GetProperty(View.Property.RIGHT_FOCUSABLE_VIEW_ID).Get(out temp);
1651 SetProperty(View.Property.RIGHT_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
1655 private int UpFocusableViewId
1660 GetProperty(View.Property.UP_FOCUSABLE_VIEW_ID).Get(out temp);
1665 SetProperty(View.Property.UP_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
1669 private int DownFocusableViewId
1674 GetProperty(View.Property.DOWN_FOCUSABLE_VIEW_ID).Get(out temp);
1679 SetProperty(View.Property.DOWN_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
1684 /// The Child property of FlexContainer.<br />
1685 /// The proportion of the free space in the container, the flex item will receive.<br />
1686 /// If all items in the container set this property, their sizes will be proportional to the specified flex factor.<br />
1688 /// <since_tizen> 3 </since_tizen>
1694 GetProperty(FlexContainer.ChildProperty.FLEX).Get(out temp);
1699 SetProperty(FlexContainer.ChildProperty.FLEX, new Tizen.NUI.PropertyValue(value));
1704 /// The Child property of FlexContainer.<br />
1705 /// The alignment of the flex item along the cross axis, which, if set, overides the default alignment for all items in the container.<br />
1707 /// <since_tizen> 3 </since_tizen>
1708 public int AlignSelf
1713 GetProperty(FlexContainer.ChildProperty.ALIGN_SELF).Get(out temp);
1718 SetProperty(FlexContainer.ChildProperty.ALIGN_SELF, new Tizen.NUI.PropertyValue(value));
1723 /// The Child property of FlexContainer.<br />
1724 /// The space around the flex item.<br />
1726 /// <since_tizen> 3 </since_tizen>
1727 public Vector4 FlexMargin
1731 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
1732 GetProperty(FlexContainer.ChildProperty.FLEX_MARGIN).Get(temp);
1737 SetProperty(FlexContainer.ChildProperty.FLEX_MARGIN, new Tizen.NUI.PropertyValue(value));
1742 /// The top-left cell this child occupies, if not set, the first available cell is used.
1744 /// <since_tizen> 3 </since_tizen>
1745 public Vector2 CellIndex
1749 Vector2 temp = new Vector2(0.0f, 0.0f);
1750 GetProperty(TableView.ChildProperty.CELL_INDEX).Get(temp);
1755 SetProperty(TableView.ChildProperty.CELL_INDEX, new Tizen.NUI.PropertyValue(value));
1760 /// The number of rows this child occupies, if not set, the default value is 1.
1762 /// <since_tizen> 3 </since_tizen>
1763 public float RowSpan
1768 GetProperty(TableView.ChildProperty.ROW_SPAN).Get(out temp);
1773 SetProperty(TableView.ChildProperty.ROW_SPAN, new Tizen.NUI.PropertyValue(value));
1778 /// The number of columns this child occupies, if not set, the default value is 1.
1780 /// <since_tizen> 3 </since_tizen>
1781 public float ColumnSpan
1786 GetProperty(TableView.ChildProperty.COLUMN_SPAN).Get(out temp);
1791 SetProperty(TableView.ChildProperty.COLUMN_SPAN, new Tizen.NUI.PropertyValue(value));
1796 /// The horizontal alignment of this child inside the cells, if not set, the default value is 'left'.
1798 /// <since_tizen> 3 </since_tizen>
1799 public Tizen.NUI.HorizontalAlignmentType CellHorizontalAlignment
1804 if (GetProperty(TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT).Get(out temp) == false)
1806 NUILog.Error("CellHorizontalAlignment get error!");
1812 return Tizen.NUI.HorizontalAlignmentType.Left;
1814 return Tizen.NUI.HorizontalAlignmentType.Center;
1816 return Tizen.NUI.HorizontalAlignmentType.Right;
1818 return Tizen.NUI.HorizontalAlignmentType.Left;
1823 string valueToString = "";
1826 case Tizen.NUI.HorizontalAlignmentType.Left:
1828 valueToString = "left";
1831 case Tizen.NUI.HorizontalAlignmentType.Center:
1833 valueToString = "center";
1836 case Tizen.NUI.HorizontalAlignmentType.Right:
1838 valueToString = "right";
1843 valueToString = "left";
1847 SetProperty(TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
1852 /// The vertical alignment of this child inside the cells, if not set, the default value is 'top'.
1854 /// <since_tizen> 3 </since_tizen>
1855 public Tizen.NUI.VerticalAlignmentType CellVerticalAlignment
1860 GetProperty(TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT).Get(out temp);
1862 NUILog.Error("CellVerticalAlignment get error!");
1868 return Tizen.NUI.VerticalAlignmentType.Top;
1870 return Tizen.NUI.VerticalAlignmentType.Center;
1872 return Tizen.NUI.VerticalAlignmentType.Bottom;
1874 return Tizen.NUI.VerticalAlignmentType.Top;
1879 string valueToString = "";
1882 case Tizen.NUI.VerticalAlignmentType.Top:
1884 valueToString = "top";
1887 case Tizen.NUI.VerticalAlignmentType.Center:
1889 valueToString = "center";
1892 case Tizen.NUI.VerticalAlignmentType.Bottom:
1894 valueToString = "bottom";
1899 valueToString = "top";
1903 SetProperty(TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
1908 /// The left focusable view.<br />
1909 /// This will return null if not set.<br />
1910 /// This will also return null if the specified left focusable view is not on a window.<br />
1912 /// <since_tizen> 3 </since_tizen>
1913 public View LeftFocusableView
1915 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
1918 if (LeftFocusableViewId >= 0)
1920 return ConvertIdToView((uint)LeftFocusableViewId);
1928 LeftFocusableViewId = (int)value.GetId();
1932 LeftFocusableViewId = -1;
1938 /// The right focusable view.<br />
1939 /// This will return null if not set.<br />
1940 /// This will also return null if the specified right focusable view is not on a window.<br />
1942 /// <since_tizen> 3 </since_tizen>
1943 public View RightFocusableView
1945 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
1948 if (RightFocusableViewId >= 0)
1950 return ConvertIdToView((uint)RightFocusableViewId);
1958 RightFocusableViewId = (int)value.GetId();
1962 RightFocusableViewId = -1;
1968 /// The up focusable view.<br />
1969 /// This will return null if not set.<br />
1970 /// This will also return null if the specified up focusable view is not on a window.<br />
1972 /// <since_tizen> 3 </since_tizen>
1973 public View UpFocusableView
1975 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
1978 if (UpFocusableViewId >= 0)
1980 return ConvertIdToView((uint)UpFocusableViewId);
1988 UpFocusableViewId = (int)value.GetId();
1992 UpFocusableViewId = -1;
1998 /// The down focusable view.<br />
1999 /// This will return null if not set.<br />
2000 /// This will also return null if the specified down focusable view is not on a window.<br />
2002 /// <since_tizen> 3 </since_tizen>
2003 public View DownFocusableView
2005 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
2008 if (DownFocusableViewId >= 0)
2010 return ConvertIdToView((uint)DownFocusableViewId);
2018 DownFocusableViewId = (int)value.GetId();
2022 DownFocusableViewId = -1;
2028 /// Whether the view should be focusable by keyboard navigation.
2030 /// <since_tizen> 3 </since_tizen>
2031 public bool Focusable
2035 SetKeyboardFocusable(value);
2039 return IsKeyboardFocusable();
2044 /// Enumeration for describing the states of the view.
2046 /// <since_tizen> 3 </since_tizen>
2050 /// The normal state.
2054 /// The focused state.
2058 /// The disabled state.
2064 /// Retrieves the position of the view.<br />
2065 /// The coordinates are relative to the view's parent.<br />
2067 /// <since_tizen> 3 </since_tizen>
2068 public Position CurrentPosition
2072 return GetCurrentPosition();
2077 /// Sets the size of a view for the width and the height.<br />
2078 /// Geometry can be scaled to fit within this area.<br />
2079 /// This does not interfere with the view's scale factor.<br />
2080 /// The views default depth is the minimum of width and height.<br />
2082 /// <since_tizen> 3 </since_tizen>
2083 public Size2D Size2D
2087 Size temp = new Size(0.0f, 0.0f, 0.0f);
2088 GetProperty(View.Property.SIZE).Get(temp);
2089 Size2D size = new Size2D((int)temp.Width, (int)temp.Height);
2094 SetProperty(View.Property.SIZE, new Tizen.NUI.PropertyValue(new Size(value)));
2099 /// Retrieves the size of the view.<br />
2100 /// The coordinates are relative to the view's parent.<br />
2102 /// <since_tizen> 3 </since_tizen>
2103 public Size2D CurrentSize
2107 return GetCurrentSize();
2112 /// Retrieves and sets the view's opacity.<br />
2114 /// <since_tizen> 3 </since_tizen>
2115 public float Opacity
2120 GetProperty(View.Property.OPACITY).Get(out temp);
2125 SetProperty(View.Property.OPACITY, new Tizen.NUI.PropertyValue(value));
2130 /// Sets the position of the view for X and Y.<br />
2131 /// By default, sets the position vector between the parent origin and the pivot point (default).<br />
2132 /// If the position inheritance is disabled, sets the world position.<br />
2134 /// <since_tizen> 3 </since_tizen>
2135 public Position2D Position2D
2139 Position temp = new Position(0.0f, 0.0f, 0.0f);
2140 GetProperty(View.Property.POSITION).Get(temp);
2141 return new Position2D(temp);
2145 SetProperty(View.Property.POSITION, new Tizen.NUI.PropertyValue(new Position(value)));
2150 /// Retrieves the screen postion of the view.<br />
2152 /// <since_tizen> 3 </since_tizen>
2153 public Vector2 ScreenPosition
2157 Vector2 temp = new Vector2(0.0f, 0.0f);
2158 GetProperty(View.Property.SCREEN_POSITION).Get(temp);
2164 /// Determines whether the pivot point should be used to determine the position of the view.
2165 /// This is true by default.
2167 /// <remarks>If false, then the top-left of the view is used for the position.
2168 /// Setting this to false will allow scaling or rotation around the anchor-point without affecting the view's position.
2170 /// <since_tizen> 3 </since_tizen>
2171 public bool PositionUsesPivotPoint
2176 GetProperty(View.Property.POSITION_USES_ANCHOR_POINT).Get(out temp);
2181 SetProperty(View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
2186 /// Please do not use! this will be deprecated.
2188 /// Please do not use! this will be deprecated!
2189 /// Instead please use PositionUsesPivotPoint.
2190 /// <since_tizen> 3 </since_tizen>
2191 [Obsolete("Please do not use! This will be deprecated! Please use PositionUsesPivotPoint instead! " +
2193 "View view = new View(); " +
2194 "view.PivotPoint = PivotPoint.Center; " +
2195 "view.PositionUsesPivotPoint = true;")]
2196 [EditorBrowsable(EditorBrowsableState.Never)]
2197 public bool PositionUsesAnchorPoint
2202 GetProperty(View.Property.POSITION_USES_ANCHOR_POINT).Get(out temp);
2207 SetProperty(View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
2211 internal bool FocusState
2215 return IsKeyboardFocusable();
2219 SetKeyboardFocusable(value);
2224 /// Queries whether the view is connected to the stage.<br />
2225 /// When a view is connected, it will be directly or indirectly parented to the root view.<br />
2227 /// <since_tizen> 3 </since_tizen>
2228 public bool IsOnWindow
2237 /// Gets the depth in the hierarchy for the view.
2239 /// <since_tizen> 3 </since_tizen>
2240 public int HierarchyDepth
2244 return GetHierarchyDepth();
2249 /// Sets the sibling order of the view so the depth position can be defined within the same parent.
2252 /// Note the initial value is 0. SiblingOrder should be bigger than 0 or equal to 0.
2253 /// Raise, Lower, RaiseToTop, LowerToBottom, RaiseAbove, and LowerBelow will override the sibling order.
2254 /// The values set by this property will likely change.
2256 /// <since_tizen> 3 </since_tizen>
2257 public int SiblingOrder
2261 var parentChildren = GetParent()?.Children;
2262 int currentOrder = 0;
2263 if (parentChildren != null)
2265 currentOrder = parentChildren.IndexOf(this);
2267 if (currentOrder < 0)
2271 else if (currentOrder < parentChildren.Count)
2273 return currentOrder;
2283 NUILog.Error("SiblingOrder should be bigger than 0 or equal to 0.");
2286 var siblings = GetParent()?.Children;
2287 if (siblings != null)
2289 int currentOrder = siblings.IndexOf(this);
2290 if (value != currentOrder)
2296 else if (value < siblings.Count - 1)
2298 if (value > currentOrder)
2300 RaiseAbove(siblings[value]);
2304 LowerBelow(siblings[value]);
2317 /// Returns the natural size of the view.
2320 /// Deriving classes stipulate the natural size and by default a view has a zero natural size.
2322 /// /// Please do not use! this will be deprecated!
2323 /// Instead please use NaturalSize2D.
2324 /// <since_tizen> 3 </since_tizen>
2325 [Obsolete("Please do not use! This will be deprecated! Please use NaturalSize2D instead! " +
2327 "TextLabel label = new TextLabel(\"Hello World!\"); " +
2328 "Size2D size = label.NaturalSize2D;")]
2329 [EditorBrowsable(EditorBrowsableState.Never)]
2330 public Vector3 NaturalSize
2334 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetNaturalSize(swigCPtr), true);
2335 if (NDalicPINVOKE.SWIGPendingException.Pending)
2336 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2342 /// Returns the natural size (Size2D) of the view.
2345 /// Deriving classes stipulate the natural size and by default a view has a zero natural size.
2347 /// <since_tizen> 4 </since_tizen>
2348 public Size2D NaturalSize2D
2352 Vector3 temp = new Vector3(NDalicPINVOKE.Actor_GetNaturalSize(swigCPtr), true);
2353 if (NDalicPINVOKE.SWIGPendingException.Pending)
2354 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2356 return new Size2D((int)temp.Width, (int)temp.Height);
2364 /// This is an asynchronous method.
2366 /// <since_tizen> 3 </since_tizen>
2376 /// This is an asynchronous method.
2377 /// If the view is hidden, then the view and its children will not be rendered.
2378 /// 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.
2380 /// <since_tizen> 3 </since_tizen>
2386 internal void Raise()
2388 var parentChildren = GetParent()?.Children;
2390 if (parentChildren != null)
2392 int currentIndex = parentChildren.IndexOf(this);
2394 // If the view is not already the last item in the list.
2395 if (currentIndex >= 0 && currentIndex < parentChildren.Count -1)
2397 View temp = parentChildren[currentIndex + 1];
2398 parentChildren[currentIndex + 1] = this;
2399 parentChildren[currentIndex] = temp;
2401 NDalicPINVOKE.Raise(swigCPtr);
2402 if (NDalicPINVOKE.SWIGPendingException.Pending)
2403 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2409 internal void Lower()
2411 var parentChildren = GetParent()?.Children;
2413 if (parentChildren != null)
2415 int currentIndex = parentChildren.IndexOf(this);
2417 // If the view is not already the first item in the list.
2418 if (currentIndex > 0 && currentIndex < parentChildren.Count)
2420 View temp = parentChildren[currentIndex - 1];
2421 parentChildren[currentIndex - 1] = this;
2422 parentChildren[currentIndex] = temp;
2424 NDalicPINVOKE.Lower(swigCPtr);
2425 if (NDalicPINVOKE.SWIGPendingException.Pending)
2426 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2432 /// Raises the view above all other views.
2435 /// Sibling order of views within the parent will be updated automatically.
2436 /// Once a raise or lower API is used, that view will then have an exclusive sibling order independent of insertion.
2438 /// <since_tizen> 3 </since_tizen>
2439 public void RaiseToTop()
2441 var parentChildren = GetParent()?.Children;
2443 if (parentChildren != null)
2445 parentChildren.Remove(this);
2446 parentChildren.Add(this);
2448 NDalicPINVOKE.RaiseToTop(swigCPtr);
2449 if (NDalicPINVOKE.SWIGPendingException.Pending)
2450 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2456 /// Lowers the view to the bottom of all views.
2459 /// The sibling order of views within the parent will be updated automatically.
2460 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
2462 /// <since_tizen> 3 </since_tizen>
2463 public void LowerToBottom()
2465 var parentChildren = GetParent()?.Children;
2467 if (parentChildren != null)
2469 parentChildren.Remove(this);
2470 parentChildren.Insert(0, this);
2472 NDalicPINVOKE.LowerToBottom(swigCPtr);
2473 if (NDalicPINVOKE.SWIGPendingException.Pending)
2474 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2479 /// Queries if all resources required by a view are loaded and ready.
2481 /// <remarks>Most resources are only loaded when the control is placed on the stage.
2483 /// <since_tizen> 3 </since_tizen>
2484 public bool IsResourceReady()
2486 bool ret = NDalicPINVOKE.IsResourceReady(swigCPtr);
2487 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2492 /// Raises the view to above the target view.
2494 /// <remarks>The sibling order of views within the parent will be updated automatically.
2495 /// Views on the level above the target view will still be shown above this view.
2496 /// Raising this view above views with the same sibling order as each other will raise this view above them.
2497 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
2499 /// <param name="target">Will be raised above this view.</param>
2500 internal void RaiseAbove(View target)
2502 var parentChildren = GetParent()?.Children;
2504 if (parentChildren != null)
2506 int currentIndex = parentChildren.IndexOf(this);
2507 int targetIndex = parentChildren.IndexOf(target);
2509 if(currentIndex < 0 || targetIndex < 0 ||
2510 currentIndex >= parentChildren.Count || targetIndex >= parentChildren.Count)
2512 NUILog.Error("index should be bigger than 0 and less than children of layer count");
2515 // If the currentIndex is less than the target index and the target has the same parent.
2516 if (currentIndex < targetIndex)
2518 parentChildren.Remove(this);
2519 parentChildren.Insert(targetIndex, this);
2521 NDalicPINVOKE.RaiseAbove(swigCPtr, View.getCPtr(target));
2522 if (NDalicPINVOKE.SWIGPendingException.Pending)
2523 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2530 /// Lowers the view to below the target view.
2532 /// <remarks>The sibling order of views within the parent will be updated automatically.
2533 /// Lowering this view below views with the same sibling order as each other will lower this view above them.
2534 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
2536 /// <param name="target">Will be lowered below this view.</param>
2537 internal void LowerBelow(View target)
2539 var parentChildren = GetParent()?.Children;
2541 if (parentChildren != null)
2543 int currentIndex = parentChildren.IndexOf(this);
2544 int targetIndex = parentChildren.IndexOf(target);
2545 if(currentIndex < 0 || targetIndex < 0 ||
2546 currentIndex >= parentChildren.Count ||targetIndex >= parentChildren.Count)
2548 NUILog.Error("index should be bigger than 0 and less than children of layer count");
2552 // If the currentIndex is not already the 0th index and the target has the same parent.
2553 if ((currentIndex != 0) && (targetIndex != -1) &&
2554 (currentIndex > targetIndex))
2556 parentChildren.Remove(this);
2557 parentChildren.Insert(targetIndex, this);
2559 NDalicPINVOKE.LowerBelow(swigCPtr, View.getCPtr(target));
2560 if (NDalicPINVOKE.SWIGPendingException.Pending)
2561 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2567 internal string GetName()
2569 string ret = NDalicPINVOKE.Actor_GetName(swigCPtr);
2570 if (NDalicPINVOKE.SWIGPendingException.Pending)
2571 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2575 internal void SetName(string name)
2577 NDalicPINVOKE.Actor_SetName(swigCPtr, name);
2578 if (NDalicPINVOKE.SWIGPendingException.Pending)
2579 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2582 internal uint GetId()
2584 uint ret = NDalicPINVOKE.Actor_GetId(swigCPtr);
2585 if (NDalicPINVOKE.SWIGPendingException.Pending)
2586 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2590 internal bool IsRoot()
2592 bool ret = NDalicPINVOKE.Actor_IsRoot(swigCPtr);
2593 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2597 internal bool OnWindow()
2599 bool ret = NDalicPINVOKE.Actor_OnStage(swigCPtr);
2600 if (NDalicPINVOKE.SWIGPendingException.Pending)
2601 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2606 /// Gets the parent layer of this view.If a view has no parent, this method does nothing.
2608 /// <pre>The view has been initialized. </pre>
2609 /// <returns>the parent layer of view </returns>
2610 /// <since_tizen> 5 </since_tizen>
2611 public Layer GetLayer()
2613 //to fix memory leak issue, match the handle count with native side.
2614 IntPtr cPtr = NDalicPINVOKE.Actor_GetLayer(swigCPtr);
2615 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
2616 Layer ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as Layer;
2617 NDalicPINVOKE.delete_BaseHandle(CPtr);
2618 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
2620 if (NDalicPINVOKE.SWIGPendingException.Pending)
2621 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2626 /// Removes a view from its parent view or layer. If a view has no parent, this method does nothing.
2628 /// <pre>The (child) view has been initialized. </pre>
2629 /// <since_tizen> 4 </since_tizen>
2630 public void Unparent()
2632 GetParent()?.Remove(this);
2636 /// Search through this view's hierarchy for a view with the given name.
2637 /// The view itself is also considered in the search.
2639 /// <pre>The view has been initialized.</pre>
2640 /// <param name="viewName">The name of the view to find.</param>
2641 /// <returns>A handle to the view if found, or an empty handle if not.</returns>
2642 /// <since_tizen> 3 </since_tizen>
2643 public View FindChildByName(string viewName)
2645 //to fix memory leak issue, match the handle count with native side.
2646 IntPtr cPtr = NDalicPINVOKE.Actor_FindChildByName(swigCPtr, viewName);
2647 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
2648 View ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as View;
2649 NDalicPINVOKE.delete_BaseHandle(CPtr);
2650 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
2652 if (NDalicPINVOKE.SWIGPendingException.Pending)
2653 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2657 internal View FindChildById(uint id)
2659 //to fix memory leak issue, match the handle count with native side.
2660 IntPtr cPtr = NDalicPINVOKE.Actor_FindChildById(swigCPtr, id);
2661 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
2662 View ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as View;
2663 NDalicPINVOKE.delete_BaseHandle(CPtr);
2664 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
2666 if (NDalicPINVOKE.SWIGPendingException.Pending)
2667 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2671 internal void SetParentOrigin(Vector3 origin)
2673 NDalicPINVOKE.Actor_SetParentOrigin(swigCPtr, Vector3.getCPtr(origin));
2674 if (NDalicPINVOKE.SWIGPendingException.Pending)
2675 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2678 internal Vector3 GetCurrentParentOrigin()
2680 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentParentOrigin(swigCPtr), true);
2681 if (NDalicPINVOKE.SWIGPendingException.Pending)
2682 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2686 internal void SetAnchorPoint(Vector3 anchorPoint)
2688 NDalicPINVOKE.Actor_SetAnchorPoint(swigCPtr, Vector3.getCPtr(anchorPoint));
2689 if (NDalicPINVOKE.SWIGPendingException.Pending)
2690 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2693 internal Vector3 GetCurrentAnchorPoint()
2695 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentAnchorPoint(swigCPtr), true);
2696 if (NDalicPINVOKE.SWIGPendingException.Pending)
2697 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2701 internal void SetSize(float width, float height)
2703 NDalicPINVOKE.Actor_SetSize__SWIG_0(swigCPtr, width, height);
2704 if (NDalicPINVOKE.SWIGPendingException.Pending)
2705 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2708 internal void SetSize(float width, float height, float depth)
2710 NDalicPINVOKE.Actor_SetSize__SWIG_1(swigCPtr, width, height, depth);
2711 if (NDalicPINVOKE.SWIGPendingException.Pending)
2712 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2715 internal void SetSize(Vector2 size)
2717 NDalicPINVOKE.Actor_SetSize__SWIG_2(swigCPtr, Vector2.getCPtr(size));
2718 if (NDalicPINVOKE.SWIGPendingException.Pending)
2719 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2722 internal void SetSize(Vector3 size)
2724 NDalicPINVOKE.Actor_SetSize__SWIG_3(swigCPtr, Vector3.getCPtr(size));
2725 if (NDalicPINVOKE.SWIGPendingException.Pending)
2726 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2729 internal Vector3 GetTargetSize()
2731 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetTargetSize(swigCPtr), true);
2732 if (NDalicPINVOKE.SWIGPendingException.Pending)
2733 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2737 internal Size2D GetCurrentSize()
2739 Size ret = new Size(NDalicPINVOKE.Actor_GetCurrentSize(swigCPtr), true);
2740 if (NDalicPINVOKE.SWIGPendingException.Pending)
2741 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2742 Size2D size = new Size2D((int)ret.Width, (int)ret.Height);
2746 internal Vector3 GetNaturalSize()
2748 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetNaturalSize(swigCPtr), true);
2749 if (NDalicPINVOKE.SWIGPendingException.Pending)
2750 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2754 internal void SetPosition(float x, float y)
2756 NDalicPINVOKE.Actor_SetPosition__SWIG_0(swigCPtr, x, y);
2757 if (NDalicPINVOKE.SWIGPendingException.Pending)
2758 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2761 internal void SetPosition(float x, float y, float z)
2763 NDalicPINVOKE.Actor_SetPosition__SWIG_1(swigCPtr, x, y, z);
2764 if (NDalicPINVOKE.SWIGPendingException.Pending)
2765 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2768 internal void SetPosition(Vector3 position)
2770 NDalicPINVOKE.Actor_SetPosition__SWIG_2(swigCPtr, Vector3.getCPtr(position));
2771 if (NDalicPINVOKE.SWIGPendingException.Pending)
2772 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2775 internal void SetX(float x)
2777 NDalicPINVOKE.Actor_SetX(swigCPtr, x);
2778 if (NDalicPINVOKE.SWIGPendingException.Pending)
2779 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2782 internal void SetY(float y)
2784 NDalicPINVOKE.Actor_SetY(swigCPtr, y);
2785 if (NDalicPINVOKE.SWIGPendingException.Pending)
2786 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2789 internal void SetZ(float z)
2791 NDalicPINVOKE.Actor_SetZ(swigCPtr, z);
2792 if (NDalicPINVOKE.SWIGPendingException.Pending)
2793 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2796 internal void TranslateBy(Vector3 distance)
2798 NDalicPINVOKE.Actor_TranslateBy(swigCPtr, Vector3.getCPtr(distance));
2799 if (NDalicPINVOKE.SWIGPendingException.Pending)
2800 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2803 internal Position GetCurrentPosition()
2805 Position ret = new Position(NDalicPINVOKE.Actor_GetCurrentPosition(swigCPtr), true);
2806 if (NDalicPINVOKE.SWIGPendingException.Pending)
2807 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2811 internal Vector3 GetCurrentWorldPosition()
2813 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentWorldPosition(swigCPtr), true);
2814 if (NDalicPINVOKE.SWIGPendingException.Pending)
2815 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2819 internal void SetInheritPosition(bool inherit)
2821 NDalicPINVOKE.Actor_SetInheritPosition(swigCPtr, inherit);
2822 if (NDalicPINVOKE.SWIGPendingException.Pending)
2823 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2826 internal bool IsPositionInherited()
2828 bool ret = NDalicPINVOKE.Actor_IsPositionInherited(swigCPtr);
2829 if (NDalicPINVOKE.SWIGPendingException.Pending)
2830 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2834 internal void SetOrientation(Degree angle, Vector3 axis)
2836 NDalicPINVOKE.Actor_SetOrientation__SWIG_0(swigCPtr, Degree.getCPtr(angle), Vector3.getCPtr(axis));
2837 if (NDalicPINVOKE.SWIGPendingException.Pending)
2838 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2841 internal void SetOrientation(Radian angle, Vector3 axis)
2843 NDalicPINVOKE.Actor_SetOrientation__SWIG_1(swigCPtr, Radian.getCPtr(angle), Vector3.getCPtr(axis));
2844 if (NDalicPINVOKE.SWIGPendingException.Pending)
2845 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2848 internal void SetOrientation(Rotation orientation)
2850 NDalicPINVOKE.Actor_SetOrientation__SWIG_2(swigCPtr, Rotation.getCPtr(orientation));
2851 if (NDalicPINVOKE.SWIGPendingException.Pending)
2852 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2855 internal void RotateBy(Degree angle, Vector3 axis)
2857 NDalicPINVOKE.Actor_RotateBy__SWIG_0(swigCPtr, Degree.getCPtr(angle), Vector3.getCPtr(axis));
2858 if (NDalicPINVOKE.SWIGPendingException.Pending)
2859 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2862 internal void RotateBy(Radian angle, Vector3 axis)
2864 NDalicPINVOKE.Actor_RotateBy__SWIG_1(swigCPtr, Radian.getCPtr(angle), Vector3.getCPtr(axis));
2865 if (NDalicPINVOKE.SWIGPendingException.Pending)
2866 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2869 internal void RotateBy(Rotation relativeRotation)
2871 NDalicPINVOKE.Actor_RotateBy__SWIG_2(swigCPtr, Rotation.getCPtr(relativeRotation));
2872 if (NDalicPINVOKE.SWIGPendingException.Pending)
2873 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2876 internal Rotation GetCurrentOrientation()
2878 Rotation ret = new Rotation(NDalicPINVOKE.Actor_GetCurrentOrientation(swigCPtr), true);
2879 if (NDalicPINVOKE.SWIGPendingException.Pending)
2880 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2884 internal void SetInheritOrientation(bool inherit)
2886 NDalicPINVOKE.Actor_SetInheritOrientation(swigCPtr, inherit);
2887 if (NDalicPINVOKE.SWIGPendingException.Pending)
2888 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2891 internal bool IsOrientationInherited()
2893 bool ret = NDalicPINVOKE.Actor_IsOrientationInherited(swigCPtr);
2894 if (NDalicPINVOKE.SWIGPendingException.Pending)
2895 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2899 internal Rotation GetCurrentWorldOrientation()
2901 Rotation ret = new Rotation(NDalicPINVOKE.Actor_GetCurrentWorldOrientation(swigCPtr), true);
2902 if (NDalicPINVOKE.SWIGPendingException.Pending)
2903 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2907 internal void SetScale(float scale)
2909 NDalicPINVOKE.Actor_SetScale__SWIG_0(swigCPtr, scale);
2910 if (NDalicPINVOKE.SWIGPendingException.Pending)
2911 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2914 internal void SetScale(float scaleX, float scaleY, float scaleZ)
2916 NDalicPINVOKE.Actor_SetScale__SWIG_1(swigCPtr, scaleX, scaleY, scaleZ);
2917 if (NDalicPINVOKE.SWIGPendingException.Pending)
2918 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2921 internal void SetScale(Vector3 scale)
2923 NDalicPINVOKE.Actor_SetScale__SWIG_2(swigCPtr, Vector3.getCPtr(scale));
2924 if (NDalicPINVOKE.SWIGPendingException.Pending)
2925 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2928 internal void ScaleBy(Vector3 relativeScale)
2930 NDalicPINVOKE.Actor_ScaleBy(swigCPtr, Vector3.getCPtr(relativeScale));
2931 if (NDalicPINVOKE.SWIGPendingException.Pending)
2932 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2935 internal Vector3 GetCurrentScale()
2937 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentScale(swigCPtr), true);
2938 if (NDalicPINVOKE.SWIGPendingException.Pending)
2939 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2943 internal Vector3 GetCurrentWorldScale()
2945 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentWorldScale(swigCPtr), true);
2946 if (NDalicPINVOKE.SWIGPendingException.Pending)
2947 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2951 internal void SetInheritScale(bool inherit)
2953 NDalicPINVOKE.Actor_SetInheritScale(swigCPtr, inherit);
2954 if (NDalicPINVOKE.SWIGPendingException.Pending)
2955 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2958 internal bool IsScaleInherited()
2960 bool ret = NDalicPINVOKE.Actor_IsScaleInherited(swigCPtr);
2961 if (NDalicPINVOKE.SWIGPendingException.Pending)
2962 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2966 internal Matrix GetCurrentWorldMatrix()
2968 Matrix ret = new Matrix(NDalicPINVOKE.Actor_GetCurrentWorldMatrix(swigCPtr), true);
2969 if (NDalicPINVOKE.SWIGPendingException.Pending)
2970 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2974 internal void SetVisible(bool visible)
2976 NDalicPINVOKE.Actor_SetVisible(swigCPtr, visible);
2977 if (NDalicPINVOKE.SWIGPendingException.Pending)
2978 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2981 internal bool IsVisible()
2983 bool ret = NDalicPINVOKE.Actor_IsVisible(swigCPtr);
2984 if (NDalicPINVOKE.SWIGPendingException.Pending)
2985 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2989 internal void SetOpacity(float opacity)
2991 NDalicPINVOKE.Actor_SetOpacity(swigCPtr, opacity);
2992 if (NDalicPINVOKE.SWIGPendingException.Pending)
2993 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2996 internal float GetCurrentOpacity()
2998 float ret = NDalicPINVOKE.Actor_GetCurrentOpacity(swigCPtr);
2999 if (NDalicPINVOKE.SWIGPendingException.Pending)
3000 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3004 internal void SetColor(Vector4 color)
3006 NDalicPINVOKE.Actor_SetColor(swigCPtr, Vector4.getCPtr(color));
3007 if (NDalicPINVOKE.SWIGPendingException.Pending)
3008 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3011 internal Vector4 GetCurrentColor()
3013 Vector4 ret = new Vector4(NDalicPINVOKE.Actor_GetCurrentColor(swigCPtr), true);
3014 if (NDalicPINVOKE.SWIGPendingException.Pending)
3015 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3019 internal void SetColorMode(ColorMode colorMode)
3021 NDalicPINVOKE.Actor_SetColorMode(swigCPtr, (int)colorMode);
3022 if (NDalicPINVOKE.SWIGPendingException.Pending)
3023 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3026 internal ColorMode GetColorMode()
3028 ColorMode ret = (ColorMode)NDalicPINVOKE.Actor_GetColorMode(swigCPtr);
3029 if (NDalicPINVOKE.SWIGPendingException.Pending)
3030 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3034 internal Vector4 GetCurrentWorldColor()
3036 Vector4 ret = new Vector4(NDalicPINVOKE.Actor_GetCurrentWorldColor(swigCPtr), true);
3037 if (NDalicPINVOKE.SWIGPendingException.Pending)
3038 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3042 internal void SetDrawMode(DrawModeType drawMode)
3044 NDalicPINVOKE.Actor_SetDrawMode(swigCPtr, (int)drawMode);
3045 if (NDalicPINVOKE.SWIGPendingException.Pending)
3046 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3049 internal DrawModeType GetDrawMode()
3051 DrawModeType ret = (DrawModeType)NDalicPINVOKE.Actor_GetDrawMode(swigCPtr);
3052 if (NDalicPINVOKE.SWIGPendingException.Pending)
3053 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3058 /// Converts screen coordinates into the view's coordinate system using the default camera.
3060 /// <pre>The view has been initialized.</pre>
3061 /// <remarks>The view coordinates are relative to the top-left(0.0, 0.0, 0.5).</remarks>
3062 /// <param name="localX">On return, the X-coordinate relative to the view.</param>
3063 /// <param name="localY">On return, the Y-coordinate relative to the view.</param>
3064 /// <param name="screenX">The screen X-coordinate.</param>
3065 /// <param name="screenY">The screen Y-coordinate.</param>
3066 /// <returns>True if the conversion succeeded.</returns>
3067 /// <since_tizen> 3 </since_tizen>
3068 public bool ScreenToLocal(out float localX, out float localY, float screenX, float screenY)
3070 bool ret = NDalicPINVOKE.Actor_ScreenToLocal(swigCPtr, out localX, out localY, screenX, screenY);
3071 if (NDalicPINVOKE.SWIGPendingException.Pending)
3072 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3076 internal void SetKeyboardFocusable(bool focusable)
3078 NDalicPINVOKE.Actor_SetKeyboardFocusable(swigCPtr, focusable);
3079 if (NDalicPINVOKE.SWIGPendingException.Pending)
3080 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3083 internal bool IsKeyboardFocusable()
3085 bool ret = NDalicPINVOKE.Actor_IsKeyboardFocusable(swigCPtr);
3086 if (NDalicPINVOKE.SWIGPendingException.Pending)
3087 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3091 internal void SetResizePolicy(ResizePolicyType policy, DimensionType dimension)
3093 NDalicPINVOKE.Actor_SetResizePolicy(swigCPtr, (int)policy, (int)dimension);
3094 if (NDalicPINVOKE.SWIGPendingException.Pending)
3095 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3098 internal ResizePolicyType GetResizePolicy(DimensionType dimension)
3100 ResizePolicyType ret = (ResizePolicyType)NDalicPINVOKE.Actor_GetResizePolicy(swigCPtr, (int)dimension);
3101 if (NDalicPINVOKE.SWIGPendingException.Pending)
3102 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3107 /// Sets the relative to parent size factor of the view.<br />
3108 /// This factor is only used when ResizePolicy is set to either:
3109 /// ResizePolicy::SIZE_RELATIVE_TO_PARENT or ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT.<br />
3110 /// This view's size is set to the view's size multiplied by or added to this factor, depending on ResizePolicy.<br />
3112 /// <pre>The view has been initialized.</pre>
3113 /// <param name="factor">A Vector3 representing the relative factor to be applied to each axis.</param>
3114 /// <since_tizen> 3 </since_tizen>
3115 public void SetSizeModeFactor(Vector3 factor)
3117 NDalicPINVOKE.Actor_SetSizeModeFactor(swigCPtr, Vector3.getCPtr(factor));
3118 if (NDalicPINVOKE.SWIGPendingException.Pending)
3119 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3122 internal Vector3 GetSizeModeFactor()
3124 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetSizeModeFactor(swigCPtr), true);
3125 if (NDalicPINVOKE.SWIGPendingException.Pending)
3126 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3131 /// Calculates the height of the view given a width.<br />
3132 /// The natural size is used for default calculation.<br />
3133 /// Size 0 is treated as aspect ratio 1:1.<br />
3135 /// <param name="width">The width to use.</param>
3136 /// <returns>The height based on the width.</returns>
3137 /// <since_tizen> 3 </since_tizen>
3138 public float GetHeightForWidth(float width)
3140 float ret = NDalicPINVOKE.Actor_GetHeightForWidth(swigCPtr, width);
3141 if (NDalicPINVOKE.SWIGPendingException.Pending)
3142 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3147 /// Calculates the width of the view given a height.<br />
3148 /// The natural size is used for default calculation.<br />
3149 /// Size 0 is treated as aspect ratio 1:1.<br />
3151 /// <param name="height">The height to use.</param>
3152 /// <returns>The width based on the height.</returns>
3153 /// <since_tizen> 3 </since_tizen>
3154 public float GetWidthForHeight(float height)
3156 float ret = NDalicPINVOKE.Actor_GetWidthForHeight(swigCPtr, height);
3157 if (NDalicPINVOKE.SWIGPendingException.Pending)
3158 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3163 /// Return the amount of size allocated for relayout.
3165 /// <param name="dimension">The dimension to retrieve.</param>
3166 /// <returns>Return the size.</returns>
3167 /// <since_tizen> 3 </since_tizen>
3168 public float GetRelayoutSize(DimensionType dimension)
3170 float ret = NDalicPINVOKE.Actor_GetRelayoutSize(swigCPtr, (int)dimension);
3171 if (NDalicPINVOKE.SWIGPendingException.Pending)
3172 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3177 /// Set the padding for the view.
3179 /// <param name="padding">Padding for the view.</param>
3180 /// <since_tizen> 3 </since_tizen>
3181 public void SetPadding(PaddingType padding)
3183 NDalicPINVOKE.Actor_SetPadding(swigCPtr, PaddingType.getCPtr(padding));
3184 if (NDalicPINVOKE.SWIGPendingException.Pending)
3185 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3189 /// Return the value of padding for the view.
3191 /// <param name="paddingOut">the value of padding for the view</param>
3192 /// <since_tizen> 3 </since_tizen>
3193 public void GetPadding(PaddingType paddingOut)
3195 NDalicPINVOKE.Actor_GetPadding(swigCPtr, PaddingType.getCPtr(paddingOut));
3196 if (NDalicPINVOKE.SWIGPendingException.Pending)
3197 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3200 internal void SetMinimumSize(Vector2 size)
3202 NDalicPINVOKE.Actor_SetMinimumSize(swigCPtr, Vector2.getCPtr(size));
3203 if (NDalicPINVOKE.SWIGPendingException.Pending)
3204 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3207 internal Vector2 GetMinimumSize()
3209 Vector2 ret = new Vector2(NDalicPINVOKE.Actor_GetMinimumSize(swigCPtr), true);
3210 if (NDalicPINVOKE.SWIGPendingException.Pending)
3211 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3215 internal void SetMaximumSize(Vector2 size)
3217 NDalicPINVOKE.Actor_SetMaximumSize(swigCPtr, Vector2.getCPtr(size));
3218 if (NDalicPINVOKE.SWIGPendingException.Pending)
3219 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3222 internal Vector2 GetMaximumSize()
3224 Vector2 ret = new Vector2(NDalicPINVOKE.Actor_GetMaximumSize(swigCPtr), true);
3225 if (NDalicPINVOKE.SWIGPendingException.Pending)
3226 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3230 internal int GetHierarchyDepth()
3232 int ret = NDalicPINVOKE.Actor_GetHierarchyDepth(swigCPtr);
3233 if (NDalicPINVOKE.SWIGPendingException.Pending)
3234 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3238 /// <since_tizen> 3 </since_tizen>
3239 public uint AddRenderer(Renderer renderer)
3241 uint ret = NDalicPINVOKE.Actor_AddRenderer(swigCPtr, Renderer.getCPtr(renderer));
3242 if (NDalicPINVOKE.SWIGPendingException.Pending)
3243 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3247 internal uint GetRendererCount()
3249 uint ret = NDalicPINVOKE.Actor_GetRendererCount(swigCPtr);
3250 if (NDalicPINVOKE.SWIGPendingException.Pending)
3251 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3255 /// <since_tizen> 3 </since_tizen>
3256 public Renderer GetRendererAt(uint index)
3258 //to fix memory leak issue, match the handle count with native side.
3259 IntPtr cPtr = NDalicPINVOKE.Actor_GetRendererAt(swigCPtr, index);
3260 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
3261 Renderer ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as Renderer;
3262 NDalicPINVOKE.delete_BaseHandle(CPtr);
3263 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
3265 if (NDalicPINVOKE.SWIGPendingException.Pending)
3266 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3270 /// <since_tizen> 3 </since_tizen>
3271 public void RemoveRenderer(Renderer renderer)
3273 NDalicPINVOKE.Actor_RemoveRenderer__SWIG_0(swigCPtr, Renderer.getCPtr(renderer));
3274 if (NDalicPINVOKE.SWIGPendingException.Pending)
3275 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3278 /// <since_tizen> 3 </since_tizen>
3279 public void RemoveRenderer(uint index)
3281 NDalicPINVOKE.Actor_RemoveRenderer__SWIG_1(swigCPtr, index);
3282 if (NDalicPINVOKE.SWIGPendingException.Pending)
3283 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3286 internal TouchDataSignal TouchSignal()
3288 TouchDataSignal ret = new TouchDataSignal(NDalicPINVOKE.Actor_TouchSignal(swigCPtr), false);
3289 if (NDalicPINVOKE.SWIGPendingException.Pending)
3290 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3294 internal HoverSignal HoveredSignal()
3296 HoverSignal ret = new HoverSignal(NDalicPINVOKE.Actor_HoveredSignal(swigCPtr), false);
3297 if (NDalicPINVOKE.SWIGPendingException.Pending)
3298 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3302 internal WheelSignal WheelEventSignal()
3304 WheelSignal ret = new WheelSignal(NDalicPINVOKE.Actor_WheelEventSignal(swigCPtr), false);
3305 if (NDalicPINVOKE.SWIGPendingException.Pending)
3306 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3310 internal ViewSignal OnWindowSignal()
3312 ViewSignal ret = new ViewSignal(NDalicPINVOKE.Actor_OnStageSignal(swigCPtr), false);
3313 if (NDalicPINVOKE.SWIGPendingException.Pending)
3314 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3318 internal ViewSignal OffWindowSignal()
3320 ViewSignal ret = new ViewSignal(NDalicPINVOKE.Actor_OffStageSignal(swigCPtr), false);
3321 if (NDalicPINVOKE.SWIGPendingException.Pending)
3322 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3326 internal ViewSignal OnRelayoutSignal()
3328 ViewSignal ret = new ViewSignal(NDalicPINVOKE.Actor_OnRelayoutSignal(swigCPtr), false);
3329 if (NDalicPINVOKE.SWIGPendingException.Pending)
3330 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3334 internal ViewVisibilityChangedSignal VisibilityChangedSignal(View view)
3336 ViewVisibilityChangedSignal ret = new ViewVisibilityChangedSignal(NDalicPINVOKE.VisibilityChangedSignal(View.getCPtr(view)), false);
3337 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3342 internal ViewLayoutDirectionChangedSignal LayoutDirectionChangedSignal(View view)
3344 ViewLayoutDirectionChangedSignal ret = new ViewLayoutDirectionChangedSignal(NDalicManualPINVOKE.LayoutDirectionChangedSignal(View.getCPtr(view)), false);
3345 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3350 internal ViewSignal ResourcesLoadedSignal()
3352 ViewSignal ret = new ViewSignal(NDalicPINVOKE.ResourceReadySignal(swigCPtr), false);
3353 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3358 /// Gets or sets the origin of a view within its parent's area.<br />
3359 /// 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 />
3360 /// The default parent-origin is ParentOrigin.TopLeft (0.0, 0.0, 0.5).<br />
3361 /// A view's position is the distance between this origin and the view's anchor-point.<br />
3363 /// <pre>The view has been initialized.</pre>
3364 /// <since_tizen> 3 </since_tizen>
3365 public Position ParentOrigin
3369 Position temp = new Position(0.0f, 0.0f, 0.0f);
3370 GetProperty(View.Property.PARENT_ORIGIN).Get(temp);
3375 SetProperty(View.Property.PARENT_ORIGIN, new Tizen.NUI.PropertyValue(value));
3379 internal float ParentOriginX
3384 GetProperty(View.Property.PARENT_ORIGIN_X).Get(out temp);
3389 SetProperty(View.Property.PARENT_ORIGIN_X, new Tizen.NUI.PropertyValue(value));
3393 internal float ParentOriginY
3398 GetProperty(View.Property.PARENT_ORIGIN_Y).Get(out temp);
3403 SetProperty(View.Property.PARENT_ORIGIN_Y, new Tizen.NUI.PropertyValue(value));
3407 internal float ParentOriginZ
3412 GetProperty(View.Property.PARENT_ORIGIN_Z).Get(out temp);
3417 SetProperty(View.Property.PARENT_ORIGIN_Z, new Tizen.NUI.PropertyValue(value));
3422 /// Gets or sets the anchor-point of a view.<br />
3423 /// 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 />
3424 /// The default pivot point is PivotPoint.Center (0.5, 0.5, 0.5).<br />
3425 /// A view position is the distance between its parent-origin and this anchor-point.<br />
3426 /// A view's orientation is the rotation from its default orientation, the rotation is centered around its anchor-point.<br />
3427 /// <pre>The view has been initialized.</pre>
3429 /// <since_tizen> 3 </since_tizen>
3430 public Position PivotPoint
3434 Position temp = new Position(0.0f, 0.0f, 0.0f);
3435 GetProperty(View.Property.ANCHOR_POINT).Get(temp);
3440 SetProperty(View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
3444 internal float PivotPointX
3449 GetProperty(View.Property.ANCHOR_POINT_X).Get(out temp);
3454 SetProperty(View.Property.ANCHOR_POINT_X, new Tizen.NUI.PropertyValue(value));
3458 internal float PivotPointY
3463 GetProperty(View.Property.ANCHOR_POINT_Y).Get(out temp);
3468 SetProperty(View.Property.ANCHOR_POINT_Y, new Tizen.NUI.PropertyValue(value));
3472 internal float PivotPointZ
3477 GetProperty(View.Property.ANCHOR_POINT_Z).Get(out temp);
3482 SetProperty(View.Property.ANCHOR_POINT_Z, new Tizen.NUI.PropertyValue(value));
3487 /// Gets or sets the size width of the view.
3489 /// <since_tizen> 3 </since_tizen>
3490 public float SizeWidth
3495 GetProperty(View.Property.SIZE_WIDTH).Get(out temp);
3500 SetProperty(View.Property.SIZE_WIDTH, new Tizen.NUI.PropertyValue(value));
3505 /// Gets or sets the size height of the view.
3507 /// <since_tizen> 3 </since_tizen>
3508 public float SizeHeight
3513 GetProperty(View.Property.SIZE_HEIGHT).Get(out temp);
3518 SetProperty(View.Property.SIZE_HEIGHT, new Tizen.NUI.PropertyValue(value));
3523 /// Gets or sets the position of the view.<br />
3524 /// By default, sets the position vector between the parent origin and pivot point (default).<br />
3525 /// If the position inheritance is disabled, sets the world position.<br />
3527 /// <since_tizen> 3 </since_tizen>
3528 public Position Position
3532 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
3533 GetProperty(View.Property.POSITION).Get(temp);
3538 SetProperty(View.Property.POSITION, new Tizen.NUI.PropertyValue(value));
3543 /// Gets or sets the position X of the view.
3545 /// <since_tizen> 3 </since_tizen>
3546 public float PositionX
3551 GetProperty(View.Property.POSITION_X).Get(out temp);
3556 SetProperty(View.Property.POSITION_X, new Tizen.NUI.PropertyValue(value));
3561 /// Gets or sets the position Y of the view.
3563 /// <since_tizen> 3 </since_tizen>
3564 public float PositionY
3569 GetProperty(View.Property.POSITION_Y).Get(out temp);
3574 SetProperty(View.Property.POSITION_Y, new Tizen.NUI.PropertyValue(value));
3579 /// Gets or sets the position Z of the view.
3581 /// <since_tizen> 3 </since_tizen>
3582 public float PositionZ
3587 GetProperty(View.Property.POSITION_Z).Get(out temp);
3592 SetProperty(View.Property.POSITION_Z, new Tizen.NUI.PropertyValue(value));
3597 /// Gets or sets the world position of the view.
3599 /// <since_tizen> 3 </since_tizen>
3600 public Vector3 WorldPosition
3604 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
3605 GetProperty(View.Property.WORLD_POSITION).Get(temp);
3610 internal float WorldPositionX
3615 GetProperty(View.Property.WORLD_POSITION_X).Get(out temp);
3620 internal float WorldPositionY
3625 GetProperty(View.Property.WORLD_POSITION_Y).Get(out temp);
3630 internal float WorldPositionZ
3635 GetProperty(View.Property.WORLD_POSITION_Z).Get(out temp);
3641 /// Gets or sets the orientation of the view.<br />
3642 /// The view's orientation is the rotation from its default orientation, and the rotation is centered around its anchor-point.<br />
3644 /// <remarks>This is an asynchronous method.</remarks>
3645 /// <since_tizen> 3 </since_tizen>
3646 public Rotation Orientation
3650 Rotation temp = new Rotation();
3651 GetProperty(View.Property.ORIENTATION).Get(temp);
3656 SetProperty(View.Property.ORIENTATION, new Tizen.NUI.PropertyValue(value));
3661 /// Gets or sets the world orientation of the view.<br />
3663 /// <since_tizen> 3 </since_tizen>
3664 public Rotation WorldOrientation
3668 Rotation temp = new Rotation();
3669 GetProperty(View.Property.WORLD_ORIENTATION).Get(temp);
3675 /// Gets or sets the scale factor applied to the view.<br />
3677 /// <since_tizen> 3 </since_tizen>
3678 public Vector3 Scale
3682 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
3683 GetProperty(View.Property.SCALE).Get(temp);
3688 SetProperty(View.Property.SCALE, new Tizen.NUI.PropertyValue(value));
3693 /// Gets or sets the scale X factor applied to the view.
3695 /// <since_tizen> 3 </since_tizen>
3701 GetProperty(View.Property.SCALE_X).Get(out temp);
3706 SetProperty(View.Property.SCALE_X, new Tizen.NUI.PropertyValue(value));
3711 /// Gets or sets the scale Y factor applied to the view.
3713 /// <since_tizen> 3 </since_tizen>
3719 GetProperty(View.Property.SCALE_Y).Get(out temp);
3724 SetProperty(View.Property.SCALE_Y, new Tizen.NUI.PropertyValue(value));
3729 /// Gets or sets the scale Z factor applied to the view.
3731 /// <since_tizen> 3 </since_tizen>
3737 GetProperty(View.Property.SCALE_Z).Get(out temp);
3742 SetProperty(View.Property.SCALE_Z, new Tizen.NUI.PropertyValue(value));
3747 /// Gets the world scale of the view.
3749 /// <since_tizen> 3 </since_tizen>
3750 public Vector3 WorldScale
3754 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
3755 GetProperty(View.Property.WORLD_SCALE).Get(temp);
3761 /// Retrieves the visibility flag of the view.
3764 /// If the view is not visible, then the view and its children will not be rendered.
3765 /// 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.
3767 /// <since_tizen> 3 </since_tizen>
3768 public bool Visibility
3773 GetProperty(View.Property.VISIBLE).Get(out temp);
3779 /// Gets the view's world color.
3781 /// <since_tizen> 3 </since_tizen>
3782 public Vector4 WorldColor
3786 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
3787 GetProperty(View.Property.WORLD_COLOR).Get(temp);
3792 internal Matrix WorldMatrix
3796 Matrix temp = new Matrix();
3797 GetProperty(View.Property.WORLD_MATRIX).Get(temp);
3803 /// Gets or sets the view's name.
3805 /// <since_tizen> 3 </since_tizen>
3811 GetProperty(View.Property.NAME).Get(out temp);
3816 SetProperty(View.Property.NAME, new Tizen.NUI.PropertyValue(value));
3821 /// Get the number of children held by the view.
3823 /// <since_tizen> 3 </since_tizen>
3824 public new uint ChildCount
3828 return GetChildCount();
3833 /// Gets the view's ID.
3836 /// <since_tizen> 3 </since_tizen>
3846 /// Gets or sets the status of whether the view should emit touch or hover signals.
3848 /// <since_tizen> 3 </since_tizen>
3849 public bool Sensitive
3854 GetProperty(View.Property.SENSITIVE).Get(out temp);
3859 SetProperty(View.Property.SENSITIVE, new Tizen.NUI.PropertyValue(value));
3864 /// 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.
3866 /// <since_tizen> 3 </since_tizen>
3867 public bool LeaveRequired
3872 GetProperty(View.Property.LEAVE_REQUIRED).Get(out temp);
3877 SetProperty(View.Property.LEAVE_REQUIRED, new Tizen.NUI.PropertyValue(value));
3882 /// Gets or sets the status of whether a child view inherits it's parent's orientation.
3884 /// <since_tizen> 3 </since_tizen>
3885 public bool InheritOrientation
3890 GetProperty(View.Property.INHERIT_ORIENTATION).Get(out temp);
3895 SetProperty(View.Property.INHERIT_ORIENTATION, new Tizen.NUI.PropertyValue(value));
3900 /// Gets or sets the status of whether a child view inherits it's parent's scale.
3902 /// <since_tizen> 3 </since_tizen>
3903 public bool InheritScale
3908 GetProperty(View.Property.INHERIT_SCALE).Get(out temp);
3913 SetProperty(View.Property.INHERIT_SCALE, new Tizen.NUI.PropertyValue(value));
3918 /// Gets or sets the status of how the view and its children should be drawn.<br />
3919 /// Not all views are renderable, but DrawMode can be inherited from any view.<br />
3920 /// 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 />
3921 /// If DrawMode.Overlay2D is used, the view and its children will be drawn as a 2D overlay.<br />
3922 /// Overlay views are drawn in a separate pass, after all non-overlay views within the layer.<br />
3923 /// For overlay views, the drawing order is with respect to tree levels of views, and depth-testing will not be used.<br />
3925 /// <since_tizen> 3 </since_tizen>
3926 public DrawModeType DrawMode
3931 if (GetProperty(View.Property.DRAW_MODE).Get(out temp) == false)
3933 NUILog.Error("DrawMode get error!");
3938 return DrawModeType.Normal;
3940 return DrawModeType.Overlay2D;
3942 return DrawModeType.Stencil;
3944 return DrawModeType.Normal;
3949 SetProperty(View.Property.DRAW_MODE, new Tizen.NUI.PropertyValue((int)value));
3954 /// Gets or sets the relative to parent size factor of the view.<br />
3955 /// This factor is only used when ResizePolicyType is set to either: ResizePolicyType.SizeRelativeToParent or ResizePolicyType.SizeFixedOffsetFromParent.<br />
3956 /// This view's size is set to the view's size multiplied by or added to this factor, depending on ResizePolicyType.<br />
3958 /// <since_tizen> 3 </since_tizen>
3959 public Vector3 SizeModeFactor
3963 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
3964 GetProperty(View.Property.SIZE_MODE_FACTOR).Get(temp);
3969 SetProperty(View.Property.SIZE_MODE_FACTOR, new Tizen.NUI.PropertyValue(value));
3974 /// Gets or sets the width resize policy to be used.
3976 /// <since_tizen> 3 </since_tizen>
3977 public ResizePolicyType WidthResizePolicy
3982 if (GetProperty(View.Property.WIDTH_RESIZE_POLICY).Get(out temp) == false)
3984 NUILog.Error("WidthResizePolicy get error!");
3989 return ResizePolicyType.Fixed;
3990 case "USE_NATURAL_SIZE":
3991 return ResizePolicyType.UseNaturalSize;
3992 case "FILL_TO_PARENT":
3993 return ResizePolicyType.FillToParent;
3994 case "SIZE_RELATIVE_TO_PARENT":
3995 return ResizePolicyType.SizeRelativeToParent;
3996 case "SIZE_FIXED_OFFSET_FROM_PARENT":
3997 return ResizePolicyType.SizeFixedOffsetFromParent;
3998 case "FIT_TO_CHILDREN":
3999 return ResizePolicyType.FitToChildren;
4000 case "DIMENSION_DEPENDENCY":
4001 return ResizePolicyType.DimensionDependency;
4002 case "USE_ASSIGNED_SIZE":
4003 return ResizePolicyType.UseAssignedSize;
4005 return ResizePolicyType.Fixed;
4010 SetProperty(View.Property.WIDTH_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)value));
4015 /// Gets or sets the height resize policy to be used.
4017 /// <since_tizen> 3 </since_tizen>
4018 public ResizePolicyType HeightResizePolicy
4023 if (GetProperty(View.Property.HEIGHT_RESIZE_POLICY).Get(out temp) == false)
4025 NUILog.Error("HeightResizePolicy get error!");
4030 return ResizePolicyType.Fixed;
4031 case "USE_NATURAL_SIZE":
4032 return ResizePolicyType.UseNaturalSize;
4033 case "FILL_TO_PARENT":
4034 return ResizePolicyType.FillToParent;
4035 case "SIZE_RELATIVE_TO_PARENT":
4036 return ResizePolicyType.SizeRelativeToParent;
4037 case "SIZE_FIXED_OFFSET_FROM_PARENT":
4038 return ResizePolicyType.SizeFixedOffsetFromParent;
4039 case "FIT_TO_CHILDREN":
4040 return ResizePolicyType.FitToChildren;
4041 case "DIMENSION_DEPENDENCY":
4042 return ResizePolicyType.DimensionDependency;
4043 case "USE_ASSIGNED_SIZE":
4044 return ResizePolicyType.UseAssignedSize;
4046 return ResizePolicyType.Fixed;
4051 SetProperty(View.Property.HEIGHT_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)value));
4056 /// Gets or sets the policy to use when setting size with size negotiation.<br />
4057 /// Defaults to SizeScalePolicyType.UseSizeSet.<br />
4059 /// <since_tizen> 3 </since_tizen>
4060 public SizeScalePolicyType SizeScalePolicy
4065 if (GetProperty(View.Property.SIZE_SCALE_POLICY).Get(out temp) == false)
4067 NUILog.Error("SizeScalePolicy get error!");
4071 case "USE_SIZE_SET":
4072 return SizeScalePolicyType.UseSizeSet;
4073 case "FIT_WITH_ASPECT_RATIO":
4074 return SizeScalePolicyType.FitWithAspectRatio;
4075 case "FILL_WITH_ASPECT_RATIO":
4076 return SizeScalePolicyType.FillWithAspectRatio;
4078 return SizeScalePolicyType.UseSizeSet;
4083 string valueToString = "";
4086 case SizeScalePolicyType.UseSizeSet:
4088 valueToString = "USE_SIZE_SET";
4091 case SizeScalePolicyType.FitWithAspectRatio:
4093 valueToString = "FIT_WITH_ASPECT_RATIO";
4096 case SizeScalePolicyType.FillWithAspectRatio:
4098 valueToString = "FILL_WITH_ASPECT_RATIO";
4103 valueToString = "USE_SIZE_SET";
4107 SetProperty(View.Property.SIZE_SCALE_POLICY, new Tizen.NUI.PropertyValue(valueToString));
4112 /// Gets or sets the status of whether the width size is dependent on the height size.
4114 /// <since_tizen> 3 </since_tizen>
4115 public bool WidthForHeight
4120 GetProperty(View.Property.WIDTH_FOR_HEIGHT).Get(out temp);
4125 SetProperty(View.Property.WIDTH_FOR_HEIGHT, new Tizen.NUI.PropertyValue(value));
4130 /// Gets or sets the status of whether the height size is dependent on the width size.
4132 /// <since_tizen> 3 </since_tizen>
4133 public bool HeightForWidth
4138 GetProperty(View.Property.HEIGHT_FOR_WIDTH).Get(out temp);
4143 SetProperty(View.Property.HEIGHT_FOR_WIDTH, new Tizen.NUI.PropertyValue(value));
4148 /// Gets or sets the padding for use in layout.
4150 /// <since_tizen> 5 </since_tizen>
4151 public Extents Padding
4155 Extents temp = new Extents(0, 0, 0, 0);
4156 GetProperty(View.Property.PADDING).Get(temp);
4161 SetProperty(View.Property.PADDING, new Tizen.NUI.PropertyValue(value));
4166 /// Gets or sets the minimum size the view can be assigned in size negotiation.
4168 /// <since_tizen> 3 </since_tizen>
4169 public Size2D MinimumSize
4173 Size2D temp = new Size2D(0, 0);
4174 GetProperty(View.Property.MINIMUM_SIZE).Get(temp);
4179 SetProperty(View.Property.MINIMUM_SIZE, new Tizen.NUI.PropertyValue(value));
4184 /// Gets or sets the maximum size the view can be assigned in size negotiation.
4186 /// <since_tizen> 3 </since_tizen>
4187 public Size2D MaximumSize
4191 Size2D temp = new Size2D(0, 0);
4192 GetProperty(View.Property.MAXIMUM_SIZE).Get(temp);
4197 SetProperty(View.Property.MAXIMUM_SIZE, new Tizen.NUI.PropertyValue(value));
4202 /// Gets or sets whether a child view inherits it's parent's position.<br />
4203 /// Default is to inherit.<br />
4204 /// 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 />
4206 /// <since_tizen> 3 </since_tizen>
4207 public bool InheritPosition
4212 GetProperty(View.Property.INHERIT_POSITION).Get(out temp);
4217 SetProperty(View.Property.INHERIT_POSITION, new Tizen.NUI.PropertyValue(value));
4222 /// Gets or sets the clipping behavior (mode) of it's children.
4224 /// <since_tizen> 3 </since_tizen>
4225 public ClippingModeType ClippingMode
4230 if (GetProperty(View.Property.CLIPPING_MODE).Get(out temp) == false)
4232 NUILog.Error("ClippingMode get error!");
4237 return ClippingModeType.Disabled;
4238 case "CLIP_CHILDREN":
4239 return ClippingModeType.ClipChildren;
4240 case "CLIP_TO_BOUNDING_BOX":
4241 return ClippingModeType.ClipToBoundingBox;
4243 return ClippingModeType.Disabled;
4248 SetProperty(View.Property.CLIPPING_MODE, new Tizen.NUI.PropertyValue((int)value));
4253 /// Gets the number of renderers held by the view.
4255 /// <since_tizen> 3 </since_tizen>
4256 public uint RendererCount
4260 return GetRendererCount();
4265 /// [Obsolete("Please do not use! this will be deprecated")]
4267 /// <since_tizen> 3 </since_tizen>
4268 /// Please do not use! this will be deprecated!
4269 /// Instead please use PivotPoint.
4270 [Obsolete("Please do not use! This will be deprecated! Please use PivotPoint instead! " +
4272 "View view = new View(); " +
4273 "view.PivotPoint = PivotPoint.Center; " +
4274 "view.PositionUsesPivotPoint = true;")]
4275 [EditorBrowsable(EditorBrowsableState.Never)]
4276 public Position AnchorPoint
4280 Position temp = new Position(0.0f, 0.0f, 0.0f);
4281 GetProperty(View.Property.ANCHOR_POINT).Get(temp);
4286 SetProperty(View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
4291 /// [Obsolete("Please do not use! this will be deprecated")]
4293 /// <since_tizen> 3 </since_tizen>
4294 [Obsolete("Please do not use! This will be deprecated! Please use Size2D instead! " +
4296 "View view = new View(); " +
4297 "view.Size2D = new Size2D(100, 100);")]
4298 [EditorBrowsable(EditorBrowsableState.Never)]
4303 Size temp = new Size(0.0f, 0.0f, 0.0f);
4304 GetProperty(View.Property.SIZE).Get(temp);
4309 SetProperty(View.Property.SIZE, new Tizen.NUI.PropertyValue(value));
4314 /// "Please DO NOT use! This will be deprecated! Please use 'Container GetParent() for derived class' instead!"
4316 /// <since_tizen> 3 </since_tizen>
4317 [Obsolete("Please do not use! This will be deprecated! Please use 'Container GetParent() for derived class' instead! " +
4319 "Container parent = view.GetParent(); " +
4320 "View view = parent as View;")]
4321 [EditorBrowsable(EditorBrowsableState.Never)]
4322 public new View Parent
4327 IntPtr cPtr = NDalicPINVOKE.Actor_GetParent(swigCPtr);
4328 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
4329 BaseHandle basehandle = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle);
4331 if (basehandle is Layer layer)
4333 ret = new View(Layer.getCPtr(layer).Handle, false);
4334 NUILog.Error("This Parent property is deprecated, shoud do not be used");
4338 ret = basehandle as View;
4341 NDalicPINVOKE.delete_BaseHandle(CPtr);
4342 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
4344 if (NDalicPINVOKE.SWIGPendingException.Pending)
4345 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4351 /// Gets/Sets whether inherit parent's the layout Direction.
4353 /// <since_tizen> 4 </since_tizen>
4354 public bool InheritLayoutDirection
4359 GetProperty(View.Property.INHERIT_LAYOUT_DIRECTION).Get(out temp);
4364 SetProperty(View.Property.INHERIT_LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue(value));
4369 /// Gets/Sets the layout Direction.
4371 /// <since_tizen> 4 </since_tizen>
4372 public ViewLayoutDirectionType LayoutDirection
4377 if (GetProperty(View.Property.LAYOUT_DIRECTION).Get(out temp) == false)
4379 NUILog.Error("LAYOUT_DIRECTION get error!");
4381 return (ViewLayoutDirectionType)temp;
4385 SetProperty(View.Property.LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue((int)value));
4390 /// Gets or sets the Margin for use in layout.
4392 /// <since_tizen> 4 </since_tizen>
4393 public Extents Margin
4397 Extents temp = new Extents(0, 0, 0, 0);
4398 GetProperty(View.Property.MARGIN).Get(temp);
4403 SetProperty(View.Property.MARGIN, new Tizen.NUI.PropertyValue(value));
4408 /// [Obsolete("Please do not use! this will be deprecated")]
4410 /// Please do not use! this will be deprecated!
4411 /// Instead please use Padding.
4412 /// <since_tizen> 4 </since_tizen>
4413 [Obsolete("Please do not use! this will be deprecated, instead please use Padding.")]
4414 [EditorBrowsable(EditorBrowsableState.Never)]
4415 public Extents PaddingEX
4419 Extents temp = new Extents(0, 0, 0, 0);
4420 GetProperty(View.Property.PADDING).Get(temp);
4425 SetProperty(View.Property.PADDING, new Tizen.NUI.PropertyValue(value));
4430 /// Perform an action on a visual registered to this view. <br />
4431 /// Visuals will have actions, this API is used to perform one of these actions with the given attributes.
4433 /// <param name="propertyIndexOfVisual">The Property index of the visual.</param>
4434 /// <param name="propertyIndexOfActionId">The action to perform. See Visual to find supported actions.</param>
4435 /// <param name="attributes">Optional attributes for the action.</param>
4436 /// <since_tizen> 5 </since_tizen>
4437 public void DoAction(int propertyIndexOfVisual, int propertyIndexOfActionId, PropertyValue attributes)
4439 NDalicManualPINVOKE.View_DoAction(swigCPtr, propertyIndexOfVisual, propertyIndexOfActionId, PropertyValue.getCPtr(attributes));
4440 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4446 /// The View layout Direction type.
4448 /// <since_tizen> 4 </since_tizen>
4449 public enum ViewLayoutDirectionType
4454 /// <since_tizen> 4 </since_tizen>
4459 /// <since_tizen> 4 </since_tizen>