static void OverrideGetItemLink(GLib.GType gtype, GetItemLinkNativeDelegate callback) { unsafe { IntPtr *raw_ptr = (IntPtr *)(((long)gtype.GetClassPtr()) + (long)class_abi.GetFieldOffset("get_item_link")); *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate)callback); } }
private GLib.MenuModel InternalGetItemLink(int item_index, string link) { GetItemLinkNativeDelegate unmanaged = class_abi.BaseOverride <GetItemLinkNativeDelegate>(this.LookupGType(), "get_item_link"); if (unmanaged == null) { return(null); } IntPtr native_link = GLib.Marshaller.StringToPtrGStrdup(link); IntPtr __result = unmanaged(this.Handle, item_index, native_link); GLib.Marshaller.Free(native_link); return(GLib.Object.GetObject(__result) as GLib.MenuModel); }
private GLib.MenuModel InternalGetItemLink(int item_index, string link) { GetItemLinkNativeDelegate unmanaged = null; unsafe { IntPtr *raw_ptr = (IntPtr *)(((long)this.LookupGType().GetThresholdType().GetClassPtr()) + (long)class_abi.GetFieldOffset("get_item_link")); unmanaged = (GetItemLinkNativeDelegate)Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(GetItemLinkNativeDelegate)); } if (unmanaged == null) { return(null); } IntPtr native_link = GLib.Marshaller.StringToPtrGStrdup(link); IntPtr __result = unmanaged(this.Handle, item_index, native_link); GLib.Marshaller.Free(native_link); return(GLib.Object.GetObject(__result) as GLib.MenuModel); }