public string LookupIcon(string icon_name, int size, Gnome.IconData icon_data, out int base_size) { IntPtr native_icon_name = GLib.Marshaller.StringToPtrGStrdup(icon_name); IntPtr raw_ret = gnome_icon_theme_lookup_icon(Handle, native_icon_name, size, ref icon_data, out base_size); GLib.Marshaller.Free(native_icon_name); string ret = GLib.Marshaller.PtrToStringGFree(raw_ret); return(ret); }
public Gnome.IconData Dup() { IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal(System.Runtime.InteropServices.Marshal.SizeOf(this)); System.Runtime.InteropServices.Marshal.StructureToPtr(this, this_as_native, false); IntPtr raw_ret = gnome_icon_data_dup(this_as_native); Gnome.IconData ret = Gnome.IconData.New(raw_ret); ReadNative(this_as_native, ref this); System.Runtime.InteropServices.Marshal.FreeHGlobal(this_as_native); return(ret); }
static extern IntPtr gnome_icon_theme_lookup_icon(IntPtr raw, IntPtr icon_name, int size, ref Gnome.IconData icon_data, out int base_size);
static void ReadNative(IntPtr native, ref Gnome.IconData target) { target = New(native); }