1 #pragma warning disable CS1591
3 using System.Runtime.InteropServices;
4 using System.Collections.Generic;
6 using System.Threading;
7 using System.ComponentModel;
10 public struct CallbackPriority
12 private short payload;
13 public static implicit operator CallbackPriority(short x)
15 return new CallbackPriority{payload=x};
18 public static implicit operator short(CallbackPriority x)
29 public partial class Constants
31 public static readonly Efl.CallbackPriority CallbackPriorityBefore = -100;
37 public partial class Constants
39 public static readonly Efl.CallbackPriority CallbackPriorityDefault = 0;
45 public partial class Constants
47 public static readonly Efl.CallbackPriority CallbackPriorityAfter = 100;
53 /// <summary>Abstract EFL object class.
54 /// All EFL objects inherit from this class, which provides basic functionality like naming, debugging, hierarchy traversal, event emission and life cycle management.
56 /// Life Cycle Objects are created with efl_add() and mostly disposed of with efl_del(). As an optimization, efl_add() accepts a list of initialization functions which the programmer can use to further customize the object before it is fully constructed. Also, objects can have a parent which will keep them alive as long as the parent is alive, so the programmer does not need to keep track of references. (See the <see cref="Efl.Object.Parent"/> property for details). Due to the above characteristics, EFL objects undergo the following phases during their Life Cycle: - Construction: The Efl.Object.constructor method is called. Afterwards, any user-supplied initialization methods are called. - Finalization: The <see cref="Efl.Object.FinalizeAdd"/> method is called and <see cref="Efl.Object.GetFinalized"/> is set to <c>true</c> when it returns. Object is usable at this point. - Invalidation: The object has lost its parent. The <see cref="Efl.Object.Invalidate"/> method is called so all the object's relationships can be terminated. <see cref="Efl.Object.GetInvalidated"/> is set to <c>true</c>. - Destruction: The object has no parent and it can be destroyed. The <see cref="Efl.Object.Destructor"/> method is called, use it to return any resources the object might have gathered during its life.
57 /// (Since EFL 1.22)</summary>
58 [Efl.Object.NativeMethods]
59 public abstract class Object : Efl.Eo.IWrapper, IDisposable
61 ///<summary>Pointer to the native class description.</summary>
62 public virtual System.IntPtr NativeClass
66 if (((object)this).GetType() == typeof(Object))
68 return GetEflClassStatic();
72 return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
77 protected Dictionary<(IntPtr desc, object evtDelegate), (IntPtr evtCallerPtr, Efl.EventCb evtCaller)> eoEvents = new Dictionary<(IntPtr desc, object evtDelegate), (IntPtr evtCallerPtr, Efl.EventCb evtCaller)>();
78 protected readonly object eventLock = new object();
79 protected bool inherited;
80 protected System.IntPtr handle;
81 ///<summary>Pointer to the native instance.</summary>
82 public System.IntPtr NativeHandle
84 get { return handle; }
87 [System.Runtime.InteropServices.DllImport(efl.Libs.Eo)] internal static extern System.IntPtr
88 efl_object_class_get();
89 /// <summary>Initializes a new instance of the <see cref="Object"/> class.</summary>
90 /// <param name="parent">Parent instance.</param>
91 public Object(Efl.Object parent= null
92 ) : this(efl_object_class_get(), typeof(Object), parent)
94 FinishInstantiation();
97 /// <summary>Initializes a new instance of the <see cref="Object"/> class.
98 /// Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
99 /// <param name="raw">The native pointer to be wrapped.</param>
100 protected Object(System.IntPtr raw)
105 [Efl.Eo.PrivateNativeClass]
106 private class ObjectRealized : Object
108 private ObjectRealized(IntPtr ptr) : base(ptr)
112 /// <summary>Initializes a new instance of the <see cref="Object"/> class.
113 /// Internal usage: Constructor to actually call the native library constructors. C# subclasses
114 /// must use the public constructor only.</summary>
115 /// <param name="baseKlass">The pointer to the base native Eo class.</param>
116 /// <param name="managedType">The managed type of the public constructor that originated this call.</param>
117 /// <param name="parent">The Efl.Object parent of this instance.</param>
118 protected Object(IntPtr baseKlass, System.Type managedType, Efl.Object parent)
120 inherited = ((object)this).GetType() != managedType;
121 IntPtr actual_klass = baseKlass;
124 actual_klass = Efl.Eo.ClassRegister.GetInheritKlassOrRegister(baseKlass, ((object)this).GetType());
127 handle = Efl.Eo.Globals.instantiate_start(actual_klass, parent);
130 Efl.Eo.Globals.PrivateDataSet(this);
134 /// <summary>Finishes instantiating this object.
135 /// Internal usage by generated code.</summary>
136 protected void FinishInstantiation()
138 handle = Efl.Eo.Globals.instantiate_end(handle);
139 Eina.Error.RaiseIfUnhandledException();
142 ///<summary>Destructor.</summary>
148 ///<summary>Releases the underlying native instance.</summary>
149 protected virtual void Dispose(bool disposing)
151 if (handle != System.IntPtr.Zero)
154 handle = IntPtr.Zero;
156 IntPtr gcHandlePtr = IntPtr.Zero;
157 if (eoEvents.Count != 0)
159 GCHandle gcHandle = GCHandle.Alloc(eoEvents);
160 gcHandlePtr = GCHandle.ToIntPtr(gcHandle);
165 Efl.Eo.Globals.efl_mono_native_dispose(h, gcHandlePtr);
169 Monitor.Enter(Efl.All.InitLock);
170 if (Efl.All.MainLoopInitialized)
172 Efl.Eo.Globals.efl_mono_thread_safe_native_dispose(h, gcHandlePtr);
175 Monitor.Exit(Efl.All.InitLock);
181 ///<summary>Releases the underlying native instance.</summary>
182 public void Dispose()
185 GC.SuppressFinalize(this);
188 /// <summary>Verifies if the given object is equal to this one.</summary>
189 /// <param name="instance">The object to compare to.</param>
190 /// <returns>True if both objects point to the same native object.</returns>
191 public override bool Equals(object instance)
193 var other = instance as Efl.Object;
198 return this.NativeHandle == other.NativeHandle;
201 /// <summary>Gets the hash code for this object based on the native pointer it points to.</summary>
202 /// <returns>The value of the pointer, to be used as the hash code of this object.</returns>
203 public override int GetHashCode()
205 return this.NativeHandle.ToInt32();
208 /// <summary>Turns the native pointer into a string representation.</summary>
209 /// <returns>A string with the type and the native pointer for this object.</returns>
210 public override String ToString()
212 return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
215 ///<summary>Adds a new event handler, registering it to the native event. For internal use only.</summary>
216 ///<param name="lib">The name of the native library definining the event.</param>
217 ///<param name="key">The name of the native event.</param>
218 ///<param name="evtCaller">Delegate to be called by native code on event raising.</param>
219 ///<param name="evtDelegate">Managed delegate that will be called by evtCaller on event raising.</param>
220 protected void AddNativeEventHandler(string lib, string key, Efl.EventCb evtCaller, object evtDelegate)
222 IntPtr desc = Efl.EventDescription.GetNative(lib, key);
223 if (desc == IntPtr.Zero)
225 Eina.Log.Error($"Failed to get native event {key}");
228 if (eoEvents.ContainsKey((desc, evtDelegate)))
230 Eina.Log.Warning($"Event proxy for event {key} already registered!");
234 IntPtr evtCallerPtr = Marshal.GetFunctionPointerForDelegate(evtCaller);
235 if (!Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evtCallerPtr, IntPtr.Zero))
237 Eina.Log.Error($"Failed to add event proxy for event {key}");
241 eoEvents[(desc, evtDelegate)] = (evtCallerPtr, evtCaller);
242 Eina.Error.RaiseIfUnhandledException();
245 ///<summary>Removes the given event handler for the given event. For internal use only.</summary>
246 ///<param name="lib">The name of the native library definining the event.</param>
247 ///<param name="key">The name of the native event.</param>
248 ///<param name="evtDelegate">The delegate to be removed.</param>
249 protected void RemoveNativeEventHandler(string lib, string key, object evtDelegate)
251 IntPtr desc = Efl.EventDescription.GetNative(lib, key);
252 if (desc == IntPtr.Zero)
254 Eina.Log.Error($"Failed to get native event {key}");
258 var evtPair = (desc, evtDelegate);
259 if (eoEvents.TryGetValue(evtPair, out var caller))
261 if (!Efl.Eo.Globals.efl_event_callback_del(handle, desc, caller.evtCallerPtr, IntPtr.Zero))
263 Eina.Log.Error($"Failed to remove event proxy for event {key}");
267 eoEvents.Remove(evtPair);
268 Eina.Error.RaiseIfUnhandledException();
272 Eina.Log.Error($"Trying to remove proxy for event {key} when it is nothing registered.");
276 /// <summary>Object is being deleted. See <see cref="Efl.Object.Destructor"/>.
277 /// (Since EFL 1.22)</summary>
278 public event EventHandler DelEvt
284 var wRef = new WeakReference(this);
285 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
287 var obj = wRef.Target as Efl.Eo.IWrapper;
290 EventArgs args = EventArgs.Empty;
293 value?.Invoke(obj, args);
297 Eina.Log.Error(e.ToString());
298 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
303 string key = "_EFL_EVENT_DEL";
304 AddNativeEventHandler(efl.Libs.Eo, key, callerCb, value);
312 string key = "_EFL_EVENT_DEL";
313 RemoveNativeEventHandler(efl.Libs.Eo, key, value);
317 ///<summary>Method to raise event DelEvt.</summary>
318 public void OnDelEvt(EventArgs e)
320 var key = "_EFL_EVENT_DEL";
321 IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Eo, key);
322 if (desc == IntPtr.Zero)
324 Eina.Log.Error($"Failed to get native event {key}");
328 Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, IntPtr.Zero);
330 /// <summary>Object is being invalidated and losing its parent. See <see cref="Efl.Object.Invalidate"/>.
331 /// (Since EFL 1.22)</summary>
332 public event EventHandler InvalidateEvt
338 var wRef = new WeakReference(this);
339 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
341 var obj = wRef.Target as Efl.Eo.IWrapper;
344 EventArgs args = EventArgs.Empty;
347 value?.Invoke(obj, args);
351 Eina.Log.Error(e.ToString());
352 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
357 string key = "_EFL_EVENT_INVALIDATE";
358 AddNativeEventHandler(efl.Libs.Eo, key, callerCb, value);
366 string key = "_EFL_EVENT_INVALIDATE";
367 RemoveNativeEventHandler(efl.Libs.Eo, key, value);
371 ///<summary>Method to raise event InvalidateEvt.</summary>
372 public void OnInvalidateEvt(EventArgs e)
374 var key = "_EFL_EVENT_INVALIDATE";
375 IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Eo, key);
376 if (desc == IntPtr.Zero)
378 Eina.Log.Error($"Failed to get native event {key}");
382 Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, IntPtr.Zero);
384 /// <summary>Object has lost its last reference, only parent relationship is keeping it alive. Advanced usage.
385 /// (Since EFL 1.22)</summary>
386 public event EventHandler NorefEvt
392 var wRef = new WeakReference(this);
393 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
395 var obj = wRef.Target as Efl.Eo.IWrapper;
398 EventArgs args = EventArgs.Empty;
401 value?.Invoke(obj, args);
405 Eina.Log.Error(e.ToString());
406 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
411 string key = "_EFL_EVENT_NOREF";
412 AddNativeEventHandler(efl.Libs.Eo, key, callerCb, value);
420 string key = "_EFL_EVENT_NOREF";
421 RemoveNativeEventHandler(efl.Libs.Eo, key, value);
425 ///<summary>Method to raise event NorefEvt.</summary>
426 public void OnNorefEvt(EventArgs e)
428 var key = "_EFL_EVENT_NOREF";
429 IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Eo, key);
430 if (desc == IntPtr.Zero)
432 Eina.Log.Error($"Failed to get native event {key}");
436 Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, IntPtr.Zero);
438 /// <summary>Object has been fully destroyed. It can not be used beyond this point. This event should only serve to clean up any reference you keep to the object.
439 /// (Since EFL 1.22)</summary>
440 public event EventHandler DestructEvt
446 var wRef = new WeakReference(this);
447 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
449 var obj = wRef.Target as Efl.Eo.IWrapper;
452 EventArgs args = EventArgs.Empty;
455 value?.Invoke(obj, args);
459 Eina.Log.Error(e.ToString());
460 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
465 string key = "_EFL_EVENT_DESTRUCT";
466 AddNativeEventHandler(efl.Libs.Eo, key, callerCb, value);
474 string key = "_EFL_EVENT_DESTRUCT";
475 RemoveNativeEventHandler(efl.Libs.Eo, key, value);
479 ///<summary>Method to raise event DestructEvt.</summary>
480 public void OnDestructEvt(EventArgs e)
482 var key = "_EFL_EVENT_DESTRUCT";
483 IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Eo, key);
484 if (desc == IntPtr.Zero)
486 Eina.Log.Error($"Failed to get native event {key}");
490 Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, IntPtr.Zero);
492 /// <summary>The parent of an object.
493 /// Parents keep references to their children and will release these references when destroyed. In this way, objects can be assigned to a parent upon creation, tying their life cycle so the programmer does not need to worry about destroying the child object. In order to destroy an object before its parent, set the parent to <c>NULL</c> and use efl_unref(), or use efl_del() directly.
495 /// The Eo parent is conceptually user set. That means that a parent should not be changed behind the scenes in an unexpected way.
497 /// For example: If you have a widget which can swallow objects into an internal box, the parent of the swallowed objects should be the widget, not the internal box. The user is not even aware of the existence of the internal box.
498 /// (Since EFL 1.22)</summary>
499 /// <returns>The new parent.</returns>
500 virtual public Efl.Object GetParent() {
501 var _ret_var = Efl.Object.NativeMethods.efl_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
502 Eina.Error.RaiseIfUnhandledException();
505 /// <summary>The parent of an object.
506 /// Parents keep references to their children and will release these references when destroyed. In this way, objects can be assigned to a parent upon creation, tying their life cycle so the programmer does not need to worry about destroying the child object. In order to destroy an object before its parent, set the parent to <c>NULL</c> and use efl_unref(), or use efl_del() directly.
508 /// The Eo parent is conceptually user set. That means that a parent should not be changed behind the scenes in an unexpected way.
510 /// For example: If you have a widget which can swallow objects into an internal box, the parent of the swallowed objects should be the widget, not the internal box. The user is not even aware of the existence of the internal box.
511 /// (Since EFL 1.22)</summary>
512 /// <param name="parent">The new parent.</param>
513 virtual public void SetParent(Efl.Object parent) {
514 Efl.Object.NativeMethods.efl_parent_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),parent);
515 Eina.Error.RaiseIfUnhandledException();
517 /// <summary>The name of the object.
518 /// Every EFL object can have a name. Names may not contain the following characters: / ? * [ ] ! : Using any of these in a name will result in undefined behavior later on. An empty string is considered the same as a <c>NULL</c> string or no string for the name.
519 /// (Since EFL 1.22)</summary>
520 /// <returns>The name.</returns>
521 virtual public System.String GetName() {
522 var _ret_var = Efl.Object.NativeMethods.efl_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
523 Eina.Error.RaiseIfUnhandledException();
526 /// <summary>The name of the object.
527 /// Every EFL object can have a name. Names may not contain the following characters: / ? * [ ] ! : Using any of these in a name will result in undefined behavior later on. An empty string is considered the same as a <c>NULL</c> string or no string for the name.
528 /// (Since EFL 1.22)</summary>
529 /// <param name="name">The name.</param>
530 virtual public void SetName(System.String name) {
531 Efl.Object.NativeMethods.efl_name_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),name);
532 Eina.Error.RaiseIfUnhandledException();
534 /// <summary>A human readable comment for the object.
535 /// Every EFL object can have a comment. This is intended for developers and debugging. An empty string is considered the same as a <c>NULL</c> string or no string for the comment.
536 /// (Since EFL 1.22)</summary>
537 /// <returns>The comment.</returns>
538 virtual public System.String GetComment() {
539 var _ret_var = Efl.Object.NativeMethods.efl_comment_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
540 Eina.Error.RaiseIfUnhandledException();
543 /// <summary>A human readable comment for the object.
544 /// Every EFL object can have a comment. This is intended for developers and debugging. An empty string is considered the same as a <c>NULL</c> string or no string for the comment.
545 /// (Since EFL 1.22)</summary>
546 /// <param name="comment">The comment.</param>
547 virtual public void SetComment(System.String comment) {
548 Efl.Object.NativeMethods.efl_comment_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),comment);
549 Eina.Error.RaiseIfUnhandledException();
551 /// <summary>Return the global count of freeze events.
552 /// This is the amount of calls to <see cref="Efl.Object.FreezeEventGlobal"/> minus the amount of calls to <see cref="Efl.Object.ThawEventGlobal"/>. EFL will not emit any event while this count is > 0 (Except events marked <c>hot</c>).
553 /// (Since EFL 1.22)</summary>
554 /// <returns>The global event freeze count.</returns>
555 public static int GetEventGlobalFreezeCount() {
556 var _ret_var = Efl.Object.NativeMethods.efl_event_global_freeze_count_get_ptr.Value.Delegate();
557 Eina.Error.RaiseIfUnhandledException();
560 /// <summary>Return the count of freeze events for this object.
561 /// This is the amount of calls to <see cref="Efl.Object.FreezeEvent"/> minus the amount of calls to <see cref="Efl.Object.ThawEvent"/>. This object will not emit any event while this count is > 0 (Except events marked <c>hot</c>).
562 /// (Since EFL 1.22)</summary>
563 /// <returns>The event freeze count of this object.</returns>
564 virtual public int GetEventFreezeCount() {
565 var _ret_var = Efl.Object.NativeMethods.efl_event_freeze_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
566 Eina.Error.RaiseIfUnhandledException();
569 /// <summary><c>true</c> if the object has been finalized, i.e. construction has finished. See the Life Cycle section in this class' description.
570 /// (Since EFL 1.22)</summary>
571 /// <returns><c>true</c> if the object is finalized, <c>false</c> otherwise.</returns>
572 virtual public bool GetFinalized() {
573 var _ret_var = Efl.Object.NativeMethods.efl_finalized_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
574 Eina.Error.RaiseIfUnhandledException();
577 /// <summary><c>true</c> if the object has been invalidated, i.e. it has no parent. See the Life Cycle section in this class' description.
578 /// (Since EFL 1.22)</summary>
579 /// <returns><c>true</c> if the object is invalidated, <c>false</c> otherwise.</returns>
580 virtual public bool GetInvalidated() {
581 var _ret_var = Efl.Object.NativeMethods.efl_invalidated_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
582 Eina.Error.RaiseIfUnhandledException();
585 /// <summary><c>true</c> if the object has started the invalidation phase, but has not finished it yet. Note: This might become <c>true</c> before <see cref="Efl.Object.Invalidate"/> is called. See the Life Cycle section in this class' description.
586 /// (Since EFL 1.22)</summary>
587 /// <returns><c>true</c> if the object is invalidating, <c>false</c> otherwise.</returns>
588 virtual public bool GetInvalidating() {
589 var _ret_var = Efl.Object.NativeMethods.efl_invalidating_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
590 Eina.Error.RaiseIfUnhandledException();
593 /// <summary>Allow an object to be deleted by unref even if it has a parent.
594 /// This simply hides the error message warning that an object being destroyed still has a parent. This property is false by default.
596 /// In a normal object use case, when ownership of an object is given to a caller, said ownership should be released with efl_unref(). If the object has a parent, this will print error messages, as efl_unref() is stealing the ref from the parent.
598 /// Warning: Use this function very carefully, unless you're absolutely sure of what you are doing.
599 /// (Since EFL 1.22)</summary>
600 /// <returns>Whether to allow efl_unref() to zero even if <see cref="Efl.Object.Parent"/> is not <c>null</c>.</returns>
601 virtual public bool GetAllowParentUnref() {
602 var _ret_var = Efl.Object.NativeMethods.efl_allow_parent_unref_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
603 Eina.Error.RaiseIfUnhandledException();
606 /// <summary>Allow an object to be deleted by unref even if it has a parent.
607 /// This simply hides the error message warning that an object being destroyed still has a parent. This property is false by default.
609 /// In a normal object use case, when ownership of an object is given to a caller, said ownership should be released with efl_unref(). If the object has a parent, this will print error messages, as efl_unref() is stealing the ref from the parent.
611 /// Warning: Use this function very carefully, unless you're absolutely sure of what you are doing.
612 /// (Since EFL 1.22)</summary>
613 /// <param name="allow">Whether to allow efl_unref() to zero even if <see cref="Efl.Object.Parent"/> is not <c>null</c>.</param>
614 virtual public void SetAllowParentUnref(bool allow) {
615 Efl.Object.NativeMethods.efl_allow_parent_unref_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),allow);
616 Eina.Error.RaiseIfUnhandledException();
618 /// <summary>Build a read-only name for this object used for debugging.
619 /// Multiple calls using efl_super() can be chained in order to build the entire debug name, from parent to child classes. In C the usual way to build the string is as follows:
621 /// efl_debug_name_override(efl_super(obj, MY_CLASS), sb); eina_strbuf_append_printf(sb, "new_information");
623 /// Usually more debug information should be added to <c>sb</c> after calling the super function.
624 /// (Since EFL 1.22)</summary>
625 /// <param name="sb">A string buffer, must not be <c>null</c>.</param>
626 virtual public void DebugNameOverride(Eina.Strbuf sb) {
627 Efl.Object.NativeMethods.efl_debug_name_override_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),sb);
628 Eina.Error.RaiseIfUnhandledException();
630 /// <summary>Searches upwards in the object tree for a provider which knows the given class/interface.
631 /// The object from the provider will then be returned. The base implementation calls the provider_find function on the object parent, and returns its result. If no parent is present NULL is returned. Each implementation has to support this function by overriding it and returning itself if the interface matches the parameter. If this is not done the class cannot be found up in the object tree.
632 /// (Since EFL 1.22)</summary>
633 /// <param name="klass">The class identifier to search for.</param>
634 /// <returns>Object from the provider list.</returns>
635 virtual public Efl.Object FindProvider(Type klass) {
636 var _ret_var = Efl.Object.NativeMethods.efl_provider_find_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),klass);
637 Eina.Error.RaiseIfUnhandledException();
640 /// <summary>Implement this method to provide deinitialization code for your object if you need it.
641 /// Will be called once <see cref="Efl.Object.Invalidate"/> has returned. See the Life Cycle section in this class' description.
642 /// (Since EFL 1.22)</summary>
643 virtual public void Destructor() {
644 Efl.Object.NativeMethods.efl_destructor_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
645 Eina.Error.RaiseIfUnhandledException();
647 /// <summary>Implement this method to finish the initialization of your object after all (if any) user-provided configuration methods have been executed.
648 /// Use this method to delay expensive operations until user configuration has finished, to avoid building the object in a "default" state in the constructor, just to have to throw it all away because a user configuration (a property being set, for example) requires a different state. This is the last call inside efl_add() and will set <see cref="Efl.Object.GetFinalized"/> to <c>true</c> once it returns. This is an optimization and implementing this method is optional if you already perform all your initialization in the Efl.Object.constructor method. See the Life Cycle section in this class' description.
649 /// (Since EFL 1.22)</summary>
650 /// <returns>The new object. Return <c>NULL</c> to abort object creation.</returns>
651 virtual public Efl.Object FinalizeAdd() {
652 var _ret_var = Efl.Object.NativeMethods.efl_finalize_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
653 Eina.Error.RaiseIfUnhandledException();
656 /// <summary>Implement this method to perform special actions when your object loses its parent, if you need to.
657 /// It is called when the parent reference is lost or set to <c>NULL</c>. After this call returns, <see cref="Efl.Object.GetInvalidated"/> is set to <c>true</c>. This allows a simpler tear down of complex hierarchies, by performing object destruction in two steps, first all object relationships are broken and then the isolated objects are destroyed. Performing everything in the <see cref="Efl.Object.Destructor"/> can sometimes lead to deadlocks, but implementing this method is optional if this is not your case. When an object with a parent is destroyed, it first receives a call to <see cref="Efl.Object.Invalidate"/> and then to <see cref="Efl.Object.Destructor"/>. See the Life Cycle section in this class' description.
658 /// (Since EFL 1.22)</summary>
659 virtual public void Invalidate() {
660 Efl.Object.NativeMethods.efl_invalidate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
661 Eina.Error.RaiseIfUnhandledException();
663 /// <summary>Find a child object with the given name and return it.
664 /// The search string can be a glob (shell style, using *). It can also specify class name in the format of "class:name" where ":" separates class and name. Both class and name can be globs. If the class is specified but the name is empty like "class:" then the search will match any object of that class.
665 /// (Since EFL 1.22)</summary>
666 /// <param name="search">The name search string.</param>
667 /// <returns>The first object found.</returns>
668 virtual public Efl.Object FindName(System.String search) {
669 var _ret_var = Efl.Object.NativeMethods.efl_name_find_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),search);
670 Eina.Error.RaiseIfUnhandledException();
673 /// <summary>Thaw events of object.
674 /// Allows event callbacks to be called again for this object after a call to <see cref="Efl.Object.FreezeEvent"/>. The amount of thaws must match the amount of freezes for events to be re-enabled.
675 /// (Since EFL 1.22)</summary>
676 virtual public void ThawEvent() {
677 Efl.Object.NativeMethods.efl_event_thaw_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
678 Eina.Error.RaiseIfUnhandledException();
680 /// <summary>Freeze events of this object.
681 /// Prevents event callbacks from being called for this object. Enable events again using <see cref="Efl.Object.ThawEvent"/>. Events marked <c>hot</c> cannot be stopped.
682 /// (Since EFL 1.22)</summary>
683 virtual public void FreezeEvent() {
684 Efl.Object.NativeMethods.efl_event_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
685 Eina.Error.RaiseIfUnhandledException();
687 /// <summary>Gobally thaw events for ALL EFL OBJECTS.
688 /// Allows event callbacks to be called for all EFL objects after they have been disabled by <see cref="Efl.Object.FreezeEventGlobal"/>. The amount of thaws must match the amount of freezes for events to be re-enabled.
689 /// (Since EFL 1.22)</summary>
690 public static void ThawEventGlobal() {
691 Efl.Object.NativeMethods.efl_event_global_thaw_ptr.Value.Delegate();
692 Eina.Error.RaiseIfUnhandledException();
694 /// <summary>Globally freeze events for ALL EFL OBJECTS.
695 /// Prevents event callbacks from being called for all EFL objects. Enable events again using <see cref="Efl.Object.ThawEventGlobal"/>. Events marked <c>hot</c> cannot be stopped.
697 /// Note: USE WITH CAUTION.
698 /// (Since EFL 1.22)</summary>
699 public static void FreezeEventGlobal() {
700 Efl.Object.NativeMethods.efl_event_global_freeze_ptr.Value.Delegate();
701 Eina.Error.RaiseIfUnhandledException();
703 /// <summary>Stop the current callback call.
704 /// This stops the current callback call. Any other callbacks for the current event will not be called. This is useful when you want to filter out events. Just add higher priority events and call this under certain conditions to block a certain event.
705 /// (Since EFL 1.22)</summary>
706 virtual public void EventCallbackStop() {
707 Efl.Object.NativeMethods.efl_event_callback_stop_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
708 Eina.Error.RaiseIfUnhandledException();
710 /// <summary>Remove an event callback forwarder for a specified event and object.
711 /// (Since EFL 1.22)</summary>
712 /// <param name="desc">The description of the event to listen to</param>
713 /// <param name="new_obj">The object to emit events from</param>
714 virtual public void DelEventCallbackForwarder(Efl.EventDescription desc, Efl.Object new_obj) {
715 var _in_desc = Eina.PrimitiveConversion.ManagedToPointerAlloc(desc);
716 Efl.Object.NativeMethods.efl_event_callback_forwarder_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),_in_desc, new_obj);
717 Eina.Error.RaiseIfUnhandledException();
719 /// <summary>Get an iterator on all childrens
720 /// (Since EFL 1.22)</summary>
721 /// <returns>Children iterator</returns>
722 virtual public Eina.Iterator<Efl.Object> NewChildrenIterator() {
723 var _ret_var = Efl.Object.NativeMethods.efl_children_iterator_new_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
724 Eina.Error.RaiseIfUnhandledException();
725 return new Eina.Iterator<Efl.Object>(_ret_var, true, false);
727 /// <summary>Make an object a composite object of another.
728 /// The class of comp_obj must be part of the extensions of the class of the parent. It isn't possible to attach more then 1 composite of the same class. This function also sets the parent of comp_obj to parent.
730 /// See <see cref="Efl.Object.CompositeDetach"/>, <see cref="Efl.Object.IsCompositePart"/>.
731 /// (Since EFL 1.22)</summary>
732 /// <param name="comp_obj">the object that will be used to composite the parent.</param>
733 /// <returns><c>true</c> if successful. <c>false</c> otherwise.</returns>
734 virtual public bool AttachComposite(Efl.Object comp_obj) {
735 var _ret_var = Efl.Object.NativeMethods.efl_composite_attach_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),comp_obj);
736 Eina.Error.RaiseIfUnhandledException();
739 /// <summary>Detach a composite object from another object.
740 /// This functions also sets the parent of comp_obj to <c>null</c>.
742 /// See <see cref="Efl.Object.AttachComposite"/>, <see cref="Efl.Object.IsCompositePart"/>.
743 /// (Since EFL 1.22)</summary>
744 /// <param name="comp_obj">The object that will be removed from the parent.</param>
745 /// <returns><c>true</c> if successful. <c>false</c> otherwise.</returns>
746 virtual public bool CompositeDetach(Efl.Object comp_obj) {
747 var _ret_var = Efl.Object.NativeMethods.efl_composite_detach_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),comp_obj);
748 Eina.Error.RaiseIfUnhandledException();
751 /// <summary>Check if an object is part of a composite object.
752 /// See <see cref="Efl.Object.AttachComposite"/>, <see cref="Efl.Object.IsCompositePart"/>.
753 /// (Since EFL 1.22)</summary>
754 /// <returns><c>true</c> if it is. <c>false</c> otherwise.</returns>
755 virtual public bool IsCompositePart() {
756 var _ret_var = Efl.Object.NativeMethods.efl_composite_part_is_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
757 Eina.Error.RaiseIfUnhandledException();
760 /// <summary>The parent of an object.
761 /// Parents keep references to their children and will release these references when destroyed. In this way, objects can be assigned to a parent upon creation, tying their life cycle so the programmer does not need to worry about destroying the child object. In order to destroy an object before its parent, set the parent to <c>NULL</c> and use efl_unref(), or use efl_del() directly.
763 /// The Eo parent is conceptually user set. That means that a parent should not be changed behind the scenes in an unexpected way.
765 /// For example: If you have a widget which can swallow objects into an internal box, the parent of the swallowed objects should be the widget, not the internal box. The user is not even aware of the existence of the internal box.
766 /// (Since EFL 1.22)</summary>
767 /// <value>The new parent.</value>
768 public Efl.Object Parent {
769 get { return GetParent(); }
770 set { SetParent(value); }
772 /// <summary>The name of the object.
773 /// Every EFL object can have a name. Names may not contain the following characters: / ? * [ ] ! : Using any of these in a name will result in undefined behavior later on. An empty string is considered the same as a <c>NULL</c> string or no string for the name.
774 /// (Since EFL 1.22)</summary>
775 /// <value>The name.</value>
776 public System.String Name {
777 get { return GetName(); }
778 set { SetName(value); }
780 /// <summary>A human readable comment for the object.
781 /// Every EFL object can have a comment. This is intended for developers and debugging. An empty string is considered the same as a <c>NULL</c> string or no string for the comment.
782 /// (Since EFL 1.22)</summary>
783 /// <value>The comment.</value>
784 public System.String Comment {
785 get { return GetComment(); }
786 set { SetComment(value); }
788 /// <summary>Return the global count of freeze events.
789 /// This is the amount of calls to <see cref="Efl.Object.FreezeEventGlobal"/> minus the amount of calls to <see cref="Efl.Object.ThawEventGlobal"/>. EFL will not emit any event while this count is > 0 (Except events marked <c>hot</c>).
790 /// (Since EFL 1.22)</summary>
791 /// <value>The global event freeze count.</value>
792 public static int EventGlobalFreezeCount {
793 get { return GetEventGlobalFreezeCount(); }
795 /// <summary>Return the count of freeze events for this object.
796 /// This is the amount of calls to <see cref="Efl.Object.FreezeEvent"/> minus the amount of calls to <see cref="Efl.Object.ThawEvent"/>. This object will not emit any event while this count is > 0 (Except events marked <c>hot</c>).
797 /// (Since EFL 1.22)</summary>
798 /// <value>The event freeze count of this object.</value>
799 public int EventFreezeCount {
800 get { return GetEventFreezeCount(); }
802 /// <summary><c>true</c> if the object has been finalized, i.e. construction has finished. See the Life Cycle section in this class' description.
803 /// (Since EFL 1.22)</summary>
804 /// <value><c>true</c> if the object is finalized, <c>false</c> otherwise.</value>
805 public bool Finalized {
806 get { return GetFinalized(); }
808 /// <summary><c>true</c> if the object has been invalidated, i.e. it has no parent. See the Life Cycle section in this class' description.
809 /// (Since EFL 1.22)</summary>
810 /// <value><c>true</c> if the object is invalidated, <c>false</c> otherwise.</value>
811 public bool Invalidated {
812 get { return GetInvalidated(); }
814 /// <summary><c>true</c> if the object has started the invalidation phase, but has not finished it yet. Note: This might become <c>true</c> before <see cref="Efl.Object.Invalidate"/> is called. See the Life Cycle section in this class' description.
815 /// (Since EFL 1.22)</summary>
816 /// <value><c>true</c> if the object is invalidating, <c>false</c> otherwise.</value>
817 public bool Invalidating {
818 get { return GetInvalidating(); }
820 /// <summary>Allow an object to be deleted by unref even if it has a parent.
821 /// This simply hides the error message warning that an object being destroyed still has a parent. This property is false by default.
823 /// In a normal object use case, when ownership of an object is given to a caller, said ownership should be released with efl_unref(). If the object has a parent, this will print error messages, as efl_unref() is stealing the ref from the parent.
825 /// Warning: Use this function very carefully, unless you're absolutely sure of what you are doing.
826 /// (Since EFL 1.22)</summary>
827 /// <value>Whether to allow efl_unref() to zero even if <see cref="Efl.Object.Parent"/> is not <c>null</c>.</value>
828 public bool AllowParentUnref {
829 get { return GetAllowParentUnref(); }
830 set { SetAllowParentUnref(value); }
832 private static IntPtr GetEflClassStatic()
834 return Efl.Object.efl_object_class_get();
836 /// <summary>Wrapper for native methods and virtual method delegates.
837 /// For internal use by generated code only.</summary>
838 public class NativeMethods : Efl.Eo.NativeClass
840 private static Efl.Eo.NativeModule Module = new Efl.Eo.NativeModule( efl.Libs.Eo);
841 /// <summary>Gets the list of Eo operations to override.</summary>
842 /// <returns>The list of Eo operations to be overload.</returns>
843 public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
845 var descs = new System.Collections.Generic.List<Efl_Op_Description>();
846 var methods = Efl.Eo.Globals.GetUserMethods(type);
848 if (efl_parent_get_static_delegate == null)
850 efl_parent_get_static_delegate = new efl_parent_get_delegate(parent_get);
853 if (methods.FirstOrDefault(m => m.Name == "GetParent") != null)
855 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_parent_get_static_delegate) });
858 if (efl_parent_set_static_delegate == null)
860 efl_parent_set_static_delegate = new efl_parent_set_delegate(parent_set);
863 if (methods.FirstOrDefault(m => m.Name == "SetParent") != null)
865 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_parent_set"), func = Marshal.GetFunctionPointerForDelegate(efl_parent_set_static_delegate) });
868 if (efl_name_get_static_delegate == null)
870 efl_name_get_static_delegate = new efl_name_get_delegate(name_get);
873 if (methods.FirstOrDefault(m => m.Name == "GetName") != null)
875 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_name_get_static_delegate) });
878 if (efl_name_set_static_delegate == null)
880 efl_name_set_static_delegate = new efl_name_set_delegate(name_set);
883 if (methods.FirstOrDefault(m => m.Name == "SetName") != null)
885 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_name_set"), func = Marshal.GetFunctionPointerForDelegate(efl_name_set_static_delegate) });
888 if (efl_comment_get_static_delegate == null)
890 efl_comment_get_static_delegate = new efl_comment_get_delegate(comment_get);
893 if (methods.FirstOrDefault(m => m.Name == "GetComment") != null)
895 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_comment_get"), func = Marshal.GetFunctionPointerForDelegate(efl_comment_get_static_delegate) });
898 if (efl_comment_set_static_delegate == null)
900 efl_comment_set_static_delegate = new efl_comment_set_delegate(comment_set);
903 if (methods.FirstOrDefault(m => m.Name == "SetComment") != null)
905 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_comment_set"), func = Marshal.GetFunctionPointerForDelegate(efl_comment_set_static_delegate) });
908 if (efl_event_freeze_count_get_static_delegate == null)
910 efl_event_freeze_count_get_static_delegate = new efl_event_freeze_count_get_delegate(event_freeze_count_get);
913 if (methods.FirstOrDefault(m => m.Name == "GetEventFreezeCount") != null)
915 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_event_freeze_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_event_freeze_count_get_static_delegate) });
918 if (efl_finalized_get_static_delegate == null)
920 efl_finalized_get_static_delegate = new efl_finalized_get_delegate(finalized_get);
923 if (methods.FirstOrDefault(m => m.Name == "GetFinalized") != null)
925 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_finalized_get"), func = Marshal.GetFunctionPointerForDelegate(efl_finalized_get_static_delegate) });
928 if (efl_invalidated_get_static_delegate == null)
930 efl_invalidated_get_static_delegate = new efl_invalidated_get_delegate(invalidated_get);
933 if (methods.FirstOrDefault(m => m.Name == "GetInvalidated") != null)
935 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_invalidated_get"), func = Marshal.GetFunctionPointerForDelegate(efl_invalidated_get_static_delegate) });
938 if (efl_invalidating_get_static_delegate == null)
940 efl_invalidating_get_static_delegate = new efl_invalidating_get_delegate(invalidating_get);
943 if (methods.FirstOrDefault(m => m.Name == "GetInvalidating") != null)
945 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_invalidating_get"), func = Marshal.GetFunctionPointerForDelegate(efl_invalidating_get_static_delegate) });
948 if (efl_allow_parent_unref_get_static_delegate == null)
950 efl_allow_parent_unref_get_static_delegate = new efl_allow_parent_unref_get_delegate(allow_parent_unref_get);
953 if (methods.FirstOrDefault(m => m.Name == "GetAllowParentUnref") != null)
955 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_allow_parent_unref_get"), func = Marshal.GetFunctionPointerForDelegate(efl_allow_parent_unref_get_static_delegate) });
958 if (efl_allow_parent_unref_set_static_delegate == null)
960 efl_allow_parent_unref_set_static_delegate = new efl_allow_parent_unref_set_delegate(allow_parent_unref_set);
963 if (methods.FirstOrDefault(m => m.Name == "SetAllowParentUnref") != null)
965 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_allow_parent_unref_set"), func = Marshal.GetFunctionPointerForDelegate(efl_allow_parent_unref_set_static_delegate) });
968 if (efl_debug_name_override_static_delegate == null)
970 efl_debug_name_override_static_delegate = new efl_debug_name_override_delegate(debug_name_override);
973 if (methods.FirstOrDefault(m => m.Name == "DebugNameOverride") != null)
975 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_debug_name_override"), func = Marshal.GetFunctionPointerForDelegate(efl_debug_name_override_static_delegate) });
978 if (efl_provider_find_static_delegate == null)
980 efl_provider_find_static_delegate = new efl_provider_find_delegate(provider_find);
983 if (methods.FirstOrDefault(m => m.Name == "FindProvider") != null)
985 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_provider_find"), func = Marshal.GetFunctionPointerForDelegate(efl_provider_find_static_delegate) });
988 if (efl_destructor_static_delegate == null)
990 efl_destructor_static_delegate = new efl_destructor_delegate(destructor);
993 if (methods.FirstOrDefault(m => m.Name == "Destructor") != null)
995 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_destructor"), func = Marshal.GetFunctionPointerForDelegate(efl_destructor_static_delegate) });
998 if (efl_finalize_static_delegate == null)
1000 efl_finalize_static_delegate = new efl_finalize_delegate(finalize);
1003 if (methods.FirstOrDefault(m => m.Name == "FinalizeAdd") != null)
1005 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_finalize"), func = Marshal.GetFunctionPointerForDelegate(efl_finalize_static_delegate) });
1008 if (efl_invalidate_static_delegate == null)
1010 efl_invalidate_static_delegate = new efl_invalidate_delegate(invalidate);
1013 if (methods.FirstOrDefault(m => m.Name == "Invalidate") != null)
1015 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_invalidate"), func = Marshal.GetFunctionPointerForDelegate(efl_invalidate_static_delegate) });
1018 if (efl_name_find_static_delegate == null)
1020 efl_name_find_static_delegate = new efl_name_find_delegate(name_find);
1023 if (methods.FirstOrDefault(m => m.Name == "FindName") != null)
1025 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_name_find"), func = Marshal.GetFunctionPointerForDelegate(efl_name_find_static_delegate) });
1028 if (efl_event_thaw_static_delegate == null)
1030 efl_event_thaw_static_delegate = new efl_event_thaw_delegate(event_thaw);
1033 if (methods.FirstOrDefault(m => m.Name == "ThawEvent") != null)
1035 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_event_thaw"), func = Marshal.GetFunctionPointerForDelegate(efl_event_thaw_static_delegate) });
1038 if (efl_event_freeze_static_delegate == null)
1040 efl_event_freeze_static_delegate = new efl_event_freeze_delegate(event_freeze);
1043 if (methods.FirstOrDefault(m => m.Name == "FreezeEvent") != null)
1045 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_event_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_event_freeze_static_delegate) });
1048 if (efl_event_callback_stop_static_delegate == null)
1050 efl_event_callback_stop_static_delegate = new efl_event_callback_stop_delegate(event_callback_stop);
1053 if (methods.FirstOrDefault(m => m.Name == "EventCallbackStop") != null)
1055 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_event_callback_stop"), func = Marshal.GetFunctionPointerForDelegate(efl_event_callback_stop_static_delegate) });
1058 if (efl_event_callback_forwarder_del_static_delegate == null)
1060 efl_event_callback_forwarder_del_static_delegate = new efl_event_callback_forwarder_del_delegate(event_callback_forwarder_del);
1063 if (methods.FirstOrDefault(m => m.Name == "DelEventCallbackForwarder") != null)
1065 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_event_callback_forwarder_del"), func = Marshal.GetFunctionPointerForDelegate(efl_event_callback_forwarder_del_static_delegate) });
1068 if (efl_children_iterator_new_static_delegate == null)
1070 efl_children_iterator_new_static_delegate = new efl_children_iterator_new_delegate(children_iterator_new);
1073 if (methods.FirstOrDefault(m => m.Name == "NewChildrenIterator") != null)
1075 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_children_iterator_new"), func = Marshal.GetFunctionPointerForDelegate(efl_children_iterator_new_static_delegate) });
1078 if (efl_composite_attach_static_delegate == null)
1080 efl_composite_attach_static_delegate = new efl_composite_attach_delegate(composite_attach);
1083 if (methods.FirstOrDefault(m => m.Name == "AttachComposite") != null)
1085 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_composite_attach"), func = Marshal.GetFunctionPointerForDelegate(efl_composite_attach_static_delegate) });
1088 if (efl_composite_detach_static_delegate == null)
1090 efl_composite_detach_static_delegate = new efl_composite_detach_delegate(composite_detach);
1093 if (methods.FirstOrDefault(m => m.Name == "CompositeDetach") != null)
1095 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_composite_detach"), func = Marshal.GetFunctionPointerForDelegate(efl_composite_detach_static_delegate) });
1098 if (efl_composite_part_is_static_delegate == null)
1100 efl_composite_part_is_static_delegate = new efl_composite_part_is_delegate(composite_part_is);
1103 if (methods.FirstOrDefault(m => m.Name == "IsCompositePart") != null)
1105 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_composite_part_is"), func = Marshal.GetFunctionPointerForDelegate(efl_composite_part_is_static_delegate) });
1110 /// <summary>Returns the Eo class for the native methods of this class.</summary>
1111 /// <returns>The native class pointer.</returns>
1112 public override IntPtr GetEflClass()
1114 return Efl.Object.efl_object_class_get();
1117 #pragma warning disable CA1707, SA1300, SA1600
1119 [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1120 private delegate Efl.Object efl_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
1122 [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1123 public delegate Efl.Object efl_parent_get_api_delegate(System.IntPtr obj);
1125 public static Efl.Eo.FunctionWrapper<efl_parent_get_api_delegate> efl_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_parent_get_api_delegate>(Module, "efl_parent_get");
1127 private static Efl.Object parent_get(System.IntPtr obj, System.IntPtr pd)
1129 Eina.Log.Debug("function efl_parent_get was called");
1130 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1131 if (wrapper != null)
1133 Efl.Object _ret_var = default(Efl.Object);
1136 _ret_var = ((Object)wrapper).GetParent();
1140 Eina.Log.Warning($"Callback error: {e.ToString()}");
1141 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1149 return efl_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1153 private static efl_parent_get_delegate efl_parent_get_static_delegate;
1156 private delegate void efl_parent_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object parent);
1159 public delegate void efl_parent_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object parent);
1161 public static Efl.Eo.FunctionWrapper<efl_parent_set_api_delegate> efl_parent_set_ptr = new Efl.Eo.FunctionWrapper<efl_parent_set_api_delegate>(Module, "efl_parent_set");
1163 private static void parent_set(System.IntPtr obj, System.IntPtr pd, Efl.Object parent)
1165 Eina.Log.Debug("function efl_parent_set was called");
1166 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1167 if (wrapper != null)
1172 ((Object)wrapper).SetParent(parent);
1176 Eina.Log.Warning($"Callback error: {e.ToString()}");
1177 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1184 efl_parent_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), parent);
1188 private static efl_parent_set_delegate efl_parent_set_static_delegate;
1190 [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]
1191 private delegate System.String efl_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
1193 [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]
1194 public delegate System.String efl_name_get_api_delegate(System.IntPtr obj);
1196 public static Efl.Eo.FunctionWrapper<efl_name_get_api_delegate> efl_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_name_get_api_delegate>(Module, "efl_name_get");
1198 private static System.String name_get(System.IntPtr obj, System.IntPtr pd)
1200 Eina.Log.Debug("function efl_name_get was called");
1201 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1202 if (wrapper != null)
1204 System.String _ret_var = default(System.String);
1207 _ret_var = ((Object)wrapper).GetName();
1211 Eina.Log.Warning($"Callback error: {e.ToString()}");
1212 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1220 return efl_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1224 private static efl_name_get_delegate efl_name_get_static_delegate;
1227 private delegate void efl_name_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String name);
1230 public delegate void efl_name_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String name);
1232 public static Efl.Eo.FunctionWrapper<efl_name_set_api_delegate> efl_name_set_ptr = new Efl.Eo.FunctionWrapper<efl_name_set_api_delegate>(Module, "efl_name_set");
1234 private static void name_set(System.IntPtr obj, System.IntPtr pd, System.String name)
1236 Eina.Log.Debug("function efl_name_set was called");
1237 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1238 if (wrapper != null)
1243 ((Object)wrapper).SetName(name);
1247 Eina.Log.Warning($"Callback error: {e.ToString()}");
1248 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1255 efl_name_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), name);
1259 private static efl_name_set_delegate efl_name_set_static_delegate;
1261 [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]
1262 private delegate System.String efl_comment_get_delegate(System.IntPtr obj, System.IntPtr pd);
1264 [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]
1265 public delegate System.String efl_comment_get_api_delegate(System.IntPtr obj);
1267 public static Efl.Eo.FunctionWrapper<efl_comment_get_api_delegate> efl_comment_get_ptr = new Efl.Eo.FunctionWrapper<efl_comment_get_api_delegate>(Module, "efl_comment_get");
1269 private static System.String comment_get(System.IntPtr obj, System.IntPtr pd)
1271 Eina.Log.Debug("function efl_comment_get was called");
1272 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1273 if (wrapper != null)
1275 System.String _ret_var = default(System.String);
1278 _ret_var = ((Object)wrapper).GetComment();
1282 Eina.Log.Warning($"Callback error: {e.ToString()}");
1283 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1291 return efl_comment_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1295 private static efl_comment_get_delegate efl_comment_get_static_delegate;
1298 private delegate void efl_comment_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String comment);
1301 public delegate void efl_comment_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String comment);
1303 public static Efl.Eo.FunctionWrapper<efl_comment_set_api_delegate> efl_comment_set_ptr = new Efl.Eo.FunctionWrapper<efl_comment_set_api_delegate>(Module, "efl_comment_set");
1305 private static void comment_set(System.IntPtr obj, System.IntPtr pd, System.String comment)
1307 Eina.Log.Debug("function efl_comment_set was called");
1308 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1309 if (wrapper != null)
1314 ((Object)wrapper).SetComment(comment);
1318 Eina.Log.Warning($"Callback error: {e.ToString()}");
1319 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1326 efl_comment_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), comment);
1330 private static efl_comment_set_delegate efl_comment_set_static_delegate;
1333 private delegate int efl_event_global_freeze_count_get_delegate();
1336 public delegate int efl_event_global_freeze_count_get_api_delegate();
1338 public static Efl.Eo.FunctionWrapper<efl_event_global_freeze_count_get_api_delegate> efl_event_global_freeze_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_event_global_freeze_count_get_api_delegate>(Module, "efl_event_global_freeze_count_get");
1340 private static int event_global_freeze_count_get(System.IntPtr obj, System.IntPtr pd)
1342 Eina.Log.Debug("function efl_event_global_freeze_count_get was called");
1343 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1344 if (wrapper != null)
1346 int _ret_var = default(int);
1349 _ret_var = Object.GetEventGlobalFreezeCount();
1353 Eina.Log.Warning($"Callback error: {e.ToString()}");
1354 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1362 return efl_event_global_freeze_count_get_ptr.Value.Delegate();
1367 private delegate int efl_event_freeze_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
1370 public delegate int efl_event_freeze_count_get_api_delegate(System.IntPtr obj);
1372 public static Efl.Eo.FunctionWrapper<efl_event_freeze_count_get_api_delegate> efl_event_freeze_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_event_freeze_count_get_api_delegate>(Module, "efl_event_freeze_count_get");
1374 private static int event_freeze_count_get(System.IntPtr obj, System.IntPtr pd)
1376 Eina.Log.Debug("function efl_event_freeze_count_get was called");
1377 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1378 if (wrapper != null)
1380 int _ret_var = default(int);
1383 _ret_var = ((Object)wrapper).GetEventFreezeCount();
1387 Eina.Log.Warning($"Callback error: {e.ToString()}");
1388 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1396 return efl_event_freeze_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1400 private static efl_event_freeze_count_get_delegate efl_event_freeze_count_get_static_delegate;
1402 [return: MarshalAs(UnmanagedType.U1)]
1403 private delegate bool efl_finalized_get_delegate(System.IntPtr obj, System.IntPtr pd);
1405 [return: MarshalAs(UnmanagedType.U1)]
1406 public delegate bool efl_finalized_get_api_delegate(System.IntPtr obj);
1408 public static Efl.Eo.FunctionWrapper<efl_finalized_get_api_delegate> efl_finalized_get_ptr = new Efl.Eo.FunctionWrapper<efl_finalized_get_api_delegate>(Module, "efl_finalized_get");
1410 private static bool finalized_get(System.IntPtr obj, System.IntPtr pd)
1412 Eina.Log.Debug("function efl_finalized_get was called");
1413 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1414 if (wrapper != null)
1416 bool _ret_var = default(bool);
1419 _ret_var = ((Object)wrapper).GetFinalized();
1423 Eina.Log.Warning($"Callback error: {e.ToString()}");
1424 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1432 return efl_finalized_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1436 private static efl_finalized_get_delegate efl_finalized_get_static_delegate;
1438 [return: MarshalAs(UnmanagedType.U1)]
1439 private delegate bool efl_invalidated_get_delegate(System.IntPtr obj, System.IntPtr pd);
1441 [return: MarshalAs(UnmanagedType.U1)]
1442 public delegate bool efl_invalidated_get_api_delegate(System.IntPtr obj);
1444 public static Efl.Eo.FunctionWrapper<efl_invalidated_get_api_delegate> efl_invalidated_get_ptr = new Efl.Eo.FunctionWrapper<efl_invalidated_get_api_delegate>(Module, "efl_invalidated_get");
1446 private static bool invalidated_get(System.IntPtr obj, System.IntPtr pd)
1448 Eina.Log.Debug("function efl_invalidated_get was called");
1449 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1450 if (wrapper != null)
1452 bool _ret_var = default(bool);
1455 _ret_var = ((Object)wrapper).GetInvalidated();
1459 Eina.Log.Warning($"Callback error: {e.ToString()}");
1460 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1468 return efl_invalidated_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1472 private static efl_invalidated_get_delegate efl_invalidated_get_static_delegate;
1474 [return: MarshalAs(UnmanagedType.U1)]
1475 private delegate bool efl_invalidating_get_delegate(System.IntPtr obj, System.IntPtr pd);
1477 [return: MarshalAs(UnmanagedType.U1)]
1478 public delegate bool efl_invalidating_get_api_delegate(System.IntPtr obj);
1480 public static Efl.Eo.FunctionWrapper<efl_invalidating_get_api_delegate> efl_invalidating_get_ptr = new Efl.Eo.FunctionWrapper<efl_invalidating_get_api_delegate>(Module, "efl_invalidating_get");
1482 private static bool invalidating_get(System.IntPtr obj, System.IntPtr pd)
1484 Eina.Log.Debug("function efl_invalidating_get was called");
1485 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1486 if (wrapper != null)
1488 bool _ret_var = default(bool);
1491 _ret_var = ((Object)wrapper).GetInvalidating();
1495 Eina.Log.Warning($"Callback error: {e.ToString()}");
1496 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1504 return efl_invalidating_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1508 private static efl_invalidating_get_delegate efl_invalidating_get_static_delegate;
1510 [return: MarshalAs(UnmanagedType.U1)]
1511 private delegate bool efl_allow_parent_unref_get_delegate(System.IntPtr obj, System.IntPtr pd);
1513 [return: MarshalAs(UnmanagedType.U1)]
1514 public delegate bool efl_allow_parent_unref_get_api_delegate(System.IntPtr obj);
1516 public static Efl.Eo.FunctionWrapper<efl_allow_parent_unref_get_api_delegate> efl_allow_parent_unref_get_ptr = new Efl.Eo.FunctionWrapper<efl_allow_parent_unref_get_api_delegate>(Module, "efl_allow_parent_unref_get");
1518 private static bool allow_parent_unref_get(System.IntPtr obj, System.IntPtr pd)
1520 Eina.Log.Debug("function efl_allow_parent_unref_get was called");
1521 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1522 if (wrapper != null)
1524 bool _ret_var = default(bool);
1527 _ret_var = ((Object)wrapper).GetAllowParentUnref();
1531 Eina.Log.Warning($"Callback error: {e.ToString()}");
1532 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1540 return efl_allow_parent_unref_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1544 private static efl_allow_parent_unref_get_delegate efl_allow_parent_unref_get_static_delegate;
1547 private delegate void efl_allow_parent_unref_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.U1)] bool allow);
1550 public delegate void efl_allow_parent_unref_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.U1)] bool allow);
1552 public static Efl.Eo.FunctionWrapper<efl_allow_parent_unref_set_api_delegate> efl_allow_parent_unref_set_ptr = new Efl.Eo.FunctionWrapper<efl_allow_parent_unref_set_api_delegate>(Module, "efl_allow_parent_unref_set");
1554 private static void allow_parent_unref_set(System.IntPtr obj, System.IntPtr pd, bool allow)
1556 Eina.Log.Debug("function efl_allow_parent_unref_set was called");
1557 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1558 if (wrapper != null)
1563 ((Object)wrapper).SetAllowParentUnref(allow);
1567 Eina.Log.Warning($"Callback error: {e.ToString()}");
1568 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1575 efl_allow_parent_unref_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), allow);
1579 private static efl_allow_parent_unref_set_delegate efl_allow_parent_unref_set_static_delegate;
1582 private delegate void efl_debug_name_override_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StrbufKeepOwnershipMarshaler))] Eina.Strbuf sb);
1585 public delegate void efl_debug_name_override_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StrbufKeepOwnershipMarshaler))] Eina.Strbuf sb);
1587 public static Efl.Eo.FunctionWrapper<efl_debug_name_override_api_delegate> efl_debug_name_override_ptr = new Efl.Eo.FunctionWrapper<efl_debug_name_override_api_delegate>(Module, "efl_debug_name_override");
1589 private static void debug_name_override(System.IntPtr obj, System.IntPtr pd, Eina.Strbuf sb)
1591 Eina.Log.Debug("function efl_debug_name_override was called");
1592 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1593 if (wrapper != null)
1598 ((Object)wrapper).DebugNameOverride(sb);
1602 Eina.Log.Warning($"Callback error: {e.ToString()}");
1603 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1610 efl_debug_name_override_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), sb);
1614 private static efl_debug_name_override_delegate efl_debug_name_override_static_delegate;
1616 [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1617 private delegate Efl.Object efl_provider_find_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))] Type klass);
1619 [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1620 public delegate Efl.Object efl_provider_find_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))] Type klass);
1622 public static Efl.Eo.FunctionWrapper<efl_provider_find_api_delegate> efl_provider_find_ptr = new Efl.Eo.FunctionWrapper<efl_provider_find_api_delegate>(Module, "efl_provider_find");
1624 private static Efl.Object provider_find(System.IntPtr obj, System.IntPtr pd, Type klass)
1626 Eina.Log.Debug("function efl_provider_find was called");
1627 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1628 if (wrapper != null)
1630 Efl.Object _ret_var = default(Efl.Object);
1633 _ret_var = ((Object)wrapper).FindProvider(klass);
1637 Eina.Log.Warning($"Callback error: {e.ToString()}");
1638 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1646 return efl_provider_find_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), klass);
1650 private static efl_provider_find_delegate efl_provider_find_static_delegate;
1653 private delegate void efl_destructor_delegate(System.IntPtr obj, System.IntPtr pd);
1656 public delegate void efl_destructor_api_delegate(System.IntPtr obj);
1658 public static Efl.Eo.FunctionWrapper<efl_destructor_api_delegate> efl_destructor_ptr = new Efl.Eo.FunctionWrapper<efl_destructor_api_delegate>(Module, "efl_destructor");
1660 private static void destructor(System.IntPtr obj, System.IntPtr pd)
1662 Eina.Log.Debug("function efl_destructor was called");
1663 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1664 if (wrapper != null)
1669 ((Object)wrapper).Destructor();
1673 Eina.Log.Warning($"Callback error: {e.ToString()}");
1674 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1681 efl_destructor_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1685 private static efl_destructor_delegate efl_destructor_static_delegate;
1687 [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1688 private delegate Efl.Object efl_finalize_delegate(System.IntPtr obj, System.IntPtr pd);
1690 [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1691 public delegate Efl.Object efl_finalize_api_delegate(System.IntPtr obj);
1693 public static Efl.Eo.FunctionWrapper<efl_finalize_api_delegate> efl_finalize_ptr = new Efl.Eo.FunctionWrapper<efl_finalize_api_delegate>(Module, "efl_finalize");
1695 private static Efl.Object finalize(System.IntPtr obj, System.IntPtr pd)
1697 Eina.Log.Debug("function efl_finalize was called");
1698 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1699 if (wrapper != null)
1701 Efl.Object _ret_var = default(Efl.Object);
1704 _ret_var = ((Object)wrapper).FinalizeAdd();
1708 Eina.Log.Warning($"Callback error: {e.ToString()}");
1709 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1717 return efl_finalize_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1721 private static efl_finalize_delegate efl_finalize_static_delegate;
1724 private delegate void efl_invalidate_delegate(System.IntPtr obj, System.IntPtr pd);
1727 public delegate void efl_invalidate_api_delegate(System.IntPtr obj);
1729 public static Efl.Eo.FunctionWrapper<efl_invalidate_api_delegate> efl_invalidate_ptr = new Efl.Eo.FunctionWrapper<efl_invalidate_api_delegate>(Module, "efl_invalidate");
1731 private static void invalidate(System.IntPtr obj, System.IntPtr pd)
1733 Eina.Log.Debug("function efl_invalidate was called");
1734 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1735 if (wrapper != null)
1740 ((Object)wrapper).Invalidate();
1744 Eina.Log.Warning($"Callback error: {e.ToString()}");
1745 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1752 efl_invalidate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1756 private static efl_invalidate_delegate efl_invalidate_static_delegate;
1758 [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1759 private delegate Efl.Object efl_name_find_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String search);
1761 [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1762 public delegate Efl.Object efl_name_find_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String search);
1764 public static Efl.Eo.FunctionWrapper<efl_name_find_api_delegate> efl_name_find_ptr = new Efl.Eo.FunctionWrapper<efl_name_find_api_delegate>(Module, "efl_name_find");
1766 private static Efl.Object name_find(System.IntPtr obj, System.IntPtr pd, System.String search)
1768 Eina.Log.Debug("function efl_name_find was called");
1769 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1770 if (wrapper != null)
1772 Efl.Object _ret_var = default(Efl.Object);
1775 _ret_var = ((Object)wrapper).FindName(search);
1779 Eina.Log.Warning($"Callback error: {e.ToString()}");
1780 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1788 return efl_name_find_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), search);
1792 private static efl_name_find_delegate efl_name_find_static_delegate;
1795 private delegate void efl_event_thaw_delegate(System.IntPtr obj, System.IntPtr pd);
1798 public delegate void efl_event_thaw_api_delegate(System.IntPtr obj);
1800 public static Efl.Eo.FunctionWrapper<efl_event_thaw_api_delegate> efl_event_thaw_ptr = new Efl.Eo.FunctionWrapper<efl_event_thaw_api_delegate>(Module, "efl_event_thaw");
1802 private static void event_thaw(System.IntPtr obj, System.IntPtr pd)
1804 Eina.Log.Debug("function efl_event_thaw was called");
1805 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1806 if (wrapper != null)
1811 ((Object)wrapper).ThawEvent();
1815 Eina.Log.Warning($"Callback error: {e.ToString()}");
1816 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1823 efl_event_thaw_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1827 private static efl_event_thaw_delegate efl_event_thaw_static_delegate;
1830 private delegate void efl_event_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
1833 public delegate void efl_event_freeze_api_delegate(System.IntPtr obj);
1835 public static Efl.Eo.FunctionWrapper<efl_event_freeze_api_delegate> efl_event_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_event_freeze_api_delegate>(Module, "efl_event_freeze");
1837 private static void event_freeze(System.IntPtr obj, System.IntPtr pd)
1839 Eina.Log.Debug("function efl_event_freeze was called");
1840 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1841 if (wrapper != null)
1846 ((Object)wrapper).FreezeEvent();
1850 Eina.Log.Warning($"Callback error: {e.ToString()}");
1851 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1858 efl_event_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1862 private static efl_event_freeze_delegate efl_event_freeze_static_delegate;
1865 private delegate void efl_event_global_thaw_delegate();
1868 public delegate void efl_event_global_thaw_api_delegate();
1870 public static Efl.Eo.FunctionWrapper<efl_event_global_thaw_api_delegate> efl_event_global_thaw_ptr = new Efl.Eo.FunctionWrapper<efl_event_global_thaw_api_delegate>(Module, "efl_event_global_thaw");
1872 private static void event_global_thaw(System.IntPtr obj, System.IntPtr pd)
1874 Eina.Log.Debug("function efl_event_global_thaw was called");
1875 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1876 if (wrapper != null)
1881 Object.ThawEventGlobal();
1885 Eina.Log.Warning($"Callback error: {e.ToString()}");
1886 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1893 efl_event_global_thaw_ptr.Value.Delegate();
1898 private delegate void efl_event_global_freeze_delegate();
1901 public delegate void efl_event_global_freeze_api_delegate();
1903 public static Efl.Eo.FunctionWrapper<efl_event_global_freeze_api_delegate> efl_event_global_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_event_global_freeze_api_delegate>(Module, "efl_event_global_freeze");
1905 private static void event_global_freeze(System.IntPtr obj, System.IntPtr pd)
1907 Eina.Log.Debug("function efl_event_global_freeze was called");
1908 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1909 if (wrapper != null)
1914 Object.FreezeEventGlobal();
1918 Eina.Log.Warning($"Callback error: {e.ToString()}");
1919 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1926 efl_event_global_freeze_ptr.Value.Delegate();
1931 private delegate void efl_event_callback_stop_delegate(System.IntPtr obj, System.IntPtr pd);
1934 public delegate void efl_event_callback_stop_api_delegate(System.IntPtr obj);
1936 public static Efl.Eo.FunctionWrapper<efl_event_callback_stop_api_delegate> efl_event_callback_stop_ptr = new Efl.Eo.FunctionWrapper<efl_event_callback_stop_api_delegate>(Module, "efl_event_callback_stop");
1938 private static void event_callback_stop(System.IntPtr obj, System.IntPtr pd)
1940 Eina.Log.Debug("function efl_event_callback_stop was called");
1941 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1942 if (wrapper != null)
1947 ((Object)wrapper).EventCallbackStop();
1951 Eina.Log.Warning($"Callback error: {e.ToString()}");
1952 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1959 efl_event_callback_stop_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1963 private static efl_event_callback_stop_delegate efl_event_callback_stop_static_delegate;
1966 private delegate void efl_event_callback_forwarder_del_delegate(System.IntPtr obj, System.IntPtr pd, System.IntPtr desc, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object new_obj);
1969 public delegate void efl_event_callback_forwarder_del_api_delegate(System.IntPtr obj, System.IntPtr desc, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object new_obj);
1971 public static Efl.Eo.FunctionWrapper<efl_event_callback_forwarder_del_api_delegate> efl_event_callback_forwarder_del_ptr = new Efl.Eo.FunctionWrapper<efl_event_callback_forwarder_del_api_delegate>(Module, "efl_event_callback_forwarder_del");
1973 private static void event_callback_forwarder_del(System.IntPtr obj, System.IntPtr pd, System.IntPtr desc, Efl.Object new_obj)
1975 Eina.Log.Debug("function efl_event_callback_forwarder_del was called");
1976 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1977 if (wrapper != null)
1979 var _in_desc = Eina.PrimitiveConversion.PointerToManaged<Efl.EventDescription>(desc);
1983 ((Object)wrapper).DelEventCallbackForwarder(_in_desc, new_obj);
1987 Eina.Log.Warning($"Callback error: {e.ToString()}");
1988 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1995 efl_event_callback_forwarder_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), desc, new_obj);
1999 private static efl_event_callback_forwarder_del_delegate efl_event_callback_forwarder_del_static_delegate;
2002 private delegate System.IntPtr efl_children_iterator_new_delegate(System.IntPtr obj, System.IntPtr pd);
2005 public delegate System.IntPtr efl_children_iterator_new_api_delegate(System.IntPtr obj);
2007 public static Efl.Eo.FunctionWrapper<efl_children_iterator_new_api_delegate> efl_children_iterator_new_ptr = new Efl.Eo.FunctionWrapper<efl_children_iterator_new_api_delegate>(Module, "efl_children_iterator_new");
2009 private static System.IntPtr children_iterator_new(System.IntPtr obj, System.IntPtr pd)
2011 Eina.Log.Debug("function efl_children_iterator_new was called");
2012 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
2013 if (wrapper != null)
2015 Eina.Iterator<Efl.Object> _ret_var = default(Eina.Iterator<Efl.Object>);
2018 _ret_var = ((Object)wrapper).NewChildrenIterator();
2022 Eina.Log.Warning($"Callback error: {e.ToString()}");
2023 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
2026 _ret_var.Own = false; return _ret_var.Handle;
2031 return efl_children_iterator_new_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
2035 private static efl_children_iterator_new_delegate efl_children_iterator_new_static_delegate;
2037 [return: MarshalAs(UnmanagedType.U1)]
2038 private delegate bool efl_composite_attach_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object comp_obj);
2040 [return: MarshalAs(UnmanagedType.U1)]
2041 public delegate bool efl_composite_attach_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object comp_obj);
2043 public static Efl.Eo.FunctionWrapper<efl_composite_attach_api_delegate> efl_composite_attach_ptr = new Efl.Eo.FunctionWrapper<efl_composite_attach_api_delegate>(Module, "efl_composite_attach");
2045 private static bool composite_attach(System.IntPtr obj, System.IntPtr pd, Efl.Object comp_obj)
2047 Eina.Log.Debug("function efl_composite_attach was called");
2048 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
2049 if (wrapper != null)
2051 bool _ret_var = default(bool);
2054 _ret_var = ((Object)wrapper).AttachComposite(comp_obj);
2058 Eina.Log.Warning($"Callback error: {e.ToString()}");
2059 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
2067 return efl_composite_attach_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), comp_obj);
2071 private static efl_composite_attach_delegate efl_composite_attach_static_delegate;
2073 [return: MarshalAs(UnmanagedType.U1)]
2074 private delegate bool efl_composite_detach_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object comp_obj);
2076 [return: MarshalAs(UnmanagedType.U1)]
2077 public delegate bool efl_composite_detach_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object comp_obj);
2079 public static Efl.Eo.FunctionWrapper<efl_composite_detach_api_delegate> efl_composite_detach_ptr = new Efl.Eo.FunctionWrapper<efl_composite_detach_api_delegate>(Module, "efl_composite_detach");
2081 private static bool composite_detach(System.IntPtr obj, System.IntPtr pd, Efl.Object comp_obj)
2083 Eina.Log.Debug("function efl_composite_detach was called");
2084 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
2085 if (wrapper != null)
2087 bool _ret_var = default(bool);
2090 _ret_var = ((Object)wrapper).CompositeDetach(comp_obj);
2094 Eina.Log.Warning($"Callback error: {e.ToString()}");
2095 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
2103 return efl_composite_detach_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), comp_obj);
2107 private static efl_composite_detach_delegate efl_composite_detach_static_delegate;
2109 [return: MarshalAs(UnmanagedType.U1)]
2110 private delegate bool efl_composite_part_is_delegate(System.IntPtr obj, System.IntPtr pd);
2112 [return: MarshalAs(UnmanagedType.U1)]
2113 public delegate bool efl_composite_part_is_api_delegate(System.IntPtr obj);
2115 public static Efl.Eo.FunctionWrapper<efl_composite_part_is_api_delegate> efl_composite_part_is_ptr = new Efl.Eo.FunctionWrapper<efl_composite_part_is_api_delegate>(Module, "efl_composite_part_is");
2117 private static bool composite_part_is(System.IntPtr obj, System.IntPtr pd)
2119 Eina.Log.Debug("function efl_composite_part_is was called");
2120 Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
2121 if (wrapper != null)
2123 bool _ret_var = default(bool);
2126 _ret_var = ((Object)wrapper).IsCompositePart();
2130 Eina.Log.Warning($"Callback error: {e.ToString()}");
2131 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
2139 return efl_composite_part_is_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
2143 private static efl_composite_part_is_delegate efl_composite_part_is_static_delegate;
2145 #pragma warning restore CA1707, SA1300, SA1600
2153 /// <summary>A parameter passed in event callbacks holding extra event parameters.
2154 /// This is the full event information passed to callbacks in C.
2155 /// (Since EFL 1.22)</summary>
2156 [StructLayout(LayoutKind.Sequential)]
2159 /// <summary>The object the callback was called on.
2160 /// (Since EFL 1.22)</summary>
2161 public Efl.Object Object;
2162 /// <summary>The event description.
2163 /// (Since EFL 1.22)</summary>
2164 public Efl.EventDescription Desc;
2165 /// <summary>Extra event information passed by the event caller. Must be cast to the event type declared in the EO file. Keep in mind that: 1) Objects are passed as a normal Eo*. Event subscribers can call functions on these objects. 2) Structs, built-in types and containers are passed as const pointers, with one level of indirection.
2166 /// (Since EFL 1.22)</summary>
2167 public System.IntPtr Info;
2168 ///<summary>Constructor for Event.</summary>
2170 Efl.Object Object = default(Efl.Object),
2171 Efl.EventDescription Desc = default(Efl.EventDescription),
2172 System.IntPtr Info = default(System.IntPtr) )
2174 this.Object = Object;
2179 public static implicit operator Event(IntPtr ptr)
2181 var tmp = (Event.NativeStruct)Marshal.PtrToStructure(ptr, typeof(Event.NativeStruct));
2185 ///<summary>Internal wrapper for struct Event.</summary>
2186 [StructLayout(LayoutKind.Sequential)]
2187 public struct NativeStruct
2189 ///<summary>Internal wrapper for field Object</summary>
2190 public System.IntPtr Object;
2192 public System.IntPtr Desc;
2194 public System.IntPtr Info;
2195 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
2196 public static implicit operator Event.NativeStruct(Event _external_struct)
2198 var _internal_struct = new Event.NativeStruct();
2199 _internal_struct.Object = _external_struct.Object?.NativeHandle ?? System.IntPtr.Zero;
2200 _internal_struct.Desc = Eina.PrimitiveConversion.ManagedToPointerAlloc(_external_struct.Desc);
2201 _internal_struct.Info = _external_struct.Info;
2202 return _internal_struct;
2205 ///<summary>Implicit conversion to the managed representation.</summary>
2206 public static implicit operator Event(Event.NativeStruct _internal_struct)
2208 var _external_struct = new Event();
2210 _external_struct.Object = (Efl.Object) Efl.Eo.Globals.CreateWrapperFor(_internal_struct.Object);
2211 _external_struct.Desc = Eina.PrimitiveConversion.PointerToManaged<Efl.EventDescription>(_internal_struct.Desc);
2212 _external_struct.Info = _internal_struct.Info;
2213 return _external_struct;