1 /** Copyright (c) 2017 Samsung Electronics Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
7 * http://www.apache.org/licenses/LICENSE-2.0
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
16 // This File has been auto-generated by SWIG and then modified using DALi Ruby Scripts
17 //------------------------------------------------------------------------------
20 // This file was automatically generated by SWIG (http://www.swig.org).
23 // Do not make changes to this file unless you know what you are doing--modify
24 // the SWIG interface file instead.
25 //------------------------------------------------------------------------------
31 using System.Runtime.InteropServices;
32 using Tizen.NUI.BaseComponents;
35 public class PinchGestureDetector : GestureDetector
37 private global::System.Runtime.InteropServices.HandleRef swigCPtr;
39 internal PinchGestureDetector(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.PinchGestureDetector_SWIGUpcast(cPtr), cMemoryOwn)
41 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
44 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(PinchGestureDetector obj)
46 return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
50 protected override void Dispose(DisposeTypes type)
57 if (type == DisposeTypes.Explicit)
60 //Release your own managed resources here.
61 //You should release all of your own disposable objects here.
65 //Release your own unmanaged resources here.
66 //You should not access any managed member here except static instance.
67 //because the execution order of Finalizes is non-deterministic.
70 if (swigCPtr.Handle != global::System.IntPtr.Zero)
75 NDalicPINVOKE.delete_PinchGestureDetector(swigCPtr);
77 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
84 public class DetectedEventArgs : EventArgs
87 private PinchGesture _pinchGesture;
101 public PinchGesture PinchGesture
105 return _pinchGesture;
109 _pinchGesture = value;
114 [UnmanagedFunctionPointer(CallingConvention.StdCall)]
115 private delegate void DetectedCallbackDelegate(IntPtr actor, IntPtr pinchGesture);
116 private DaliEventHandler<object, DetectedEventArgs> _pinchGestureEventHandler;
117 private DetectedCallbackDelegate _pinchGestureCallbackDelegate;
120 public event DaliEventHandler<object, DetectedEventArgs> Detected
126 // Restricted to only one listener
127 if (_pinchGestureEventHandler == null)
129 _pinchGestureEventHandler += value;
131 _pinchGestureCallbackDelegate = new DetectedCallbackDelegate(OnPinchGestureDetected);
132 this.DetectedSignal().Connect(_pinchGestureCallbackDelegate);
141 if (_pinchGestureEventHandler != null)
143 this.DetectedSignal().Disconnect(_pinchGestureCallbackDelegate);
146 _pinchGestureEventHandler -= value;
151 private void OnPinchGestureDetected(IntPtr actor, IntPtr pinchGesture)
153 DetectedEventArgs e = new DetectedEventArgs();
155 // Populate all members of "e" (DetectedEventArgs) with real data
156 e.View = View.GetViewFromPtr(actor);
157 e.PinchGesture = Tizen.NUI.PinchGesture.GetPinchGestureFromPtr(pinchGesture);
159 if (_pinchGestureEventHandler != null)
161 //here we send all data to user event handlers
162 _pinchGestureEventHandler(this, e);
168 public static PinchGestureDetector GetPinchGestureDetectorFromPtr(global::System.IntPtr cPtr)
170 PinchGestureDetector ret = new PinchGestureDetector(cPtr, false);
171 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
176 public PinchGestureDetector() : this(NDalicPINVOKE.PinchGestureDetector_New(), true)
178 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
181 public new static PinchGestureDetector DownCast(BaseHandle handle)
183 PinchGestureDetector ret = new PinchGestureDetector(NDalicPINVOKE.PinchGestureDetector_DownCast(BaseHandle.getCPtr(handle)), true);
184 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
188 public PinchGestureDetector(PinchGestureDetector handle) : this(NDalicPINVOKE.new_PinchGestureDetector__SWIG_1(PinchGestureDetector.getCPtr(handle)), true)
190 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
193 public PinchGestureDetector Assign(PinchGestureDetector rhs)
195 PinchGestureDetector ret = new PinchGestureDetector(NDalicPINVOKE.PinchGestureDetector_Assign(swigCPtr, PinchGestureDetector.getCPtr(rhs)), false);
196 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
200 internal PinchGestureDetectedSignal DetectedSignal()
202 PinchGestureDetectedSignal ret = new PinchGestureDetectedSignal(NDalicPINVOKE.PinchGestureDetector_DetectedSignal(swigCPtr), false);
203 if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();