71e4b1d1826707d18df8eeac05f1c01b26924585
[platform/core/csapi/tizenfx.git] / internals / src / EflSharp / EflSharp / efl / efl_gesture_events.eo.cs
1 #pragma warning disable CS1591
2 using System;
3 using System.Runtime.InteropServices;
4 using System.Collections.Generic;
5 using System.Linq;
6 using System.Threading;
7 using System.ComponentModel;
8 namespace Efl {
9
10 namespace Gesture {
11
12 [Efl.Gesture.IEventsConcrete.NativeMethods]
13 [Efl.Eo.BindingEntity]
14 public interface IEvents : 
15     Efl.Eo.IWrapper, IDisposable
16 {
17     /// <summary>Event for tap gesture</summary>
18     event EventHandler<Efl.Gesture.IEventsGestureTapEvt_Args> GestureTapEvt;
19     /// <summary>Event for double tap gesture</summary>
20     event EventHandler<Efl.Gesture.IEventsGestureDoubleTapEvt_Args> GestureDoubleTapEvt;
21     /// <summary>Event for triple tap gesture</summary>
22     event EventHandler<Efl.Gesture.IEventsGestureTripleTapEvt_Args> GestureTripleTapEvt;
23     /// <summary>Event for long tap gesture</summary>
24     event EventHandler<Efl.Gesture.IEventsGestureLongTapEvt_Args> GestureLongTapEvt;
25     /// <summary>Event for momentum gesture</summary>
26     event EventHandler<Efl.Gesture.IEventsGestureMomentumEvt_Args> GestureMomentumEvt;
27     /// <summary>Event for flick gesture</summary>
28     event EventHandler<Efl.Gesture.IEventsGestureFlickEvt_Args> GestureFlickEvt;
29     /// <summary>Event for zoom gesture</summary>
30     event EventHandler<Efl.Gesture.IEventsGestureZoomEvt_Args> GestureZoomEvt;
31 }
32 ///<summary>Event argument wrapper for event <see cref="Efl.Gesture.IEvents.GestureTapEvt"/>.</summary>
33 [Efl.Eo.BindingEntity]
34 public class IEventsGestureTapEvt_Args : EventArgs {
35     ///<summary>Actual event payload.</summary>
36     public Efl.Canvas.GestureTap arg { get; set; }
37 }
38 ///<summary>Event argument wrapper for event <see cref="Efl.Gesture.IEvents.GestureDoubleTapEvt"/>.</summary>
39 [Efl.Eo.BindingEntity]
40 public class IEventsGestureDoubleTapEvt_Args : EventArgs {
41     ///<summary>Actual event payload.</summary>
42     public Efl.Canvas.GestureDoubleTap arg { get; set; }
43 }
44 ///<summary>Event argument wrapper for event <see cref="Efl.Gesture.IEvents.GestureTripleTapEvt"/>.</summary>
45 [Efl.Eo.BindingEntity]
46 public class IEventsGestureTripleTapEvt_Args : EventArgs {
47     ///<summary>Actual event payload.</summary>
48     public Efl.Canvas.GestureTripleTap arg { get; set; }
49 }
50 ///<summary>Event argument wrapper for event <see cref="Efl.Gesture.IEvents.GestureLongTapEvt"/>.</summary>
51 [Efl.Eo.BindingEntity]
52 public class IEventsGestureLongTapEvt_Args : EventArgs {
53     ///<summary>Actual event payload.</summary>
54     public Efl.Canvas.GestureLongTap arg { get; set; }
55 }
56 ///<summary>Event argument wrapper for event <see cref="Efl.Gesture.IEvents.GestureMomentumEvt"/>.</summary>
57 [Efl.Eo.BindingEntity]
58 public class IEventsGestureMomentumEvt_Args : EventArgs {
59     ///<summary>Actual event payload.</summary>
60     public Efl.Canvas.GestureMomentum arg { get; set; }
61 }
62 ///<summary>Event argument wrapper for event <see cref="Efl.Gesture.IEvents.GestureFlickEvt"/>.</summary>
63 [Efl.Eo.BindingEntity]
64 public class IEventsGestureFlickEvt_Args : EventArgs {
65     ///<summary>Actual event payload.</summary>
66     public Efl.Canvas.GestureFlick arg { get; set; }
67 }
68 ///<summary>Event argument wrapper for event <see cref="Efl.Gesture.IEvents.GestureZoomEvt"/>.</summary>
69 [Efl.Eo.BindingEntity]
70 public class IEventsGestureZoomEvt_Args : EventArgs {
71     ///<summary>Actual event payload.</summary>
72     public Efl.Canvas.GestureZoom arg { get; set; }
73 }
74 sealed public class IEventsConcrete :
75     Efl.Eo.EoWrapper
76     , IEvents
77     
78 {
79     ///<summary>Pointer to the native class description.</summary>
80     public override System.IntPtr NativeClass
81     {
82         get
83         {
84             if (((object)this).GetType() == typeof(IEventsConcrete))
85             {
86                 return GetEflClassStatic();
87             }
88             else
89             {
90                 return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
91             }
92         }
93     }
94
95     /// <summary>Constructor to be used when objects are expected to be constructed from native code.</summary>
96     /// <param name="ch">Tag struct storing the native handle of the object being constructed.</param>
97     private IEventsConcrete(ConstructingHandle ch) : base(ch)
98     {
99     }
100
101     [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
102         efl_gesture_events_interface_get();
103     /// <summary>Initializes a new instance of the <see cref="IEvents"/> class.
104     /// Internal usage: This is used when interacting with C code and should not be used directly.</summary>
105     /// <param name="wh">The native pointer to be wrapped.</param>
106     private IEventsConcrete(Efl.Eo.Globals.WrappingHandle wh) : base(wh)
107     {
108     }
109
110     /// <summary>Event for tap gesture</summary>
111     public event EventHandler<Efl.Gesture.IEventsGestureTapEvt_Args> GestureTapEvt
112     {
113         add
114         {
115             lock (eflBindingEventLock)
116             {
117                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
118                 {
119                     var obj = Efl.Eo.Globals.WrapperSupervisorPtrToManaged(data).Target;
120                     if (obj != null)
121                     {
122                         Efl.Gesture.IEventsGestureTapEvt_Args args = new Efl.Gesture.IEventsGestureTapEvt_Args();
123                         args.arg = (Efl.Eo.Globals.CreateWrapperFor(evt.Info) as Efl.Canvas.GestureTap);
124                         try
125                         {
126                             value?.Invoke(obj, args);
127                         }
128                         catch (Exception e)
129                         {
130                             Eina.Log.Error(e.ToString());
131                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
132                         }
133                     }
134                 };
135
136                 string key = "_EFL_EVENT_GESTURE_TAP";
137                 AddNativeEventHandler(efl.Libs.Evas, key, callerCb, value);
138             }
139         }
140
141         remove
142         {
143             lock (eflBindingEventLock)
144             {
145                 string key = "_EFL_EVENT_GESTURE_TAP";
146                 RemoveNativeEventHandler(efl.Libs.Evas, key, value);
147             }
148         }
149     }
150     ///<summary>Method to raise event GestureTapEvt.</summary>
151     public void OnGestureTapEvt(Efl.Gesture.IEventsGestureTapEvt_Args e)
152     {
153         var key = "_EFL_EVENT_GESTURE_TAP";
154         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Evas, key);
155         if (desc == IntPtr.Zero)
156         {
157             Eina.Log.Error($"Failed to get native event {key}");
158             return;
159         }
160
161         IntPtr info = e.arg.NativeHandle;
162         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, info);
163     }
164     /// <summary>Event for double tap gesture</summary>
165     public event EventHandler<Efl.Gesture.IEventsGestureDoubleTapEvt_Args> GestureDoubleTapEvt
166     {
167         add
168         {
169             lock (eflBindingEventLock)
170             {
171                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
172                 {
173                     var obj = Efl.Eo.Globals.WrapperSupervisorPtrToManaged(data).Target;
174                     if (obj != null)
175                     {
176                         Efl.Gesture.IEventsGestureDoubleTapEvt_Args args = new Efl.Gesture.IEventsGestureDoubleTapEvt_Args();
177                         args.arg = (Efl.Eo.Globals.CreateWrapperFor(evt.Info) as Efl.Canvas.GestureDoubleTap);
178                         try
179                         {
180                             value?.Invoke(obj, args);
181                         }
182                         catch (Exception e)
183                         {
184                             Eina.Log.Error(e.ToString());
185                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
186                         }
187                     }
188                 };
189
190                 string key = "_EFL_EVENT_GESTURE_DOUBLE_TAP";
191                 AddNativeEventHandler(efl.Libs.Evas, key, callerCb, value);
192             }
193         }
194
195         remove
196         {
197             lock (eflBindingEventLock)
198             {
199                 string key = "_EFL_EVENT_GESTURE_DOUBLE_TAP";
200                 RemoveNativeEventHandler(efl.Libs.Evas, key, value);
201             }
202         }
203     }
204     ///<summary>Method to raise event GestureDoubleTapEvt.</summary>
205     public void OnGestureDoubleTapEvt(Efl.Gesture.IEventsGestureDoubleTapEvt_Args e)
206     {
207         var key = "_EFL_EVENT_GESTURE_DOUBLE_TAP";
208         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Evas, key);
209         if (desc == IntPtr.Zero)
210         {
211             Eina.Log.Error($"Failed to get native event {key}");
212             return;
213         }
214
215         IntPtr info = e.arg.NativeHandle;
216         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, info);
217     }
218     /// <summary>Event for triple tap gesture</summary>
219     public event EventHandler<Efl.Gesture.IEventsGestureTripleTapEvt_Args> GestureTripleTapEvt
220     {
221         add
222         {
223             lock (eflBindingEventLock)
224             {
225                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
226                 {
227                     var obj = Efl.Eo.Globals.WrapperSupervisorPtrToManaged(data).Target;
228                     if (obj != null)
229                     {
230                         Efl.Gesture.IEventsGestureTripleTapEvt_Args args = new Efl.Gesture.IEventsGestureTripleTapEvt_Args();
231                         args.arg = (Efl.Eo.Globals.CreateWrapperFor(evt.Info) as Efl.Canvas.GestureTripleTap);
232                         try
233                         {
234                             value?.Invoke(obj, args);
235                         }
236                         catch (Exception e)
237                         {
238                             Eina.Log.Error(e.ToString());
239                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
240                         }
241                     }
242                 };
243
244                 string key = "_EFL_EVENT_GESTURE_TRIPLE_TAP";
245                 AddNativeEventHandler(efl.Libs.Evas, key, callerCb, value);
246             }
247         }
248
249         remove
250         {
251             lock (eflBindingEventLock)
252             {
253                 string key = "_EFL_EVENT_GESTURE_TRIPLE_TAP";
254                 RemoveNativeEventHandler(efl.Libs.Evas, key, value);
255             }
256         }
257     }
258     ///<summary>Method to raise event GestureTripleTapEvt.</summary>
259     public void OnGestureTripleTapEvt(Efl.Gesture.IEventsGestureTripleTapEvt_Args e)
260     {
261         var key = "_EFL_EVENT_GESTURE_TRIPLE_TAP";
262         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Evas, key);
263         if (desc == IntPtr.Zero)
264         {
265             Eina.Log.Error($"Failed to get native event {key}");
266             return;
267         }
268
269         IntPtr info = e.arg.NativeHandle;
270         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, info);
271     }
272     /// <summary>Event for long tap gesture</summary>
273     public event EventHandler<Efl.Gesture.IEventsGestureLongTapEvt_Args> GestureLongTapEvt
274     {
275         add
276         {
277             lock (eflBindingEventLock)
278             {
279                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
280                 {
281                     var obj = Efl.Eo.Globals.WrapperSupervisorPtrToManaged(data).Target;
282                     if (obj != null)
283                     {
284                         Efl.Gesture.IEventsGestureLongTapEvt_Args args = new Efl.Gesture.IEventsGestureLongTapEvt_Args();
285                         args.arg = (Efl.Eo.Globals.CreateWrapperFor(evt.Info) as Efl.Canvas.GestureLongTap);
286                         try
287                         {
288                             value?.Invoke(obj, args);
289                         }
290                         catch (Exception e)
291                         {
292                             Eina.Log.Error(e.ToString());
293                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
294                         }
295                     }
296                 };
297
298                 string key = "_EFL_EVENT_GESTURE_LONG_TAP";
299                 AddNativeEventHandler(efl.Libs.Evas, key, callerCb, value);
300             }
301         }
302
303         remove
304         {
305             lock (eflBindingEventLock)
306             {
307                 string key = "_EFL_EVENT_GESTURE_LONG_TAP";
308                 RemoveNativeEventHandler(efl.Libs.Evas, key, value);
309             }
310         }
311     }
312     ///<summary>Method to raise event GestureLongTapEvt.</summary>
313     public void OnGestureLongTapEvt(Efl.Gesture.IEventsGestureLongTapEvt_Args e)
314     {
315         var key = "_EFL_EVENT_GESTURE_LONG_TAP";
316         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Evas, key);
317         if (desc == IntPtr.Zero)
318         {
319             Eina.Log.Error($"Failed to get native event {key}");
320             return;
321         }
322
323         IntPtr info = e.arg.NativeHandle;
324         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, info);
325     }
326     /// <summary>Event for momentum gesture</summary>
327     public event EventHandler<Efl.Gesture.IEventsGestureMomentumEvt_Args> GestureMomentumEvt
328     {
329         add
330         {
331             lock (eflBindingEventLock)
332             {
333                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
334                 {
335                     var obj = Efl.Eo.Globals.WrapperSupervisorPtrToManaged(data).Target;
336                     if (obj != null)
337                     {
338                         Efl.Gesture.IEventsGestureMomentumEvt_Args args = new Efl.Gesture.IEventsGestureMomentumEvt_Args();
339                         args.arg = (Efl.Eo.Globals.CreateWrapperFor(evt.Info) as Efl.Canvas.GestureMomentum);
340                         try
341                         {
342                             value?.Invoke(obj, args);
343                         }
344                         catch (Exception e)
345                         {
346                             Eina.Log.Error(e.ToString());
347                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
348                         }
349                     }
350                 };
351
352                 string key = "_EFL_EVENT_GESTURE_MOMENTUM";
353                 AddNativeEventHandler(efl.Libs.Evas, key, callerCb, value);
354             }
355         }
356
357         remove
358         {
359             lock (eflBindingEventLock)
360             {
361                 string key = "_EFL_EVENT_GESTURE_MOMENTUM";
362                 RemoveNativeEventHandler(efl.Libs.Evas, key, value);
363             }
364         }
365     }
366     ///<summary>Method to raise event GestureMomentumEvt.</summary>
367     public void OnGestureMomentumEvt(Efl.Gesture.IEventsGestureMomentumEvt_Args e)
368     {
369         var key = "_EFL_EVENT_GESTURE_MOMENTUM";
370         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Evas, key);
371         if (desc == IntPtr.Zero)
372         {
373             Eina.Log.Error($"Failed to get native event {key}");
374             return;
375         }
376
377         IntPtr info = e.arg.NativeHandle;
378         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, info);
379     }
380     /// <summary>Event for flick gesture</summary>
381     public event EventHandler<Efl.Gesture.IEventsGestureFlickEvt_Args> GestureFlickEvt
382     {
383         add
384         {
385             lock (eflBindingEventLock)
386             {
387                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
388                 {
389                     var obj = Efl.Eo.Globals.WrapperSupervisorPtrToManaged(data).Target;
390                     if (obj != null)
391                     {
392                         Efl.Gesture.IEventsGestureFlickEvt_Args args = new Efl.Gesture.IEventsGestureFlickEvt_Args();
393                         args.arg = (Efl.Eo.Globals.CreateWrapperFor(evt.Info) as Efl.Canvas.GestureFlick);
394                         try
395                         {
396                             value?.Invoke(obj, args);
397                         }
398                         catch (Exception e)
399                         {
400                             Eina.Log.Error(e.ToString());
401                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
402                         }
403                     }
404                 };
405
406                 string key = "_EFL_EVENT_GESTURE_FLICK";
407                 AddNativeEventHandler(efl.Libs.Evas, key, callerCb, value);
408             }
409         }
410
411         remove
412         {
413             lock (eflBindingEventLock)
414             {
415                 string key = "_EFL_EVENT_GESTURE_FLICK";
416                 RemoveNativeEventHandler(efl.Libs.Evas, key, value);
417             }
418         }
419     }
420     ///<summary>Method to raise event GestureFlickEvt.</summary>
421     public void OnGestureFlickEvt(Efl.Gesture.IEventsGestureFlickEvt_Args e)
422     {
423         var key = "_EFL_EVENT_GESTURE_FLICK";
424         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Evas, key);
425         if (desc == IntPtr.Zero)
426         {
427             Eina.Log.Error($"Failed to get native event {key}");
428             return;
429         }
430
431         IntPtr info = e.arg.NativeHandle;
432         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, info);
433     }
434     /// <summary>Event for zoom gesture</summary>
435     public event EventHandler<Efl.Gesture.IEventsGestureZoomEvt_Args> GestureZoomEvt
436     {
437         add
438         {
439             lock (eflBindingEventLock)
440             {
441                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
442                 {
443                     var obj = Efl.Eo.Globals.WrapperSupervisorPtrToManaged(data).Target;
444                     if (obj != null)
445                     {
446                         Efl.Gesture.IEventsGestureZoomEvt_Args args = new Efl.Gesture.IEventsGestureZoomEvt_Args();
447                         args.arg = (Efl.Eo.Globals.CreateWrapperFor(evt.Info) as Efl.Canvas.GestureZoom);
448                         try
449                         {
450                             value?.Invoke(obj, args);
451                         }
452                         catch (Exception e)
453                         {
454                             Eina.Log.Error(e.ToString());
455                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
456                         }
457                     }
458                 };
459
460                 string key = "_EFL_EVENT_GESTURE_ZOOM";
461                 AddNativeEventHandler(efl.Libs.Evas, key, callerCb, value);
462             }
463         }
464
465         remove
466         {
467             lock (eflBindingEventLock)
468             {
469                 string key = "_EFL_EVENT_GESTURE_ZOOM";
470                 RemoveNativeEventHandler(efl.Libs.Evas, key, value);
471             }
472         }
473     }
474     ///<summary>Method to raise event GestureZoomEvt.</summary>
475     public void OnGestureZoomEvt(Efl.Gesture.IEventsGestureZoomEvt_Args e)
476     {
477         var key = "_EFL_EVENT_GESTURE_ZOOM";
478         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Evas, key);
479         if (desc == IntPtr.Zero)
480         {
481             Eina.Log.Error($"Failed to get native event {key}");
482             return;
483         }
484
485         IntPtr info = e.arg.NativeHandle;
486         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, info);
487     }
488     private static IntPtr GetEflClassStatic()
489     {
490         return Efl.Gesture.IEventsConcrete.efl_gesture_events_interface_get();
491     }
492     /// <summary>Wrapper for native methods and virtual method delegates.
493     /// For internal use by generated code only.</summary>
494     public new class NativeMethods : Efl.Eo.EoWrapper.NativeMethods
495     {
496         /// <summary>Gets the list of Eo operations to override.</summary>
497         /// <returns>The list of Eo operations to be overload.</returns>
498         public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
499         {
500             var descs = new System.Collections.Generic.List<Efl_Op_Description>();
501             return descs;
502         }
503         /// <summary>Returns the Eo class for the native methods of this class.</summary>
504         /// <returns>The native class pointer.</returns>
505         public override IntPtr GetEflClass()
506         {
507             return Efl.Gesture.IEventsConcrete.efl_gesture_events_interface_get();
508         }
509
510         #pragma warning disable CA1707, CS1591, SA1300, SA1600
511
512         #pragma warning restore CA1707, CS1591, SA1300, SA1600
513
514 }
515 }
516 }
517
518 }
519