private static void observer_clean(System.IntPtr obj, System.IntPtr pd, Efl.Observer obs) { Eina.Log.Debug("function efl_observable_observer_clean was called"); Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd); if (wrapper != null) { try { ((Observable)wrapper).ObserverClean(obs); } catch (Exception e) { Eina.Log.Warning($"Callback error: {e.ToString()}"); Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION); } } else { efl_observable_observer_clean_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), obs); } }
/// <summary>Add an observer to a group of observers. /// Note: Observers that observe this observable are grouped by the <c>key</c> and an observer can belong to multiple groups at the same time. /// 1.19</summary> /// <param name="key">A key to classify observer groups</param> /// <param name="obs">An observer object</param> /// <returns></returns> virtual public void AddObserver(System.String key, Efl.Observer obs) { Efl.ObservableNativeInherit.efl_observable_observer_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key, obs); Eina.Error.RaiseIfUnhandledException(); }
/// <summary>Clear an observer from all groups of observers. /// 1.19</summary> /// <param name="obs">An observer object</param> /// <returns></returns> virtual public void ObserverClean(Efl.Observer obs) { Efl.ObservableNativeInherit.efl_observable_observer_clean_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), obs); Eina.Error.RaiseIfUnhandledException(); }