///<summary>Method to raise event PropertyBoundEvt.</summary> public void On_PropertyBoundEvt(Efl.Ui.IPropertyBindPropertyBoundEvt_Args e) { EventHandler <Efl.Ui.IPropertyBindPropertyBoundEvt_Args> evt; lock (eventLock) { evt = (EventHandler <Efl.Ui.IPropertyBindPropertyBoundEvt_Args>)eventHandlers[PropertyBoundEvtKey]; } evt?.Invoke(this, e); }
private void on_PropertyBoundEvt_NativeCallback(System.IntPtr data, ref Efl.Event.NativeStruct evt) { Efl.Ui.IPropertyBindPropertyBoundEvt_Args args = new Efl.Ui.IPropertyBindPropertyBoundEvt_Args(); args.arg = Eina.StringConversion.NativeUtf8ToManagedString(evt.Info); try { On_PropertyBoundEvt(args); } catch (Exception e) { Eina.Log.Error(e.ToString()); Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION); } }
/// <summary>Method to raise event PropertyBoundEvt.</summary> public void OnPropertyBoundEvt(Efl.Ui.IPropertyBindPropertyBoundEvt_Args e) { var key = "_EFL_UI_PROPERTY_BIND_EVENT_PROPERTY_BOUND"; IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key); if (desc == IntPtr.Zero) { Eina.Log.Error($"Failed to get native event {key}"); return; } IntPtr info = Eina.StringConversion.ManagedStringToNativeUtf8Alloc(e.arg); try { Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, info); } finally { Eina.MemoryNative.Free(info); } }