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.GetParent();
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)
1202 View parentView = Parent as View;
1203 view = parentView.FindChildById(id);
1208 view = Window.Instance.GetRootLayer().FindChildById(id);
1214 internal void SetKeyInputFocus()
1216 NDalicPINVOKE.View_SetKeyInputFocus(swigCPtr);
1217 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1221 /// Queries whether the view has a focus.
1223 /// <returns>True if this view has a focus.</returns>
1224 /// <since_tizen> 3 </since_tizen>
1225 public bool HasFocus()
1227 bool ret = NDalicPINVOKE.View_HasKeyInputFocus(swigCPtr);
1228 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1232 internal void ClearKeyInputFocus()
1234 NDalicPINVOKE.View_ClearKeyInputFocus(swigCPtr);
1235 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1238 internal PinchGestureDetector GetPinchGestureDetector()
1240 PinchGestureDetector ret = new PinchGestureDetector(NDalicPINVOKE.View_GetPinchGestureDetector(swigCPtr), true);
1241 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1245 internal PanGestureDetector GetPanGestureDetector()
1247 PanGestureDetector ret = new PanGestureDetector(NDalicPINVOKE.View_GetPanGestureDetector(swigCPtr), true);
1248 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1252 internal TapGestureDetector GetTapGestureDetector()
1254 TapGestureDetector ret = new TapGestureDetector(NDalicPINVOKE.View_GetTapGestureDetector(swigCPtr), true);
1255 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1259 internal LongPressGestureDetector GetLongPressGestureDetector()
1261 LongPressGestureDetector ret = new LongPressGestureDetector(NDalicPINVOKE.View_GetLongPressGestureDetector(swigCPtr), true);
1262 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1267 /// Sets the name of the style to be applied to the view.
1269 /// <param name="styleName">A string matching a style described in a stylesheet.</param>
1270 /// <since_tizen> 3 </since_tizen>
1271 public void SetStyleName(string styleName)
1273 NDalicPINVOKE.View_SetStyleName(swigCPtr, styleName);
1274 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1278 /// Retrieves the name of the style to be applied to the view (if any).
1280 /// <returns>A string matching a style, or an empty string.</returns>
1281 /// <since_tizen> 3 </since_tizen>
1282 public string GetStyleName()
1284 string ret = NDalicPINVOKE.View_GetStyleName(swigCPtr);
1285 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1289 internal void SetBackgroundColor(Vector4 color)
1291 NDalicPINVOKE.View_SetBackgroundColor(swigCPtr, Vector4.getCPtr(color));
1292 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1295 internal Vector4 GetBackgroundColor()
1297 Vector4 ret = new Vector4(NDalicPINVOKE.View_GetBackgroundColor(swigCPtr), true);
1298 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1302 internal void SetBackgroundImage(Image image)
1304 NDalicPINVOKE.View_SetBackgroundImage(swigCPtr, Image.getCPtr(image));
1305 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1309 /// Clears the background.
1311 /// <since_tizen> 3 </since_tizen>
1312 public void ClearBackground()
1314 NDalicPINVOKE.View_ClearBackground(swigCPtr);
1315 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1318 internal ControlKeySignal KeyEventSignal()
1320 ControlKeySignal ret = new ControlKeySignal(NDalicPINVOKE.View_KeyEventSignal(swigCPtr), false);
1321 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1325 internal KeyInputFocusSignal KeyInputFocusGainedSignal()
1327 KeyInputFocusSignal ret = new KeyInputFocusSignal(NDalicPINVOKE.View_KeyInputFocusGainedSignal(swigCPtr), false);
1328 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1332 internal KeyInputFocusSignal KeyInputFocusLostSignal()
1334 KeyInputFocusSignal ret = new KeyInputFocusSignal(NDalicPINVOKE.View_KeyInputFocusLostSignal(swigCPtr), false);
1335 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1339 internal View(ViewImpl implementation) : this(NDalicPINVOKE.new_View__SWIG_2(ViewImpl.getCPtr(implementation)), true)
1341 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1344 internal enum PropertyRange
1346 PROPERTY_START_INDEX = PropertyRanges.PROPERTY_REGISTRATION_START_INDEX,
1347 CONTROL_PROPERTY_START_INDEX = PROPERTY_START_INDEX,
1348 CONTROL_PROPERTY_END_INDEX = CONTROL_PROPERTY_START_INDEX + 1000
1352 /// The StyleName, type string.
1354 /// <since_tizen> 3 </since_tizen>
1355 public string StyleName
1360 GetProperty(View.Property.STYLE_NAME).Get(out temp);
1365 SetProperty(View.Property.STYLE_NAME, new Tizen.NUI.PropertyValue(value));
1370 /// The mutually exclusive with BACKGROUND_IMAGE and BACKGROUND type Vector4.
1372 /// <since_tizen> 3 </since_tizen>
1373 public Color BackgroundColor
1377 Color backgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f);
1379 Tizen.NUI.PropertyMap background = Background;
1381 background.Find(Visual.Property.Type)?.Get(out visualType);
1382 if (visualType == (int)Visual.Type.Color)
1384 background.Find(ColorVisualProperty.MixColor)?.Get(backgroundColor);
1387 return backgroundColor;
1391 SetProperty(View.Property.BACKGROUND, new Tizen.NUI.PropertyValue(value));
1396 /// Creates an animation to animate the background color visual. If there is no
1397 /// background visual, creates one with transparent black as it's mixColor.
1399 /// <since_tizen> 3 </since_tizen>
1400 public Animation AnimateBackgroundColor(object destinationValue,
1403 AlphaFunction.BuiltinFunctions? alphaFunction = null,
1404 object initialValue = null)
1406 Tizen.NUI.PropertyMap background = Background;
1408 if (background.Empty())
1410 // If there is no background yet, ensure there is a transparent
1412 BackgroundColor = new Color(0.0f, 0.0f, 0.0f, 0.0f);
1413 background = Background;
1415 return AnimateColor("background", destinationValue, startTime, endTime, alphaFunction, initialValue);
1419 /// Creates an animation to animate the mixColor of the named visual.
1421 /// <since_tizen> 3 </since_tizen>
1422 public Animation AnimateColor(string targetVisual, object destinationColor, int startTime, int endTime, AlphaFunction.BuiltinFunctions? alphaFunction = null, object initialColor = null)
1424 Animation animation = null;
1426 PropertyMap _animator = new PropertyMap();
1427 if (alphaFunction != null)
1429 _animator.Add("alphaFunction", new PropertyValue(AlphaFunction.BuiltinToPropertyKey(alphaFunction)));
1432 PropertyMap _timePeriod = new PropertyMap();
1433 _timePeriod.Add("duration", new PropertyValue((endTime - startTime) / 1000.0f));
1434 _timePeriod.Add("delay", new PropertyValue(startTime / 1000.0f));
1435 _animator.Add("timePeriod", new PropertyValue(_timePeriod));
1437 PropertyMap _transition = new PropertyMap();
1438 _transition.Add("animator", new PropertyValue(_animator));
1439 _transition.Add("target", new PropertyValue(targetVisual));
1440 _transition.Add("property", new PropertyValue("mixColor"));
1442 if (initialColor != null)
1444 PropertyValue initValue = PropertyValue.CreateFromObject(initialColor);
1445 _transition.Add("initialValue", initValue);
1448 PropertyValue destValue = PropertyValue.CreateFromObject(destinationColor);
1449 _transition.Add("targetValue", destValue);
1450 TransitionData _transitionData = new TransitionData(_transition);
1452 animation = new Animation(NDalicManualPINVOKE.View_CreateTransition(swigCPtr, TransitionData.getCPtr(_transitionData)), true);
1453 if (NDalicPINVOKE.SWIGPendingException.Pending)
1454 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
1460 /// The mutually exclusive with BACKGROUND_COLOR and BACKGROUND type Map.
1462 /// <since_tizen> 3 </since_tizen>
1463 public string BackgroundImage
1467 string backgroundImage = "";
1469 Tizen.NUI.PropertyMap background = Background;
1471 background.Find(Visual.Property.Type)?.Get(out visualType);
1472 if (visualType == (int)Visual.Type.Image)
1474 background.Find(ImageVisualProperty.URL)?.Get(out backgroundImage);
1477 return backgroundImage;
1481 SetProperty(View.Property.BACKGROUND, new Tizen.NUI.PropertyValue(value));
1486 /// The background of view.
1488 /// <since_tizen> 3 </since_tizen>
1489 public Tizen.NUI.PropertyMap Background
1493 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
1494 GetProperty(View.Property.BACKGROUND).Get(temp);
1499 SetProperty(View.Property.BACKGROUND, new Tizen.NUI.PropertyValue(value));
1505 /// The current state of the view.
1507 /// <since_tizen> 3 </since_tizen>
1513 if (GetProperty(View.Property.STATE).Get(out temp) == false)
1515 NUILog.Error("State get error!");
1521 return States.Normal;
1525 return States.Focused;
1529 return States.Disabled;
1533 return States.Normal;
1539 SetProperty(View.Property.STATE, new Tizen.NUI.PropertyValue((int)value));
1544 /// The current sub state of the view.
1546 /// <since_tizen> 3 </since_tizen>
1547 public States SubState
1552 if (GetProperty(View.Property.SUB_STATE).Get(out temp) == false)
1554 NUILog.Error("subState get error!");
1559 return States.Normal;
1561 return States.Focused;
1563 return States.Disabled;
1565 return States.Normal;
1570 string valueToString = "";
1575 valueToString = "NORMAL";
1578 case States.Focused:
1580 valueToString = "FOCUSED";
1583 case States.Disabled:
1585 valueToString = "DISABLED";
1590 valueToString = "NORMAL";
1594 SetProperty(View.Property.SUB_STATE, new Tizen.NUI.PropertyValue(valueToString));
1599 /// Displays a tooltip
1601 /// <since_tizen> 3 </since_tizen>
1602 public Tizen.NUI.PropertyMap Tooltip
1606 Tizen.NUI.PropertyMap temp = new Tizen.NUI.PropertyMap();
1607 GetProperty(View.Property.TOOLTIP).Get(temp);
1612 SetProperty(View.Property.TOOLTIP, new Tizen.NUI.PropertyValue(value));
1617 /// Displays a tooltip as a text.
1619 /// <since_tizen> 3 </since_tizen>
1620 public string TooltipText
1624 SetProperty(View.Property.TOOLTIP, new Tizen.NUI.PropertyValue(value));
1628 private int LeftFocusableViewId
1633 GetProperty(View.Property.LEFT_FOCUSABLE_VIEW_ID).Get(out temp);
1638 SetProperty(View.Property.LEFT_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
1642 private int RightFocusableViewId
1647 GetProperty(View.Property.RIGHT_FOCUSABLE_VIEW_ID).Get(out temp);
1652 SetProperty(View.Property.RIGHT_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
1656 private int UpFocusableViewId
1661 GetProperty(View.Property.UP_FOCUSABLE_VIEW_ID).Get(out temp);
1666 SetProperty(View.Property.UP_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
1670 private int DownFocusableViewId
1675 GetProperty(View.Property.DOWN_FOCUSABLE_VIEW_ID).Get(out temp);
1680 SetProperty(View.Property.DOWN_FOCUSABLE_VIEW_ID, new Tizen.NUI.PropertyValue(value));
1685 /// The Child property of FlexContainer.<br />
1686 /// The proportion of the free space in the container, the flex item will receive.<br />
1687 /// If all items in the container set this property, their sizes will be proportional to the specified flex factor.<br />
1689 /// <since_tizen> 3 </since_tizen>
1695 GetProperty(FlexContainer.ChildProperty.FLEX).Get(out temp);
1700 SetProperty(FlexContainer.ChildProperty.FLEX, new Tizen.NUI.PropertyValue(value));
1705 /// The Child property of FlexContainer.<br />
1706 /// The alignment of the flex item along the cross axis, which, if set, overides the default alignment for all items in the container.<br />
1708 /// <since_tizen> 3 </since_tizen>
1709 public int AlignSelf
1714 GetProperty(FlexContainer.ChildProperty.ALIGN_SELF).Get(out temp);
1719 SetProperty(FlexContainer.ChildProperty.ALIGN_SELF, new Tizen.NUI.PropertyValue(value));
1724 /// The Child property of FlexContainer.<br />
1725 /// The space around the flex item.<br />
1727 /// <since_tizen> 3 </since_tizen>
1728 public Vector4 FlexMargin
1732 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
1733 GetProperty(FlexContainer.ChildProperty.FLEX_MARGIN).Get(temp);
1738 SetProperty(FlexContainer.ChildProperty.FLEX_MARGIN, new Tizen.NUI.PropertyValue(value));
1743 /// The top-left cell this child occupies, if not set, the first available cell is used.
1745 /// <since_tizen> 3 </since_tizen>
1746 public Vector2 CellIndex
1750 Vector2 temp = new Vector2(0.0f, 0.0f);
1751 GetProperty(TableView.ChildProperty.CELL_INDEX).Get(temp);
1756 SetProperty(TableView.ChildProperty.CELL_INDEX, new Tizen.NUI.PropertyValue(value));
1761 /// The number of rows this child occupies, if not set, the default value is 1.
1763 /// <since_tizen> 3 </since_tizen>
1764 public float RowSpan
1769 GetProperty(TableView.ChildProperty.ROW_SPAN).Get(out temp);
1774 SetProperty(TableView.ChildProperty.ROW_SPAN, new Tizen.NUI.PropertyValue(value));
1779 /// The number of columns this child occupies, if not set, the default value is 1.
1781 /// <since_tizen> 3 </since_tizen>
1782 public float ColumnSpan
1787 GetProperty(TableView.ChildProperty.COLUMN_SPAN).Get(out temp);
1792 SetProperty(TableView.ChildProperty.COLUMN_SPAN, new Tizen.NUI.PropertyValue(value));
1797 /// The horizontal alignment of this child inside the cells, if not set, the default value is 'left'.
1799 /// <since_tizen> 3 </since_tizen>
1800 public Tizen.NUI.HorizontalAlignmentType CellHorizontalAlignment
1805 if (GetProperty(TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT).Get(out temp) == false)
1807 NUILog.Error("CellHorizontalAlignment get error!");
1813 return Tizen.NUI.HorizontalAlignmentType.Left;
1815 return Tizen.NUI.HorizontalAlignmentType.Center;
1817 return Tizen.NUI.HorizontalAlignmentType.Right;
1819 return Tizen.NUI.HorizontalAlignmentType.Left;
1824 string valueToString = "";
1827 case Tizen.NUI.HorizontalAlignmentType.Left:
1829 valueToString = "left";
1832 case Tizen.NUI.HorizontalAlignmentType.Center:
1834 valueToString = "center";
1837 case Tizen.NUI.HorizontalAlignmentType.Right:
1839 valueToString = "right";
1844 valueToString = "left";
1848 SetProperty(TableView.ChildProperty.CELL_HORIZONTAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
1853 /// The vertical alignment of this child inside the cells, if not set, the default value is 'top'.
1855 /// <since_tizen> 3 </since_tizen>
1856 public Tizen.NUI.VerticalAlignmentType CellVerticalAlignment
1861 GetProperty(TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT).Get(out temp);
1863 NUILog.Error("CellVerticalAlignment get error!");
1869 return Tizen.NUI.VerticalAlignmentType.Top;
1871 return Tizen.NUI.VerticalAlignmentType.Center;
1873 return Tizen.NUI.VerticalAlignmentType.Bottom;
1875 return Tizen.NUI.VerticalAlignmentType.Top;
1880 string valueToString = "";
1883 case Tizen.NUI.VerticalAlignmentType.Top:
1885 valueToString = "top";
1888 case Tizen.NUI.VerticalAlignmentType.Center:
1890 valueToString = "center";
1893 case Tizen.NUI.VerticalAlignmentType.Bottom:
1895 valueToString = "bottom";
1900 valueToString = "top";
1904 SetProperty(TableView.ChildProperty.CELL_VERTICAL_ALIGNMENT, new Tizen.NUI.PropertyValue(valueToString));
1909 /// The left focusable view.<br />
1910 /// This will return null if not set.<br />
1911 /// This will also return null if the specified left focusable view is not on a window.<br />
1913 /// <since_tizen> 3 </since_tizen>
1914 public View LeftFocusableView
1916 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
1919 if (LeftFocusableViewId >= 0)
1921 return ConvertIdToView((uint)LeftFocusableViewId);
1929 LeftFocusableViewId = (int)value.GetId();
1933 LeftFocusableViewId = -1;
1939 /// The right focusable view.<br />
1940 /// This will return null if not set.<br />
1941 /// This will also return null if the specified right focusable view is not on a window.<br />
1943 /// <since_tizen> 3 </since_tizen>
1944 public View RightFocusableView
1946 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
1949 if (RightFocusableViewId >= 0)
1951 return ConvertIdToView((uint)RightFocusableViewId);
1959 RightFocusableViewId = (int)value.GetId();
1963 RightFocusableViewId = -1;
1969 /// The up focusable view.<br />
1970 /// This will return null if not set.<br />
1971 /// This will also return null if the specified up focusable view is not on a window.<br />
1973 /// <since_tizen> 3 </since_tizen>
1974 public View UpFocusableView
1976 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
1979 if (UpFocusableViewId >= 0)
1981 return ConvertIdToView((uint)UpFocusableViewId);
1989 UpFocusableViewId = (int)value.GetId();
1993 UpFocusableViewId = -1;
1999 /// The down focusable view.<br />
2000 /// This will return null if not set.<br />
2001 /// This will also return null if the specified down focusable view is not on a window.<br />
2003 /// <since_tizen> 3 </since_tizen>
2004 public View DownFocusableView
2006 // As native side will be only storing IDs so need a logic to convert View to ID and vice-versa.
2009 if (DownFocusableViewId >= 0)
2011 return ConvertIdToView((uint)DownFocusableViewId);
2019 DownFocusableViewId = (int)value.GetId();
2023 DownFocusableViewId = -1;
2029 /// Whether the view should be focusable by keyboard navigation.
2031 /// <since_tizen> 3 </since_tizen>
2032 public bool Focusable
2036 SetKeyboardFocusable(value);
2040 return IsKeyboardFocusable();
2045 /// Enumeration for describing the states of the view.
2047 /// <since_tizen> 3 </since_tizen>
2051 /// The normal state.
2055 /// The focused state.
2059 /// The disabled state.
2065 /// Retrieves the position of the view.<br />
2066 /// The coordinates are relative to the view's parent.<br />
2068 /// <since_tizen> 3 </since_tizen>
2069 public Position CurrentPosition
2073 return GetCurrentPosition();
2078 /// Sets the size of a view for the width and the height.<br />
2079 /// Geometry can be scaled to fit within this area.<br />
2080 /// This does not interfere with the view's scale factor.<br />
2081 /// The views default depth is the minimum of width and height.<br />
2083 /// <since_tizen> 3 </since_tizen>
2084 public Size2D Size2D
2088 Size temp = new Size(0.0f, 0.0f, 0.0f);
2089 GetProperty(View.Property.SIZE).Get(temp);
2090 Size2D size = new Size2D((int)temp.Width, (int)temp.Height);
2095 SetProperty(View.Property.SIZE, new Tizen.NUI.PropertyValue(new Size(value)));
2100 /// Retrieves the size of the view.<br />
2101 /// The coordinates are relative to the view's parent.<br />
2103 /// <since_tizen> 3 </since_tizen>
2104 public Size2D CurrentSize
2108 return GetCurrentSize();
2113 /// Retrieves and sets the view's opacity.<br />
2115 /// <since_tizen> 3 </since_tizen>
2116 public float Opacity
2121 GetProperty(View.Property.OPACITY).Get(out temp);
2126 SetProperty(View.Property.OPACITY, new Tizen.NUI.PropertyValue(value));
2131 /// Sets the position of the view for X and Y.<br />
2132 /// By default, sets the position vector between the parent origin and the pivot point (default).<br />
2133 /// If the position inheritance is disabled, sets the world position.<br />
2135 /// <since_tizen> 3 </since_tizen>
2136 public Position2D Position2D
2140 Position temp = new Position(0.0f, 0.0f, 0.0f);
2141 GetProperty(View.Property.POSITION).Get(temp);
2142 return new Position2D(temp);
2146 SetProperty(View.Property.POSITION, new Tizen.NUI.PropertyValue(new Position(value)));
2151 /// Retrieves the screen postion of the view.<br />
2153 /// <since_tizen> 3 </since_tizen>
2154 public Vector2 ScreenPosition
2158 Vector2 temp = new Vector2(0.0f, 0.0f);
2159 GetProperty(View.Property.SCREEN_POSITION).Get(temp);
2165 /// Determines whether the pivot point should be used to determine the position of the view.
2166 /// This is true by default.
2168 /// <remarks>If false, then the top-left of the view is used for the position.
2169 /// Setting this to false will allow scaling or rotation around the anchor-point without affecting the view's position.
2171 /// <since_tizen> 3 </since_tizen>
2172 public bool PositionUsesPivotPoint
2177 GetProperty(View.Property.POSITION_USES_ANCHOR_POINT).Get(out temp);
2182 SetProperty(View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
2187 /// Please do not use! this will be deprecated.
2189 /// Please do not use! this will be deprecated!
2190 /// Instead please use PositionUsesPivotPoint.
2191 /// <since_tizen> 3 </since_tizen>
2192 [Obsolete("Please do not use! This will be deprecated! Please use PositionUsesPivotPoint instead! " +
2194 "View view = new View(); " +
2195 "view.PivotPoint = PivotPoint.Center; " +
2196 "view.PositionUsesPivotPoint = true;")]
2197 [EditorBrowsable(EditorBrowsableState.Never)]
2198 public bool PositionUsesAnchorPoint
2203 GetProperty(View.Property.POSITION_USES_ANCHOR_POINT).Get(out temp);
2208 SetProperty(View.Property.POSITION_USES_ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
2212 internal bool FocusState
2216 return IsKeyboardFocusable();
2220 SetKeyboardFocusable(value);
2225 /// Queries whether the view is connected to the stage.<br />
2226 /// When a view is connected, it will be directly or indirectly parented to the root view.<br />
2228 /// <since_tizen> 3 </since_tizen>
2229 public bool IsOnWindow
2238 /// Gets the depth in the hierarchy for the view.
2240 /// <since_tizen> 3 </since_tizen>
2241 public int HierarchyDepth
2245 return GetHierarchyDepth();
2250 /// Sets the sibling order of the view so the depth position can be defined within the same parent.
2253 /// Note the initial value is 0. SiblingOrder should be bigger than 0 or equal to 0.
2254 /// Raise, Lower, RaiseToTop, LowerToBottom, RaiseAbove, and LowerBelow will override the sibling order.
2255 /// The values set by this property will likely change.
2257 /// <since_tizen> 3 </since_tizen>
2258 public int SiblingOrder
2262 var parentChildren = GetParent()?.Children;
2263 int currentOrder = 0;
2264 if (parentChildren != null)
2266 currentOrder = parentChildren.IndexOf(this);
2268 if (currentOrder < 0)
2272 else if (currentOrder < parentChildren.Count)
2274 return currentOrder;
2284 NUILog.Error("SiblingOrder should be bigger than 0 or equal to 0.");
2287 var siblings = GetParent()?.Children;
2288 if (siblings != null)
2290 int currentOrder = siblings.IndexOf(this);
2291 if (value != currentOrder)
2297 else if (value < siblings.Count - 1)
2299 if (value > currentOrder)
2301 RaiseAbove(siblings[value]);
2305 LowerBelow(siblings[value]);
2318 /// Returns the natural size of the view.
2321 /// Deriving classes stipulate the natural size and by default a view has a zero natural size.
2323 /// /// Please do not use! this will be deprecated!
2324 /// Instead please use NaturalSize2D.
2325 /// <since_tizen> 3 </since_tizen>
2326 [Obsolete("Please do not use! This will be deprecated! Please use NaturalSize2D instead! " +
2328 "TextLabel label = new TextLabel(\"Hello World!\"); " +
2329 "Size2D size = label.NaturalSize2D;")]
2330 [EditorBrowsable(EditorBrowsableState.Never)]
2331 public Vector3 NaturalSize
2335 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetNaturalSize(swigCPtr), true);
2336 if (NDalicPINVOKE.SWIGPendingException.Pending)
2337 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2343 /// Returns the natural size (Size2D) of the view.
2346 /// Deriving classes stipulate the natural size and by default a view has a zero natural size.
2348 /// <since_tizen> 4 </since_tizen>
2349 public Size2D NaturalSize2D
2353 Vector3 temp = new Vector3(NDalicPINVOKE.Actor_GetNaturalSize(swigCPtr), true);
2354 if (NDalicPINVOKE.SWIGPendingException.Pending)
2355 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2357 return new Size2D((int)temp.Width, (int)temp.Height);
2365 /// This is an asynchronous method.
2367 /// <since_tizen> 3 </since_tizen>
2377 /// This is an asynchronous method.
2378 /// If the view is hidden, then the view and its children will not be rendered.
2379 /// 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.
2381 /// <since_tizen> 3 </since_tizen>
2387 internal void Raise()
2389 var parentChildren = GetParent()?.Children;
2391 if (parentChildren != null)
2393 int currentIndex = parentChildren.IndexOf(this);
2395 // If the view is not already the last item in the list.
2396 if (currentIndex >= 0 && currentIndex < parentChildren.Count -1)
2398 View temp = parentChildren[currentIndex + 1];
2399 parentChildren[currentIndex + 1] = this;
2400 parentChildren[currentIndex] = temp;
2402 NDalicPINVOKE.Raise(swigCPtr);
2403 if (NDalicPINVOKE.SWIGPendingException.Pending)
2404 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2410 internal void Lower()
2412 var parentChildren = GetParent()?.Children;
2414 if (parentChildren != null)
2416 int currentIndex = parentChildren.IndexOf(this);
2418 // If the view is not already the first item in the list.
2419 if (currentIndex > 0 && currentIndex < parentChildren.Count)
2421 View temp = parentChildren[currentIndex - 1];
2422 parentChildren[currentIndex - 1] = this;
2423 parentChildren[currentIndex] = temp;
2425 NDalicPINVOKE.Lower(swigCPtr);
2426 if (NDalicPINVOKE.SWIGPendingException.Pending)
2427 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2433 /// Raises the view above all other views.
2436 /// Sibling order of views within the parent will be updated automatically.
2437 /// Once a raise or lower API is used, that view will then have an exclusive sibling order independent of insertion.
2439 /// <since_tizen> 3 </since_tizen>
2440 public void RaiseToTop()
2442 var parentChildren = GetParent()?.Children;
2444 if (parentChildren != null)
2446 parentChildren.Remove(this);
2447 parentChildren.Add(this);
2449 NDalicPINVOKE.RaiseToTop(swigCPtr);
2450 if (NDalicPINVOKE.SWIGPendingException.Pending)
2451 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2457 /// Lowers the view to the bottom of all views.
2460 /// The sibling order of views within the parent will be updated automatically.
2461 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
2463 /// <since_tizen> 3 </since_tizen>
2464 public void LowerToBottom()
2466 var parentChildren = GetParent()?.Children;
2468 if (parentChildren != null)
2470 parentChildren.Remove(this);
2471 parentChildren.Insert(0, this);
2473 NDalicPINVOKE.LowerToBottom(swigCPtr);
2474 if (NDalicPINVOKE.SWIGPendingException.Pending)
2475 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2480 /// Queries if all resources required by a view are loaded and ready.
2482 /// <remarks>Most resources are only loaded when the control is placed on the stage.
2484 /// <since_tizen> 3 </since_tizen>
2485 public bool IsResourceReady()
2487 bool ret = NDalicPINVOKE.IsResourceReady(swigCPtr);
2488 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2493 /// Raises the view to above the target view.
2495 /// <remarks>The sibling order of views within the parent will be updated automatically.
2496 /// Views on the level above the target view will still be shown above this view.
2497 /// Raising this view above views with the same sibling order as each other will raise this view above them.
2498 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
2500 /// <param name="target">Will be raised above this view.</param>
2501 internal void RaiseAbove(View target)
2503 var parentChildren = GetParent()?.Children;
2505 if (parentChildren != null)
2507 int currentIndex = parentChildren.IndexOf(this);
2508 int targetIndex = parentChildren.IndexOf(target);
2510 if(currentIndex < 0 || targetIndex < 0 ||
2511 currentIndex >= parentChildren.Count || targetIndex >= parentChildren.Count)
2513 NUILog.Error("index should be bigger than 0 and less than children of layer count");
2516 // If the currentIndex is less than the target index and the target has the same parent.
2517 if (currentIndex < targetIndex)
2519 parentChildren.Remove(this);
2520 parentChildren.Insert(targetIndex, this);
2522 NDalicPINVOKE.RaiseAbove(swigCPtr, View.getCPtr(target));
2523 if (NDalicPINVOKE.SWIGPendingException.Pending)
2524 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2531 /// Lowers the view to below the target view.
2533 /// <remarks>The sibling order of views within the parent will be updated automatically.
2534 /// Lowering this view below views with the same sibling order as each other will lower this view above them.
2535 /// Once a raise or lower API is used that view will then have an exclusive sibling order independent of insertion.
2537 /// <param name="target">Will be lowered below this view.</param>
2538 internal void LowerBelow(View target)
2540 var parentChildren = GetParent()?.Children;
2542 if (parentChildren != null)
2544 int currentIndex = parentChildren.IndexOf(this);
2545 int targetIndex = parentChildren.IndexOf(target);
2546 if(currentIndex < 0 || targetIndex < 0 ||
2547 currentIndex >= parentChildren.Count ||targetIndex >= parentChildren.Count)
2549 NUILog.Error("index should be bigger than 0 and less than children of layer count");
2553 // If the currentIndex is not already the 0th index and the target has the same parent.
2554 if ((currentIndex != 0) && (targetIndex != -1) &&
2555 (currentIndex > targetIndex))
2557 parentChildren.Remove(this);
2558 parentChildren.Insert(targetIndex, this);
2560 NDalicPINVOKE.LowerBelow(swigCPtr, View.getCPtr(target));
2561 if (NDalicPINVOKE.SWIGPendingException.Pending)
2562 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2568 internal string GetName()
2570 string ret = NDalicPINVOKE.Actor_GetName(swigCPtr);
2571 if (NDalicPINVOKE.SWIGPendingException.Pending)
2572 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2576 internal void SetName(string name)
2578 NDalicPINVOKE.Actor_SetName(swigCPtr, name);
2579 if (NDalicPINVOKE.SWIGPendingException.Pending)
2580 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2583 internal uint GetId()
2585 uint ret = NDalicPINVOKE.Actor_GetId(swigCPtr);
2586 if (NDalicPINVOKE.SWIGPendingException.Pending)
2587 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2591 internal bool IsRoot()
2593 bool ret = NDalicPINVOKE.Actor_IsRoot(swigCPtr);
2594 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2598 internal bool OnWindow()
2600 bool ret = NDalicPINVOKE.Actor_OnStage(swigCPtr);
2601 if (NDalicPINVOKE.SWIGPendingException.Pending)
2602 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2607 /// Gets the parent layer of this view.If a view has no parent, this method does nothing.
2609 /// <pre>The view has been initialized. </pre>
2610 /// <returns>the parent layer of view </returns>
2611 /// <since_tizen> 5 </since_tizen>
2612 public Layer GetLayer()
2614 //to fix memory leak issue, match the handle count with native side.
2615 IntPtr cPtr = NDalicPINVOKE.Actor_GetLayer(swigCPtr);
2616 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
2617 Layer ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as Layer;
2618 NDalicPINVOKE.delete_BaseHandle(CPtr);
2619 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
2621 if (NDalicPINVOKE.SWIGPendingException.Pending)
2622 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2627 /// Removes a view from its parent view or layer. If a view has no parent, this method does nothing.
2629 /// <pre>The (child) view has been initialized. </pre>
2630 /// <since_tizen> 4 </since_tizen>
2631 public void Unparent()
2633 GetParent()?.Remove(this);
2637 /// Search through this view's hierarchy for a view with the given name.
2638 /// The view itself is also considered in the search.
2640 /// <pre>The view has been initialized.</pre>
2641 /// <param name="viewName">The name of the view to find.</param>
2642 /// <returns>A handle to the view if found, or an empty handle if not.</returns>
2643 /// <since_tizen> 3 </since_tizen>
2644 public View FindChildByName(string viewName)
2646 //to fix memory leak issue, match the handle count with native side.
2647 IntPtr cPtr = NDalicPINVOKE.Actor_FindChildByName(swigCPtr, viewName);
2648 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
2649 View ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as View;
2650 NDalicPINVOKE.delete_BaseHandle(CPtr);
2651 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
2653 if (NDalicPINVOKE.SWIGPendingException.Pending)
2654 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2658 internal View FindChildById(uint id)
2660 //to fix memory leak issue, match the handle count with native side.
2661 IntPtr cPtr = NDalicPINVOKE.Actor_FindChildById(swigCPtr, id);
2662 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
2663 View ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as View;
2664 NDalicPINVOKE.delete_BaseHandle(CPtr);
2665 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
2667 if (NDalicPINVOKE.SWIGPendingException.Pending)
2668 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2672 internal void SetParentOrigin(Vector3 origin)
2674 NDalicPINVOKE.Actor_SetParentOrigin(swigCPtr, Vector3.getCPtr(origin));
2675 if (NDalicPINVOKE.SWIGPendingException.Pending)
2676 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2679 internal Vector3 GetCurrentParentOrigin()
2681 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentParentOrigin(swigCPtr), true);
2682 if (NDalicPINVOKE.SWIGPendingException.Pending)
2683 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2687 internal void SetAnchorPoint(Vector3 anchorPoint)
2689 NDalicPINVOKE.Actor_SetAnchorPoint(swigCPtr, Vector3.getCPtr(anchorPoint));
2690 if (NDalicPINVOKE.SWIGPendingException.Pending)
2691 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2694 internal Vector3 GetCurrentAnchorPoint()
2696 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentAnchorPoint(swigCPtr), true);
2697 if (NDalicPINVOKE.SWIGPendingException.Pending)
2698 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2702 internal void SetSize(float width, float height)
2704 NDalicPINVOKE.Actor_SetSize__SWIG_0(swigCPtr, width, height);
2705 if (NDalicPINVOKE.SWIGPendingException.Pending)
2706 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2709 internal void SetSize(float width, float height, float depth)
2711 NDalicPINVOKE.Actor_SetSize__SWIG_1(swigCPtr, width, height, depth);
2712 if (NDalicPINVOKE.SWIGPendingException.Pending)
2713 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2716 internal void SetSize(Vector2 size)
2718 NDalicPINVOKE.Actor_SetSize__SWIG_2(swigCPtr, Vector2.getCPtr(size));
2719 if (NDalicPINVOKE.SWIGPendingException.Pending)
2720 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2723 internal void SetSize(Vector3 size)
2725 NDalicPINVOKE.Actor_SetSize__SWIG_3(swigCPtr, Vector3.getCPtr(size));
2726 if (NDalicPINVOKE.SWIGPendingException.Pending)
2727 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2730 internal Vector3 GetTargetSize()
2732 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetTargetSize(swigCPtr), true);
2733 if (NDalicPINVOKE.SWIGPendingException.Pending)
2734 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2738 internal Size2D GetCurrentSize()
2740 Size ret = new Size(NDalicPINVOKE.Actor_GetCurrentSize(swigCPtr), true);
2741 if (NDalicPINVOKE.SWIGPendingException.Pending)
2742 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2743 Size2D size = new Size2D((int)ret.Width, (int)ret.Height);
2747 internal Vector3 GetNaturalSize()
2749 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetNaturalSize(swigCPtr), true);
2750 if (NDalicPINVOKE.SWIGPendingException.Pending)
2751 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2755 internal void SetPosition(float x, float y)
2757 NDalicPINVOKE.Actor_SetPosition__SWIG_0(swigCPtr, x, y);
2758 if (NDalicPINVOKE.SWIGPendingException.Pending)
2759 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2762 internal void SetPosition(float x, float y, float z)
2764 NDalicPINVOKE.Actor_SetPosition__SWIG_1(swigCPtr, x, y, z);
2765 if (NDalicPINVOKE.SWIGPendingException.Pending)
2766 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2769 internal void SetPosition(Vector3 position)
2771 NDalicPINVOKE.Actor_SetPosition__SWIG_2(swigCPtr, Vector3.getCPtr(position));
2772 if (NDalicPINVOKE.SWIGPendingException.Pending)
2773 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2776 internal void SetX(float x)
2778 NDalicPINVOKE.Actor_SetX(swigCPtr, x);
2779 if (NDalicPINVOKE.SWIGPendingException.Pending)
2780 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2783 internal void SetY(float y)
2785 NDalicPINVOKE.Actor_SetY(swigCPtr, y);
2786 if (NDalicPINVOKE.SWIGPendingException.Pending)
2787 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2790 internal void SetZ(float z)
2792 NDalicPINVOKE.Actor_SetZ(swigCPtr, z);
2793 if (NDalicPINVOKE.SWIGPendingException.Pending)
2794 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2797 internal void TranslateBy(Vector3 distance)
2799 NDalicPINVOKE.Actor_TranslateBy(swigCPtr, Vector3.getCPtr(distance));
2800 if (NDalicPINVOKE.SWIGPendingException.Pending)
2801 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2804 internal Position GetCurrentPosition()
2806 Position ret = new Position(NDalicPINVOKE.Actor_GetCurrentPosition(swigCPtr), true);
2807 if (NDalicPINVOKE.SWIGPendingException.Pending)
2808 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2812 internal Vector3 GetCurrentWorldPosition()
2814 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentWorldPosition(swigCPtr), true);
2815 if (NDalicPINVOKE.SWIGPendingException.Pending)
2816 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2820 internal void SetInheritPosition(bool inherit)
2822 NDalicPINVOKE.Actor_SetInheritPosition(swigCPtr, inherit);
2823 if (NDalicPINVOKE.SWIGPendingException.Pending)
2824 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2827 internal bool IsPositionInherited()
2829 bool ret = NDalicPINVOKE.Actor_IsPositionInherited(swigCPtr);
2830 if (NDalicPINVOKE.SWIGPendingException.Pending)
2831 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2835 internal void SetOrientation(Degree angle, Vector3 axis)
2837 NDalicPINVOKE.Actor_SetOrientation__SWIG_0(swigCPtr, Degree.getCPtr(angle), Vector3.getCPtr(axis));
2838 if (NDalicPINVOKE.SWIGPendingException.Pending)
2839 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2842 internal void SetOrientation(Radian angle, Vector3 axis)
2844 NDalicPINVOKE.Actor_SetOrientation__SWIG_1(swigCPtr, Radian.getCPtr(angle), Vector3.getCPtr(axis));
2845 if (NDalicPINVOKE.SWIGPendingException.Pending)
2846 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2849 internal void SetOrientation(Rotation orientation)
2851 NDalicPINVOKE.Actor_SetOrientation__SWIG_2(swigCPtr, Rotation.getCPtr(orientation));
2852 if (NDalicPINVOKE.SWIGPendingException.Pending)
2853 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2856 internal void RotateBy(Degree angle, Vector3 axis)
2858 NDalicPINVOKE.Actor_RotateBy__SWIG_0(swigCPtr, Degree.getCPtr(angle), Vector3.getCPtr(axis));
2859 if (NDalicPINVOKE.SWIGPendingException.Pending)
2860 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2863 internal void RotateBy(Radian angle, Vector3 axis)
2865 NDalicPINVOKE.Actor_RotateBy__SWIG_1(swigCPtr, Radian.getCPtr(angle), Vector3.getCPtr(axis));
2866 if (NDalicPINVOKE.SWIGPendingException.Pending)
2867 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2870 internal void RotateBy(Rotation relativeRotation)
2872 NDalicPINVOKE.Actor_RotateBy__SWIG_2(swigCPtr, Rotation.getCPtr(relativeRotation));
2873 if (NDalicPINVOKE.SWIGPendingException.Pending)
2874 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2877 internal Rotation GetCurrentOrientation()
2879 Rotation ret = new Rotation(NDalicPINVOKE.Actor_GetCurrentOrientation(swigCPtr), true);
2880 if (NDalicPINVOKE.SWIGPendingException.Pending)
2881 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2885 internal void SetInheritOrientation(bool inherit)
2887 NDalicPINVOKE.Actor_SetInheritOrientation(swigCPtr, inherit);
2888 if (NDalicPINVOKE.SWIGPendingException.Pending)
2889 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2892 internal bool IsOrientationInherited()
2894 bool ret = NDalicPINVOKE.Actor_IsOrientationInherited(swigCPtr);
2895 if (NDalicPINVOKE.SWIGPendingException.Pending)
2896 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2900 internal Rotation GetCurrentWorldOrientation()
2902 Rotation ret = new Rotation(NDalicPINVOKE.Actor_GetCurrentWorldOrientation(swigCPtr), true);
2903 if (NDalicPINVOKE.SWIGPendingException.Pending)
2904 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2908 internal void SetScale(float scale)
2910 NDalicPINVOKE.Actor_SetScale__SWIG_0(swigCPtr, scale);
2911 if (NDalicPINVOKE.SWIGPendingException.Pending)
2912 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2915 internal void SetScale(float scaleX, float scaleY, float scaleZ)
2917 NDalicPINVOKE.Actor_SetScale__SWIG_1(swigCPtr, scaleX, scaleY, scaleZ);
2918 if (NDalicPINVOKE.SWIGPendingException.Pending)
2919 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2922 internal void SetScale(Vector3 scale)
2924 NDalicPINVOKE.Actor_SetScale__SWIG_2(swigCPtr, Vector3.getCPtr(scale));
2925 if (NDalicPINVOKE.SWIGPendingException.Pending)
2926 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2929 internal void ScaleBy(Vector3 relativeScale)
2931 NDalicPINVOKE.Actor_ScaleBy(swigCPtr, Vector3.getCPtr(relativeScale));
2932 if (NDalicPINVOKE.SWIGPendingException.Pending)
2933 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2936 internal Vector3 GetCurrentScale()
2938 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentScale(swigCPtr), true);
2939 if (NDalicPINVOKE.SWIGPendingException.Pending)
2940 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2944 internal Vector3 GetCurrentWorldScale()
2946 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetCurrentWorldScale(swigCPtr), true);
2947 if (NDalicPINVOKE.SWIGPendingException.Pending)
2948 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2952 internal void SetInheritScale(bool inherit)
2954 NDalicPINVOKE.Actor_SetInheritScale(swigCPtr, inherit);
2955 if (NDalicPINVOKE.SWIGPendingException.Pending)
2956 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2959 internal bool IsScaleInherited()
2961 bool ret = NDalicPINVOKE.Actor_IsScaleInherited(swigCPtr);
2962 if (NDalicPINVOKE.SWIGPendingException.Pending)
2963 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2967 internal Matrix GetCurrentWorldMatrix()
2969 Matrix ret = new Matrix(NDalicPINVOKE.Actor_GetCurrentWorldMatrix(swigCPtr), true);
2970 if (NDalicPINVOKE.SWIGPendingException.Pending)
2971 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2975 internal void SetVisible(bool visible)
2977 NDalicPINVOKE.Actor_SetVisible(swigCPtr, visible);
2978 if (NDalicPINVOKE.SWIGPendingException.Pending)
2979 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2982 internal bool IsVisible()
2984 bool ret = NDalicPINVOKE.Actor_IsVisible(swigCPtr);
2985 if (NDalicPINVOKE.SWIGPendingException.Pending)
2986 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2990 internal void SetOpacity(float opacity)
2992 NDalicPINVOKE.Actor_SetOpacity(swigCPtr, opacity);
2993 if (NDalicPINVOKE.SWIGPendingException.Pending)
2994 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
2997 internal float GetCurrentOpacity()
2999 float ret = NDalicPINVOKE.Actor_GetCurrentOpacity(swigCPtr);
3000 if (NDalicPINVOKE.SWIGPendingException.Pending)
3001 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3005 internal void SetColor(Vector4 color)
3007 NDalicPINVOKE.Actor_SetColor(swigCPtr, Vector4.getCPtr(color));
3008 if (NDalicPINVOKE.SWIGPendingException.Pending)
3009 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3012 internal Vector4 GetCurrentColor()
3014 Vector4 ret = new Vector4(NDalicPINVOKE.Actor_GetCurrentColor(swigCPtr), true);
3015 if (NDalicPINVOKE.SWIGPendingException.Pending)
3016 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3020 internal void SetColorMode(ColorMode colorMode)
3022 NDalicPINVOKE.Actor_SetColorMode(swigCPtr, (int)colorMode);
3023 if (NDalicPINVOKE.SWIGPendingException.Pending)
3024 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3027 internal ColorMode GetColorMode()
3029 ColorMode ret = (ColorMode)NDalicPINVOKE.Actor_GetColorMode(swigCPtr);
3030 if (NDalicPINVOKE.SWIGPendingException.Pending)
3031 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3035 internal Vector4 GetCurrentWorldColor()
3037 Vector4 ret = new Vector4(NDalicPINVOKE.Actor_GetCurrentWorldColor(swigCPtr), true);
3038 if (NDalicPINVOKE.SWIGPendingException.Pending)
3039 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3043 internal void SetDrawMode(DrawModeType drawMode)
3045 NDalicPINVOKE.Actor_SetDrawMode(swigCPtr, (int)drawMode);
3046 if (NDalicPINVOKE.SWIGPendingException.Pending)
3047 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3050 internal DrawModeType GetDrawMode()
3052 DrawModeType ret = (DrawModeType)NDalicPINVOKE.Actor_GetDrawMode(swigCPtr);
3053 if (NDalicPINVOKE.SWIGPendingException.Pending)
3054 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3059 /// Converts screen coordinates into the view's coordinate system using the default camera.
3061 /// <pre>The view has been initialized.</pre>
3062 /// <remarks>The view coordinates are relative to the top-left(0.0, 0.0, 0.5).</remarks>
3063 /// <param name="localX">On return, the X-coordinate relative to the view.</param>
3064 /// <param name="localY">On return, the Y-coordinate relative to the view.</param>
3065 /// <param name="screenX">The screen X-coordinate.</param>
3066 /// <param name="screenY">The screen Y-coordinate.</param>
3067 /// <returns>True if the conversion succeeded.</returns>
3068 /// <since_tizen> 3 </since_tizen>
3069 public bool ScreenToLocal(out float localX, out float localY, float screenX, float screenY)
3071 bool ret = NDalicPINVOKE.Actor_ScreenToLocal(swigCPtr, out localX, out localY, screenX, screenY);
3072 if (NDalicPINVOKE.SWIGPendingException.Pending)
3073 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3077 internal void SetKeyboardFocusable(bool focusable)
3079 NDalicPINVOKE.Actor_SetKeyboardFocusable(swigCPtr, focusable);
3080 if (NDalicPINVOKE.SWIGPendingException.Pending)
3081 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3084 internal bool IsKeyboardFocusable()
3086 bool ret = NDalicPINVOKE.Actor_IsKeyboardFocusable(swigCPtr);
3087 if (NDalicPINVOKE.SWIGPendingException.Pending)
3088 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3092 internal void SetResizePolicy(ResizePolicyType policy, DimensionType dimension)
3094 NDalicPINVOKE.Actor_SetResizePolicy(swigCPtr, (int)policy, (int)dimension);
3095 if (NDalicPINVOKE.SWIGPendingException.Pending)
3096 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3099 internal ResizePolicyType GetResizePolicy(DimensionType dimension)
3101 ResizePolicyType ret = (ResizePolicyType)NDalicPINVOKE.Actor_GetResizePolicy(swigCPtr, (int)dimension);
3102 if (NDalicPINVOKE.SWIGPendingException.Pending)
3103 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3108 /// Sets the relative to parent size factor of the view.<br />
3109 /// This factor is only used when ResizePolicy is set to either:
3110 /// ResizePolicy::SIZE_RELATIVE_TO_PARENT or ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT.<br />
3111 /// This view's size is set to the view's size multiplied by or added to this factor, depending on ResizePolicy.<br />
3113 /// <pre>The view has been initialized.</pre>
3114 /// <param name="factor">A Vector3 representing the relative factor to be applied to each axis.</param>
3115 /// <since_tizen> 3 </since_tizen>
3116 public void SetSizeModeFactor(Vector3 factor)
3118 NDalicPINVOKE.Actor_SetSizeModeFactor(swigCPtr, Vector3.getCPtr(factor));
3119 if (NDalicPINVOKE.SWIGPendingException.Pending)
3120 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3123 internal Vector3 GetSizeModeFactor()
3125 Vector3 ret = new Vector3(NDalicPINVOKE.Actor_GetSizeModeFactor(swigCPtr), true);
3126 if (NDalicPINVOKE.SWIGPendingException.Pending)
3127 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3132 /// Calculates the height of the view given a width.<br />
3133 /// The natural size is used for default calculation.<br />
3134 /// Size 0 is treated as aspect ratio 1:1.<br />
3136 /// <param name="width">The width to use.</param>
3137 /// <returns>The height based on the width.</returns>
3138 /// <since_tizen> 3 </since_tizen>
3139 public float GetHeightForWidth(float width)
3141 float ret = NDalicPINVOKE.Actor_GetHeightForWidth(swigCPtr, width);
3142 if (NDalicPINVOKE.SWIGPendingException.Pending)
3143 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3148 /// Calculates the width of the view given a height.<br />
3149 /// The natural size is used for default calculation.<br />
3150 /// Size 0 is treated as aspect ratio 1:1.<br />
3152 /// <param name="height">The height to use.</param>
3153 /// <returns>The width based on the height.</returns>
3154 /// <since_tizen> 3 </since_tizen>
3155 public float GetWidthForHeight(float height)
3157 float ret = NDalicPINVOKE.Actor_GetWidthForHeight(swigCPtr, height);
3158 if (NDalicPINVOKE.SWIGPendingException.Pending)
3159 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3164 /// Return the amount of size allocated for relayout.
3166 /// <param name="dimension">The dimension to retrieve.</param>
3167 /// <returns>Return the size.</returns>
3168 /// <since_tizen> 3 </since_tizen>
3169 public float GetRelayoutSize(DimensionType dimension)
3171 float ret = NDalicPINVOKE.Actor_GetRelayoutSize(swigCPtr, (int)dimension);
3172 if (NDalicPINVOKE.SWIGPendingException.Pending)
3173 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3178 /// Set the padding for the view.
3180 /// <param name="padding">Padding for the view.</param>
3181 /// <since_tizen> 3 </since_tizen>
3182 public void SetPadding(PaddingType padding)
3184 NDalicPINVOKE.Actor_SetPadding(swigCPtr, PaddingType.getCPtr(padding));
3185 if (NDalicPINVOKE.SWIGPendingException.Pending)
3186 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3190 /// Return the value of padding for the view.
3192 /// <param name="paddingOut">the value of padding for the view</param>
3193 /// <since_tizen> 3 </since_tizen>
3194 public void GetPadding(PaddingType paddingOut)
3196 NDalicPINVOKE.Actor_GetPadding(swigCPtr, PaddingType.getCPtr(paddingOut));
3197 if (NDalicPINVOKE.SWIGPendingException.Pending)
3198 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3201 internal void SetMinimumSize(Vector2 size)
3203 NDalicPINVOKE.Actor_SetMinimumSize(swigCPtr, Vector2.getCPtr(size));
3204 if (NDalicPINVOKE.SWIGPendingException.Pending)
3205 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3208 internal Vector2 GetMinimumSize()
3210 Vector2 ret = new Vector2(NDalicPINVOKE.Actor_GetMinimumSize(swigCPtr), true);
3211 if (NDalicPINVOKE.SWIGPendingException.Pending)
3212 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3216 internal void SetMaximumSize(Vector2 size)
3218 NDalicPINVOKE.Actor_SetMaximumSize(swigCPtr, Vector2.getCPtr(size));
3219 if (NDalicPINVOKE.SWIGPendingException.Pending)
3220 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3223 internal Vector2 GetMaximumSize()
3225 Vector2 ret = new Vector2(NDalicPINVOKE.Actor_GetMaximumSize(swigCPtr), true);
3226 if (NDalicPINVOKE.SWIGPendingException.Pending)
3227 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3231 internal int GetHierarchyDepth()
3233 int ret = NDalicPINVOKE.Actor_GetHierarchyDepth(swigCPtr);
3234 if (NDalicPINVOKE.SWIGPendingException.Pending)
3235 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3239 /// <since_tizen> 3 </since_tizen>
3240 public uint AddRenderer(Renderer renderer)
3242 uint ret = NDalicPINVOKE.Actor_AddRenderer(swigCPtr, Renderer.getCPtr(renderer));
3243 if (NDalicPINVOKE.SWIGPendingException.Pending)
3244 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3248 internal uint GetRendererCount()
3250 uint ret = NDalicPINVOKE.Actor_GetRendererCount(swigCPtr);
3251 if (NDalicPINVOKE.SWIGPendingException.Pending)
3252 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3256 /// <since_tizen> 3 </since_tizen>
3257 public Renderer GetRendererAt(uint index)
3259 //to fix memory leak issue, match the handle count with native side.
3260 IntPtr cPtr = NDalicPINVOKE.Actor_GetRendererAt(swigCPtr, index);
3261 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
3262 Renderer ret = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle) as Renderer;
3263 NDalicPINVOKE.delete_BaseHandle(CPtr);
3264 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
3266 if (NDalicPINVOKE.SWIGPendingException.Pending)
3267 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3271 /// <since_tizen> 3 </since_tizen>
3272 public void RemoveRenderer(Renderer renderer)
3274 NDalicPINVOKE.Actor_RemoveRenderer__SWIG_0(swigCPtr, Renderer.getCPtr(renderer));
3275 if (NDalicPINVOKE.SWIGPendingException.Pending)
3276 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3279 /// <since_tizen> 3 </since_tizen>
3280 public void RemoveRenderer(uint index)
3282 NDalicPINVOKE.Actor_RemoveRenderer__SWIG_1(swigCPtr, index);
3283 if (NDalicPINVOKE.SWIGPendingException.Pending)
3284 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3287 internal TouchDataSignal TouchSignal()
3289 TouchDataSignal ret = new TouchDataSignal(NDalicPINVOKE.Actor_TouchSignal(swigCPtr), false);
3290 if (NDalicPINVOKE.SWIGPendingException.Pending)
3291 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3295 internal HoverSignal HoveredSignal()
3297 HoverSignal ret = new HoverSignal(NDalicPINVOKE.Actor_HoveredSignal(swigCPtr), false);
3298 if (NDalicPINVOKE.SWIGPendingException.Pending)
3299 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3303 internal WheelSignal WheelEventSignal()
3305 WheelSignal ret = new WheelSignal(NDalicPINVOKE.Actor_WheelEventSignal(swigCPtr), false);
3306 if (NDalicPINVOKE.SWIGPendingException.Pending)
3307 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3311 internal ViewSignal OnWindowSignal()
3313 ViewSignal ret = new ViewSignal(NDalicPINVOKE.Actor_OnStageSignal(swigCPtr), false);
3314 if (NDalicPINVOKE.SWIGPendingException.Pending)
3315 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3319 internal ViewSignal OffWindowSignal()
3321 ViewSignal ret = new ViewSignal(NDalicPINVOKE.Actor_OffStageSignal(swigCPtr), false);
3322 if (NDalicPINVOKE.SWIGPendingException.Pending)
3323 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3327 internal ViewSignal OnRelayoutSignal()
3329 ViewSignal ret = new ViewSignal(NDalicPINVOKE.Actor_OnRelayoutSignal(swigCPtr), false);
3330 if (NDalicPINVOKE.SWIGPendingException.Pending)
3331 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3335 internal ViewVisibilityChangedSignal VisibilityChangedSignal(View view)
3337 ViewVisibilityChangedSignal ret = new ViewVisibilityChangedSignal(NDalicPINVOKE.VisibilityChangedSignal(View.getCPtr(view)), false);
3338 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3343 internal ViewLayoutDirectionChangedSignal LayoutDirectionChangedSignal(View view)
3345 ViewLayoutDirectionChangedSignal ret = new ViewLayoutDirectionChangedSignal(NDalicManualPINVOKE.LayoutDirectionChangedSignal(View.getCPtr(view)), false);
3346 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3351 internal ViewSignal ResourcesLoadedSignal()
3353 ViewSignal ret = new ViewSignal(NDalicPINVOKE.ResourceReadySignal(swigCPtr), false);
3354 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
3359 /// Gets or sets the origin of a view within its parent's area.<br />
3360 /// 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 />
3361 /// The default parent-origin is ParentOrigin.TopLeft (0.0, 0.0, 0.5).<br />
3362 /// A view's position is the distance between this origin and the view's anchor-point.<br />
3364 /// <pre>The view has been initialized.</pre>
3365 /// <since_tizen> 3 </since_tizen>
3366 public Position ParentOrigin
3370 Position temp = new Position(0.0f, 0.0f, 0.0f);
3371 GetProperty(View.Property.PARENT_ORIGIN).Get(temp);
3376 SetProperty(View.Property.PARENT_ORIGIN, new Tizen.NUI.PropertyValue(value));
3380 internal float ParentOriginX
3385 GetProperty(View.Property.PARENT_ORIGIN_X).Get(out temp);
3390 SetProperty(View.Property.PARENT_ORIGIN_X, new Tizen.NUI.PropertyValue(value));
3394 internal float ParentOriginY
3399 GetProperty(View.Property.PARENT_ORIGIN_Y).Get(out temp);
3404 SetProperty(View.Property.PARENT_ORIGIN_Y, new Tizen.NUI.PropertyValue(value));
3408 internal float ParentOriginZ
3413 GetProperty(View.Property.PARENT_ORIGIN_Z).Get(out temp);
3418 SetProperty(View.Property.PARENT_ORIGIN_Z, new Tizen.NUI.PropertyValue(value));
3423 /// Gets or sets the anchor-point of a view.<br />
3424 /// 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 />
3425 /// The default pivot point is PivotPoint.Center (0.5, 0.5, 0.5).<br />
3426 /// A view position is the distance between its parent-origin and this anchor-point.<br />
3427 /// A view's orientation is the rotation from its default orientation, the rotation is centered around its anchor-point.<br />
3428 /// <pre>The view has been initialized.</pre>
3430 /// <since_tizen> 3 </since_tizen>
3431 public Position PivotPoint
3435 Position temp = new Position(0.0f, 0.0f, 0.0f);
3436 GetProperty(View.Property.ANCHOR_POINT).Get(temp);
3441 SetProperty(View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
3445 internal float PivotPointX
3450 GetProperty(View.Property.ANCHOR_POINT_X).Get(out temp);
3455 SetProperty(View.Property.ANCHOR_POINT_X, new Tizen.NUI.PropertyValue(value));
3459 internal float PivotPointY
3464 GetProperty(View.Property.ANCHOR_POINT_Y).Get(out temp);
3469 SetProperty(View.Property.ANCHOR_POINT_Y, new Tizen.NUI.PropertyValue(value));
3473 internal float PivotPointZ
3478 GetProperty(View.Property.ANCHOR_POINT_Z).Get(out temp);
3483 SetProperty(View.Property.ANCHOR_POINT_Z, new Tizen.NUI.PropertyValue(value));
3488 /// Gets or sets the size width of the view.
3490 /// <since_tizen> 3 </since_tizen>
3491 public float SizeWidth
3496 GetProperty(View.Property.SIZE_WIDTH).Get(out temp);
3501 SetProperty(View.Property.SIZE_WIDTH, new Tizen.NUI.PropertyValue(value));
3506 /// Gets or sets the size height of the view.
3508 /// <since_tizen> 3 </since_tizen>
3509 public float SizeHeight
3514 GetProperty(View.Property.SIZE_HEIGHT).Get(out temp);
3519 SetProperty(View.Property.SIZE_HEIGHT, new Tizen.NUI.PropertyValue(value));
3524 /// Gets or sets the position of the view.<br />
3525 /// By default, sets the position vector between the parent origin and pivot point (default).<br />
3526 /// If the position inheritance is disabled, sets the world position.<br />
3528 /// <since_tizen> 3 </since_tizen>
3529 public Position Position
3533 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
3534 GetProperty(View.Property.POSITION).Get(temp);
3539 SetProperty(View.Property.POSITION, new Tizen.NUI.PropertyValue(value));
3544 /// Gets or sets the position X of the view.
3546 /// <since_tizen> 3 </since_tizen>
3547 public float PositionX
3552 GetProperty(View.Property.POSITION_X).Get(out temp);
3557 SetProperty(View.Property.POSITION_X, new Tizen.NUI.PropertyValue(value));
3562 /// Gets or sets the position Y of the view.
3564 /// <since_tizen> 3 </since_tizen>
3565 public float PositionY
3570 GetProperty(View.Property.POSITION_Y).Get(out temp);
3575 SetProperty(View.Property.POSITION_Y, new Tizen.NUI.PropertyValue(value));
3580 /// Gets or sets the position Z of the view.
3582 /// <since_tizen> 3 </since_tizen>
3583 public float PositionZ
3588 GetProperty(View.Property.POSITION_Z).Get(out temp);
3593 SetProperty(View.Property.POSITION_Z, new Tizen.NUI.PropertyValue(value));
3598 /// Gets or sets the world position of the view.
3600 /// <since_tizen> 3 </since_tizen>
3601 public Vector3 WorldPosition
3605 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
3606 GetProperty(View.Property.WORLD_POSITION).Get(temp);
3611 internal float WorldPositionX
3616 GetProperty(View.Property.WORLD_POSITION_X).Get(out temp);
3621 internal float WorldPositionY
3626 GetProperty(View.Property.WORLD_POSITION_Y).Get(out temp);
3631 internal float WorldPositionZ
3636 GetProperty(View.Property.WORLD_POSITION_Z).Get(out temp);
3642 /// Gets or sets the orientation of the view.<br />
3643 /// The view's orientation is the rotation from its default orientation, and the rotation is centered around its anchor-point.<br />
3645 /// <remarks>This is an asynchronous method.</remarks>
3646 /// <since_tizen> 3 </since_tizen>
3647 public Rotation Orientation
3651 Rotation temp = new Rotation();
3652 GetProperty(View.Property.ORIENTATION).Get(temp);
3657 SetProperty(View.Property.ORIENTATION, new Tizen.NUI.PropertyValue(value));
3662 /// Gets or sets the world orientation of the view.<br />
3664 /// <since_tizen> 3 </since_tizen>
3665 public Rotation WorldOrientation
3669 Rotation temp = new Rotation();
3670 GetProperty(View.Property.WORLD_ORIENTATION).Get(temp);
3676 /// Gets or sets the scale factor applied to the view.<br />
3678 /// <since_tizen> 3 </since_tizen>
3679 public Vector3 Scale
3683 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
3684 GetProperty(View.Property.SCALE).Get(temp);
3689 SetProperty(View.Property.SCALE, new Tizen.NUI.PropertyValue(value));
3694 /// Gets or sets the scale X factor applied to the view.
3696 /// <since_tizen> 3 </since_tizen>
3702 GetProperty(View.Property.SCALE_X).Get(out temp);
3707 SetProperty(View.Property.SCALE_X, new Tizen.NUI.PropertyValue(value));
3712 /// Gets or sets the scale Y factor applied to the view.
3714 /// <since_tizen> 3 </since_tizen>
3720 GetProperty(View.Property.SCALE_Y).Get(out temp);
3725 SetProperty(View.Property.SCALE_Y, new Tizen.NUI.PropertyValue(value));
3730 /// Gets or sets the scale Z factor applied to the view.
3732 /// <since_tizen> 3 </since_tizen>
3738 GetProperty(View.Property.SCALE_Z).Get(out temp);
3743 SetProperty(View.Property.SCALE_Z, new Tizen.NUI.PropertyValue(value));
3748 /// Gets the world scale of the view.
3750 /// <since_tizen> 3 </since_tizen>
3751 public Vector3 WorldScale
3755 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
3756 GetProperty(View.Property.WORLD_SCALE).Get(temp);
3762 /// Retrieves the visibility flag of the view.
3765 /// If the view is not visible, then the view and its children will not be rendered.
3766 /// 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.
3768 /// <since_tizen> 3 </since_tizen>
3769 public bool Visibility
3774 GetProperty(View.Property.VISIBLE).Get(out temp);
3780 /// Gets the view's world color.
3782 /// <since_tizen> 3 </since_tizen>
3783 public Vector4 WorldColor
3787 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
3788 GetProperty(View.Property.WORLD_COLOR).Get(temp);
3793 internal Matrix WorldMatrix
3797 Matrix temp = new Matrix();
3798 GetProperty(View.Property.WORLD_MATRIX).Get(temp);
3804 /// Gets or sets the view's name.
3806 /// <since_tizen> 3 </since_tizen>
3812 GetProperty(View.Property.NAME).Get(out temp);
3817 SetProperty(View.Property.NAME, new Tizen.NUI.PropertyValue(value));
3822 /// Get the number of children held by the view.
3824 /// <since_tizen> 3 </since_tizen>
3825 public new uint ChildCount
3829 return GetChildCount();
3834 /// Gets the view's ID.
3837 /// <since_tizen> 3 </since_tizen>
3847 /// Gets or sets the status of whether the view should emit touch or hover signals.
3849 /// <since_tizen> 3 </since_tizen>
3850 public bool Sensitive
3855 GetProperty(View.Property.SENSITIVE).Get(out temp);
3860 SetProperty(View.Property.SENSITIVE, new Tizen.NUI.PropertyValue(value));
3865 /// 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.
3867 /// <since_tizen> 3 </since_tizen>
3868 public bool LeaveRequired
3873 GetProperty(View.Property.LEAVE_REQUIRED).Get(out temp);
3878 SetProperty(View.Property.LEAVE_REQUIRED, new Tizen.NUI.PropertyValue(value));
3883 /// Gets or sets the status of whether a child view inherits it's parent's orientation.
3885 /// <since_tizen> 3 </since_tizen>
3886 public bool InheritOrientation
3891 GetProperty(View.Property.INHERIT_ORIENTATION).Get(out temp);
3896 SetProperty(View.Property.INHERIT_ORIENTATION, new Tizen.NUI.PropertyValue(value));
3901 /// Gets or sets the status of whether a child view inherits it's parent's scale.
3903 /// <since_tizen> 3 </since_tizen>
3904 public bool InheritScale
3909 GetProperty(View.Property.INHERIT_SCALE).Get(out temp);
3914 SetProperty(View.Property.INHERIT_SCALE, new Tizen.NUI.PropertyValue(value));
3919 /// Gets or sets the status of how the view and its children should be drawn.<br />
3920 /// Not all views are renderable, but DrawMode can be inherited from any view.<br />
3921 /// 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 />
3922 /// If DrawMode.Overlay2D is used, the view and its children will be drawn as a 2D overlay.<br />
3923 /// Overlay views are drawn in a separate pass, after all non-overlay views within the layer.<br />
3924 /// For overlay views, the drawing order is with respect to tree levels of views, and depth-testing will not be used.<br />
3926 /// <since_tizen> 3 </since_tizen>
3927 public DrawModeType DrawMode
3932 if (GetProperty(View.Property.DRAW_MODE).Get(out temp) == false)
3934 NUILog.Error("DrawMode get error!");
3939 return DrawModeType.Normal;
3941 return DrawModeType.Overlay2D;
3943 return DrawModeType.Stencil;
3945 return DrawModeType.Normal;
3950 SetProperty(View.Property.DRAW_MODE, new Tizen.NUI.PropertyValue((int)value));
3955 /// Gets or sets the relative to parent size factor of the view.<br />
3956 /// This factor is only used when ResizePolicyType is set to either: ResizePolicyType.SizeRelativeToParent or ResizePolicyType.SizeFixedOffsetFromParent.<br />
3957 /// This view's size is set to the view's size multiplied by or added to this factor, depending on ResizePolicyType.<br />
3959 /// <since_tizen> 3 </since_tizen>
3960 public Vector3 SizeModeFactor
3964 Vector3 temp = new Vector3(0.0f, 0.0f, 0.0f);
3965 GetProperty(View.Property.SIZE_MODE_FACTOR).Get(temp);
3970 SetProperty(View.Property.SIZE_MODE_FACTOR, new Tizen.NUI.PropertyValue(value));
3975 /// Gets or sets the width resize policy to be used.
3977 /// <since_tizen> 3 </since_tizen>
3978 public ResizePolicyType WidthResizePolicy
3983 if (GetProperty(View.Property.WIDTH_RESIZE_POLICY).Get(out temp) == false)
3985 NUILog.Error("WidthResizePolicy get error!");
3990 return ResizePolicyType.Fixed;
3991 case "USE_NATURAL_SIZE":
3992 return ResizePolicyType.UseNaturalSize;
3993 case "FILL_TO_PARENT":
3994 return ResizePolicyType.FillToParent;
3995 case "SIZE_RELATIVE_TO_PARENT":
3996 return ResizePolicyType.SizeRelativeToParent;
3997 case "SIZE_FIXED_OFFSET_FROM_PARENT":
3998 return ResizePolicyType.SizeFixedOffsetFromParent;
3999 case "FIT_TO_CHILDREN":
4000 return ResizePolicyType.FitToChildren;
4001 case "DIMENSION_DEPENDENCY":
4002 return ResizePolicyType.DimensionDependency;
4003 case "USE_ASSIGNED_SIZE":
4004 return ResizePolicyType.UseAssignedSize;
4006 return ResizePolicyType.Fixed;
4011 SetProperty(View.Property.WIDTH_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)value));
4016 /// Gets or sets the height resize policy to be used.
4018 /// <since_tizen> 3 </since_tizen>
4019 public ResizePolicyType HeightResizePolicy
4024 if (GetProperty(View.Property.HEIGHT_RESIZE_POLICY).Get(out temp) == false)
4026 NUILog.Error("HeightResizePolicy get error!");
4031 return ResizePolicyType.Fixed;
4032 case "USE_NATURAL_SIZE":
4033 return ResizePolicyType.UseNaturalSize;
4034 case "FILL_TO_PARENT":
4035 return ResizePolicyType.FillToParent;
4036 case "SIZE_RELATIVE_TO_PARENT":
4037 return ResizePolicyType.SizeRelativeToParent;
4038 case "SIZE_FIXED_OFFSET_FROM_PARENT":
4039 return ResizePolicyType.SizeFixedOffsetFromParent;
4040 case "FIT_TO_CHILDREN":
4041 return ResizePolicyType.FitToChildren;
4042 case "DIMENSION_DEPENDENCY":
4043 return ResizePolicyType.DimensionDependency;
4044 case "USE_ASSIGNED_SIZE":
4045 return ResizePolicyType.UseAssignedSize;
4047 return ResizePolicyType.Fixed;
4052 SetProperty(View.Property.HEIGHT_RESIZE_POLICY, new Tizen.NUI.PropertyValue((int)value));
4057 /// Gets or sets the policy to use when setting size with size negotiation.<br />
4058 /// Defaults to SizeScalePolicyType.UseSizeSet.<br />
4060 /// <since_tizen> 3 </since_tizen>
4061 public SizeScalePolicyType SizeScalePolicy
4066 if (GetProperty(View.Property.SIZE_SCALE_POLICY).Get(out temp) == false)
4068 NUILog.Error("SizeScalePolicy get error!");
4072 case "USE_SIZE_SET":
4073 return SizeScalePolicyType.UseSizeSet;
4074 case "FIT_WITH_ASPECT_RATIO":
4075 return SizeScalePolicyType.FitWithAspectRatio;
4076 case "FILL_WITH_ASPECT_RATIO":
4077 return SizeScalePolicyType.FillWithAspectRatio;
4079 return SizeScalePolicyType.UseSizeSet;
4084 string valueToString = "";
4087 case SizeScalePolicyType.UseSizeSet:
4089 valueToString = "USE_SIZE_SET";
4092 case SizeScalePolicyType.FitWithAspectRatio:
4094 valueToString = "FIT_WITH_ASPECT_RATIO";
4097 case SizeScalePolicyType.FillWithAspectRatio:
4099 valueToString = "FILL_WITH_ASPECT_RATIO";
4104 valueToString = "USE_SIZE_SET";
4108 SetProperty(View.Property.SIZE_SCALE_POLICY, new Tizen.NUI.PropertyValue(valueToString));
4113 /// Gets or sets the status of whether the width size is dependent on the height size.
4115 /// <since_tizen> 3 </since_tizen>
4116 public bool WidthForHeight
4121 GetProperty(View.Property.WIDTH_FOR_HEIGHT).Get(out temp);
4126 SetProperty(View.Property.WIDTH_FOR_HEIGHT, new Tizen.NUI.PropertyValue(value));
4131 /// Gets or sets the status of whether the height size is dependent on the width size.
4133 /// <since_tizen> 3 </since_tizen>
4134 public bool HeightForWidth
4139 GetProperty(View.Property.HEIGHT_FOR_WIDTH).Get(out temp);
4144 SetProperty(View.Property.HEIGHT_FOR_WIDTH, new Tizen.NUI.PropertyValue(value));
4149 /// Gets or sets the padding for use in layout.
4151 /// <since_tizen> 5 </since_tizen>
4152 public Extents Padding
4156 Extents temp = new Extents(0, 0, 0, 0);
4157 GetProperty(View.Property.PADDING).Get(temp);
4162 SetProperty(View.Property.PADDING, new Tizen.NUI.PropertyValue(value));
4167 /// Gets or sets the minimum size the view can be assigned in size negotiation.
4169 /// <since_tizen> 3 </since_tizen>
4170 public Size2D MinimumSize
4174 Size2D temp = new Size2D(0, 0);
4175 GetProperty(View.Property.MINIMUM_SIZE).Get(temp);
4180 SetProperty(View.Property.MINIMUM_SIZE, new Tizen.NUI.PropertyValue(value));
4185 /// Gets or sets the maximum size the view can be assigned in size negotiation.
4187 /// <since_tizen> 3 </since_tizen>
4188 public Size2D MaximumSize
4192 Size2D temp = new Size2D(0, 0);
4193 GetProperty(View.Property.MAXIMUM_SIZE).Get(temp);
4198 SetProperty(View.Property.MAXIMUM_SIZE, new Tizen.NUI.PropertyValue(value));
4203 /// Gets or sets whether a child view inherits it's parent's position.<br />
4204 /// Default is to inherit.<br />
4205 /// 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 />
4207 /// <since_tizen> 3 </since_tizen>
4208 public bool InheritPosition
4213 GetProperty(View.Property.INHERIT_POSITION).Get(out temp);
4218 SetProperty(View.Property.INHERIT_POSITION, new Tizen.NUI.PropertyValue(value));
4223 /// Gets or sets the clipping behavior (mode) of it's children.
4225 /// <since_tizen> 3 </since_tizen>
4226 public ClippingModeType ClippingMode
4231 if (GetProperty(View.Property.CLIPPING_MODE).Get(out temp) == false)
4233 NUILog.Error("ClippingMode get error!");
4238 return ClippingModeType.Disabled;
4239 case "CLIP_CHILDREN":
4240 return ClippingModeType.ClipChildren;
4241 case "CLIP_TO_BOUNDING_BOX":
4242 return ClippingModeType.ClipToBoundingBox;
4244 return ClippingModeType.Disabled;
4249 SetProperty(View.Property.CLIPPING_MODE, new Tizen.NUI.PropertyValue((int)value));
4254 /// Gets the number of renderers held by the view.
4256 /// <since_tizen> 3 </since_tizen>
4257 public uint RendererCount
4261 return GetRendererCount();
4266 /// [Obsolete("Please do not use! this will be deprecated")]
4268 /// <since_tizen> 3 </since_tizen>
4269 /// Please do not use! this will be deprecated!
4270 /// Instead please use PivotPoint.
4271 [Obsolete("Please do not use! This will be deprecated! Please use PivotPoint instead! " +
4273 "View view = new View(); " +
4274 "view.PivotPoint = PivotPoint.Center; " +
4275 "view.PositionUsesPivotPoint = true;")]
4276 [EditorBrowsable(EditorBrowsableState.Never)]
4277 public Position AnchorPoint
4281 Position temp = new Position(0.0f, 0.0f, 0.0f);
4282 GetProperty(View.Property.ANCHOR_POINT).Get(temp);
4287 SetProperty(View.Property.ANCHOR_POINT, new Tizen.NUI.PropertyValue(value));
4292 /// [Obsolete("Please do not use! this will be deprecated")]
4294 /// <since_tizen> 3 </since_tizen>
4295 [Obsolete("Please do not use! This will be deprecated! Please use Size2D instead! " +
4297 "View view = new View(); " +
4298 "view.Size2D = new Size2D(100, 100);")]
4299 [EditorBrowsable(EditorBrowsableState.Never)]
4304 Size temp = new Size(0.0f, 0.0f, 0.0f);
4305 GetProperty(View.Property.SIZE).Get(temp);
4310 SetProperty(View.Property.SIZE, new Tizen.NUI.PropertyValue(value));
4315 /// "Please DO NOT use! This will be deprecated! Please use 'Container GetParent() for derived class' instead!"
4317 /// <since_tizen> 3 </since_tizen>
4318 [Obsolete("Please do not use! This will be deprecated! Please use 'Container GetParent() for derived class' instead! " +
4320 "Container parent = view.GetParent(); " +
4321 "View view = parent as View;")]
4322 [EditorBrowsable(EditorBrowsableState.Never)]
4323 public new View Parent
4328 IntPtr cPtr = NDalicPINVOKE.Actor_GetParent(swigCPtr);
4329 HandleRef CPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
4330 BaseHandle basehandle = Registry.GetManagedBaseHandleFromNativePtr(CPtr.Handle);
4331 NDalicPINVOKE.delete_BaseHandle(CPtr);
4332 CPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
4334 if (basehandle is Layer)
4336 ret = new View(cPtr, false);
4340 ret = basehandle as View;
4343 if (NDalicPINVOKE.SWIGPendingException.Pending)
4344 throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4350 /// Gets/Sets whether inherit parent's the layout Direction.
4352 /// <since_tizen> 4 </since_tizen>
4353 public bool InheritLayoutDirection
4358 GetProperty(View.Property.INHERIT_LAYOUT_DIRECTION).Get(out temp);
4363 SetProperty(View.Property.INHERIT_LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue(value));
4368 /// Gets/Sets the layout Direction.
4370 /// <since_tizen> 4 </since_tizen>
4371 public ViewLayoutDirectionType LayoutDirection
4376 if (GetProperty(View.Property.LAYOUT_DIRECTION).Get(out temp) == false)
4378 NUILog.Error("LAYOUT_DIRECTION get error!");
4380 return (ViewLayoutDirectionType)temp;
4384 SetProperty(View.Property.LAYOUT_DIRECTION, new Tizen.NUI.PropertyValue((int)value));
4389 /// Gets or sets the Margin for use in layout.
4391 /// <since_tizen> 4 </since_tizen>
4392 public Extents Margin
4396 Extents temp = new Extents(0, 0, 0, 0);
4397 GetProperty(View.Property.MARGIN).Get(temp);
4402 SetProperty(View.Property.MARGIN, new Tizen.NUI.PropertyValue(value));
4407 /// [Obsolete("Please do not use! this will be deprecated")]
4409 /// Please do not use! this will be deprecated!
4410 /// Instead please use Padding.
4411 /// <since_tizen> 4 </since_tizen>
4412 [Obsolete("Please do not use! this will be deprecated, instead please use Padding.")]
4413 [EditorBrowsable(EditorBrowsableState.Never)]
4414 public Extents PaddingEX
4418 Extents temp = new Extents(0, 0, 0, 0);
4419 GetProperty(View.Property.PADDING).Get(temp);
4424 SetProperty(View.Property.PADDING, new Tizen.NUI.PropertyValue(value));
4429 /// Perform an action on a visual registered to this view. <br />
4430 /// Visuals will have actions, this API is used to perform one of these actions with the given attributes.
4432 /// <param name="propertyIndexOfVisual">The Property index of the visual.</param>
4433 /// <param name="propertyIndexOfActionId">The action to perform. See Visual to find supported actions.</param>
4434 /// <param name="attributes">Optional attributes for the action.</param>
4435 /// <since_tizen> 5 </since_tizen>
4436 public void DoAction(int propertyIndexOfVisual, int propertyIndexOfActionId, PropertyValue attributes)
4438 NDalicManualPINVOKE.View_DoAction(swigCPtr, propertyIndexOfVisual, propertyIndexOfActionId, PropertyValue.getCPtr(attributes));
4439 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
4445 /// The View layout Direction type.
4447 /// <since_tizen> 4 </since_tizen>
4448 public enum ViewLayoutDirectionType
4453 /// <since_tizen> 4 </since_tizen>
4458 /// <since_tizen> 4 </since_tizen>