Ejemplo n.º 1
0
 static void OverrideGetNext(GLib.GType gtype, GetNextNativeDelegate callback)
 {
     unsafe {
         IntPtr *raw_ptr = (IntPtr *)(((long)gtype.GetClassPtr()) + (long)class_abi.GetFieldOffset("get_next"));
         *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate)callback);
     }
 }
Ejemplo n.º 2
0
        private bool InternalGetNext(string out_name, GLib.Variant value)
        {
            GetNextNativeDelegate unmanaged = class_abi.BaseOverride <GetNextNativeDelegate>(this.LookupGType(), "get_next");

            if (unmanaged == null)
            {
                return(false);
            }

            IntPtr native_out_name = GLib.Marshaller.StringToPtrGStrdup(out_name);
            bool   __result        = unmanaged(this.Handle, native_out_name, value == null ? IntPtr.Zero : value.Handle);

            GLib.Marshaller.Free(native_out_name);
            return(__result);
        }
Ejemplo n.º 3
0
        private bool InternalGetNext(string out_link, GLib.MenuModel value)
        {
            GetNextNativeDelegate unmanaged = null;

            unsafe {
                IntPtr *raw_ptr = (IntPtr *)(((long)this.LookupGType().GetThresholdType().GetClassPtr()) + (long)class_abi.GetFieldOffset("get_next"));
                unmanaged = (GetNextNativeDelegate)Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(GetNextNativeDelegate));
            }
            if (unmanaged == null)
            {
                return(false);
            }

            IntPtr native_out_link = GLib.Marshaller.StringToPtrGStrdup(out_link);
            bool   __result        = unmanaged(this.Handle, native_out_link, value == null ? IntPtr.Zero : value.Handle);

            GLib.Marshaller.Free(native_out_link);
            return(__result);
        }