// This file was generated by the Gtk# code generator.
// Any changes made will be lost if regenerated.

namespace Gtk {

	using System;
	using System.Runtime.InteropServices;

#region Autogenerated code
	public partial class FileChooserAdapter : GLib.GInterfaceAdapter, Gtk.IFileChooser {

		GLib.Object implementor;

		public FileChooserAdapter (IntPtr handle)
		{
			if (!_gtype.IsInstance (handle))
				throw new ArgumentException ("The gobject doesn't implement the GInterface of this adapter", "handle");
			implementor = GLib.Object.GetObject (handle);
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_type();
		static d_gtk_file_chooser_get_type gtk_file_chooser_get_type = FuncLoader.LoadFunction<d_gtk_file_chooser_get_type>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_type"));

		private static GLib.GType _gtype = new GLib.GType (gtk_file_chooser_get_type ());

		public static GLib.GType GType {
			get {
				return _gtype;
			}
		}

		public override GLib.GType GInterfaceGType {
			get {
				return _gtype;
			}
		}

		public override IntPtr Handle {
			get {
				return implementor.Handle;
			}
		}

		public IntPtr OwnedHandle {
			get {
				return implementor.OwnedHandle;
			}
		}

		public static IFileChooser GetObject (IntPtr handle, bool owned)
		{
			GLib.Object obj = GLib.Object.GetObject (handle, owned);
			return GetObject (obj);
		}

		public static IFileChooser GetObject (GLib.Object obj)
		{
			if (obj == null)
				return null;
			else if (obj as IFileChooser == null)
				return new FileChooserAdapter (obj.Handle);
			else
				return obj as IFileChooser;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate int d_gtk_file_chooser_get_action(IntPtr raw);
		static d_gtk_file_chooser_get_action gtk_file_chooser_get_action = FuncLoader.LoadFunction<d_gtk_file_chooser_get_action>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_action"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_action(IntPtr raw, int action);
		static d_gtk_file_chooser_set_action gtk_file_chooser_set_action = FuncLoader.LoadFunction<d_gtk_file_chooser_set_action>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_action"));

		[GLib.Property ("action")]
		public Gtk.FileChooserAction Action {
			get  {
				int raw_ret = gtk_file_chooser_get_action(Handle);
				Gtk.FileChooserAction ret = (Gtk.FileChooserAction) raw_ret;
				return ret;
			}
			set  {
				gtk_file_chooser_set_action(Handle, (int) value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_filter(IntPtr raw);
		static d_gtk_file_chooser_get_filter gtk_file_chooser_get_filter = FuncLoader.LoadFunction<d_gtk_file_chooser_get_filter>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_filter"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_filter(IntPtr raw, IntPtr filter);
		static d_gtk_file_chooser_set_filter gtk_file_chooser_set_filter = FuncLoader.LoadFunction<d_gtk_file_chooser_set_filter>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_filter"));

		[GLib.Property ("filter")]
		public Gtk.FileFilter Filter {
			get  {
				IntPtr raw_ret = gtk_file_chooser_get_filter(Handle);
				Gtk.FileFilter ret = GLib.Object.GetObject(raw_ret) as Gtk.FileFilter;
				return ret;
			}
			set  {
				gtk_file_chooser_set_filter(Handle, value == null ? IntPtr.Zero : value.Handle);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_get_local_only(IntPtr raw);
		static d_gtk_file_chooser_get_local_only gtk_file_chooser_get_local_only = FuncLoader.LoadFunction<d_gtk_file_chooser_get_local_only>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_local_only"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_local_only(IntPtr raw, bool local_only);
		static d_gtk_file_chooser_set_local_only gtk_file_chooser_set_local_only = FuncLoader.LoadFunction<d_gtk_file_chooser_set_local_only>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_local_only"));

		[GLib.Property ("local-only")]
		public bool LocalOnly {
			get  {
				bool raw_ret = gtk_file_chooser_get_local_only(Handle);
				bool ret = raw_ret;
				return ret;
			}
			set  {
				gtk_file_chooser_set_local_only(Handle, value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_preview_widget(IntPtr raw);
		static d_gtk_file_chooser_get_preview_widget gtk_file_chooser_get_preview_widget = FuncLoader.LoadFunction<d_gtk_file_chooser_get_preview_widget>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_preview_widget"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_preview_widget(IntPtr raw, IntPtr preview_widget);
		static d_gtk_file_chooser_set_preview_widget gtk_file_chooser_set_preview_widget = FuncLoader.LoadFunction<d_gtk_file_chooser_set_preview_widget>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_preview_widget"));

		[GLib.Property ("preview-widget")]
		public Gtk.Widget PreviewWidget {
			get  {
				IntPtr raw_ret = gtk_file_chooser_get_preview_widget(Handle);
				Gtk.Widget ret = GLib.Object.GetObject(raw_ret) as Gtk.Widget;
				return ret;
			}
			set  {
				gtk_file_chooser_set_preview_widget(Handle, value == null ? IntPtr.Zero : value.Handle);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_get_preview_widget_active(IntPtr raw);
		static d_gtk_file_chooser_get_preview_widget_active gtk_file_chooser_get_preview_widget_active = FuncLoader.LoadFunction<d_gtk_file_chooser_get_preview_widget_active>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_preview_widget_active"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_preview_widget_active(IntPtr raw, bool active);
		static d_gtk_file_chooser_set_preview_widget_active gtk_file_chooser_set_preview_widget_active = FuncLoader.LoadFunction<d_gtk_file_chooser_set_preview_widget_active>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_preview_widget_active"));

		[GLib.Property ("preview-widget-active")]
		public bool PreviewWidgetActive {
			get  {
				bool raw_ret = gtk_file_chooser_get_preview_widget_active(Handle);
				bool ret = raw_ret;
				return ret;
			}
			set  {
				gtk_file_chooser_set_preview_widget_active(Handle, value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_get_use_preview_label(IntPtr raw);
		static d_gtk_file_chooser_get_use_preview_label gtk_file_chooser_get_use_preview_label = FuncLoader.LoadFunction<d_gtk_file_chooser_get_use_preview_label>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_use_preview_label"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_use_preview_label(IntPtr raw, bool use_label);
		static d_gtk_file_chooser_set_use_preview_label gtk_file_chooser_set_use_preview_label = FuncLoader.LoadFunction<d_gtk_file_chooser_set_use_preview_label>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_use_preview_label"));

		[GLib.Property ("use-preview-label")]
		public bool UsePreviewLabel {
			get  {
				bool raw_ret = gtk_file_chooser_get_use_preview_label(Handle);
				bool ret = raw_ret;
				return ret;
			}
			set  {
				gtk_file_chooser_set_use_preview_label(Handle, value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_extra_widget(IntPtr raw);
		static d_gtk_file_chooser_get_extra_widget gtk_file_chooser_get_extra_widget = FuncLoader.LoadFunction<d_gtk_file_chooser_get_extra_widget>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_extra_widget"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_extra_widget(IntPtr raw, IntPtr extra_widget);
		static d_gtk_file_chooser_set_extra_widget gtk_file_chooser_set_extra_widget = FuncLoader.LoadFunction<d_gtk_file_chooser_set_extra_widget>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_extra_widget"));

		[GLib.Property ("extra-widget")]
		public Gtk.Widget ExtraWidget {
			get  {
				IntPtr raw_ret = gtk_file_chooser_get_extra_widget(Handle);
				Gtk.Widget ret = GLib.Object.GetObject(raw_ret) as Gtk.Widget;
				return ret;
			}
			set  {
				gtk_file_chooser_set_extra_widget(Handle, value == null ? IntPtr.Zero : value.Handle);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_get_select_multiple(IntPtr raw);
		static d_gtk_file_chooser_get_select_multiple gtk_file_chooser_get_select_multiple = FuncLoader.LoadFunction<d_gtk_file_chooser_get_select_multiple>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_select_multiple"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_select_multiple(IntPtr raw, bool select_multiple);
		static d_gtk_file_chooser_set_select_multiple gtk_file_chooser_set_select_multiple = FuncLoader.LoadFunction<d_gtk_file_chooser_set_select_multiple>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_select_multiple"));

		[GLib.Property ("select-multiple")]
		public bool SelectMultiple {
			get  {
				bool raw_ret = gtk_file_chooser_get_select_multiple(Handle);
				bool ret = raw_ret;
				return ret;
			}
			set  {
				gtk_file_chooser_set_select_multiple(Handle, value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_get_show_hidden(IntPtr raw);
		static d_gtk_file_chooser_get_show_hidden gtk_file_chooser_get_show_hidden = FuncLoader.LoadFunction<d_gtk_file_chooser_get_show_hidden>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_show_hidden"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_show_hidden(IntPtr raw, bool show_hidden);
		static d_gtk_file_chooser_set_show_hidden gtk_file_chooser_set_show_hidden = FuncLoader.LoadFunction<d_gtk_file_chooser_set_show_hidden>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_show_hidden"));

		[GLib.Property ("show-hidden")]
		public bool ShowHidden {
			get  {
				bool raw_ret = gtk_file_chooser_get_show_hidden(Handle);
				bool ret = raw_ret;
				return ret;
			}
			set  {
				gtk_file_chooser_set_show_hidden(Handle, value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_get_do_overwrite_confirmation(IntPtr raw);
		static d_gtk_file_chooser_get_do_overwrite_confirmation gtk_file_chooser_get_do_overwrite_confirmation = FuncLoader.LoadFunction<d_gtk_file_chooser_get_do_overwrite_confirmation>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_do_overwrite_confirmation"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_do_overwrite_confirmation(IntPtr raw, bool do_overwrite_confirmation);
		static d_gtk_file_chooser_set_do_overwrite_confirmation gtk_file_chooser_set_do_overwrite_confirmation = FuncLoader.LoadFunction<d_gtk_file_chooser_set_do_overwrite_confirmation>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_do_overwrite_confirmation"));

		[GLib.Property ("do-overwrite-confirmation")]
		public bool DoOverwriteConfirmation {
			get  {
				bool raw_ret = gtk_file_chooser_get_do_overwrite_confirmation(Handle);
				bool ret = raw_ret;
				return ret;
			}
			set  {
				gtk_file_chooser_set_do_overwrite_confirmation(Handle, value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_get_create_folders(IntPtr raw);
		static d_gtk_file_chooser_get_create_folders gtk_file_chooser_get_create_folders = FuncLoader.LoadFunction<d_gtk_file_chooser_get_create_folders>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_create_folders"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_create_folders(IntPtr raw, bool create_folders);
		static d_gtk_file_chooser_set_create_folders gtk_file_chooser_set_create_folders = FuncLoader.LoadFunction<d_gtk_file_chooser_set_create_folders>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_create_folders"));

		[GLib.Property ("create-folders")]
		public bool CreateFolders {
			get  {
				bool raw_ret = gtk_file_chooser_get_create_folders(Handle);
				bool ret = raw_ret;
				return ret;
			}
			set  {
				gtk_file_chooser_set_create_folders(Handle, value);
			}
		}

		[GLib.Signal("update-preview")]
		public event System.EventHandler UpdatePreview {
			add {
				GLib.Object.GetObject (Handle).AddSignalHandler ("update-preview", value);
			}
			remove {
				GLib.Object.GetObject (Handle).RemoveSignalHandler ("update-preview", value);
			}
		}

		[GLib.Signal("file-activated")]
		public event System.EventHandler FileActivated {
			add {
				GLib.Object.GetObject (Handle).AddSignalHandler ("file-activated", value);
			}
			remove {
				GLib.Object.GetObject (Handle).RemoveSignalHandler ("file-activated", value);
			}
		}

		[GLib.Signal("confirm-overwrite")]
		public event Gtk.ConfirmOverwriteHandler ConfirmOverwrite {
			add {
				GLib.Object.GetObject (Handle).AddSignalHandler ("confirm-overwrite", value, typeof (Gtk.ConfirmOverwriteArgs));
			}
			remove {
				GLib.Object.GetObject (Handle).RemoveSignalHandler ("confirm-overwrite", value);
			}
		}

		[GLib.Signal("current-folder-changed")]
		public event System.EventHandler CurrentFolderChanged {
			add {
				GLib.Object.GetObject (Handle).AddSignalHandler ("current-folder-changed", value);
			}
			remove {
				GLib.Object.GetObject (Handle).RemoveSignalHandler ("current-folder-changed", value);
			}
		}

		[GLib.Signal("selection-changed")]
		public event System.EventHandler SelectionChanged {
			add {
				GLib.Object.GetObject (Handle).AddSignalHandler ("selection-changed", value);
			}
			remove {
				GLib.Object.GetObject (Handle).RemoveSignalHandler ("selection-changed", value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_add_choice(IntPtr raw, IntPtr id, IntPtr label, IntPtr options, IntPtr option_labels);
		static d_gtk_file_chooser_add_choice gtk_file_chooser_add_choice = FuncLoader.LoadFunction<d_gtk_file_chooser_add_choice>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_add_choice"));

		public void AddChoice(string id, string label, string options, string option_labels) {
			IntPtr native_id = GLib.Marshaller.StringToPtrGStrdup (id);
			IntPtr native_label = GLib.Marshaller.StringToPtrGStrdup (label);
			IntPtr native_options = GLib.Marshaller.StringToPtrGStrdup (options);
			IntPtr native_option_labels = GLib.Marshaller.StringToPtrGStrdup (option_labels);
			gtk_file_chooser_add_choice(Handle, native_id, native_label, native_options, native_option_labels);
			GLib.Marshaller.Free (native_id);
			GLib.Marshaller.Free (native_label);
			GLib.Marshaller.Free (native_options);
			GLib.Marshaller.Free (native_option_labels);
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_add_filter(IntPtr raw, IntPtr filter);
		static d_gtk_file_chooser_add_filter gtk_file_chooser_add_filter = FuncLoader.LoadFunction<d_gtk_file_chooser_add_filter>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_add_filter"));

		public void AddFilter(Gtk.FileFilter filter) {
			gtk_file_chooser_add_filter(Handle, filter == null ? IntPtr.Zero : filter.Handle);
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_add_shortcut_folder(IntPtr raw, IntPtr folder, out IntPtr error);
		static d_gtk_file_chooser_add_shortcut_folder gtk_file_chooser_add_shortcut_folder = FuncLoader.LoadFunction<d_gtk_file_chooser_add_shortcut_folder>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_add_shortcut_folder"));

		public bool AddShortcutFolder(string folder) {
			IntPtr native_folder = GLib.Marshaller.StringToFilenamePtr (folder);
			IntPtr error = IntPtr.Zero;
			bool raw_ret = gtk_file_chooser_add_shortcut_folder(Handle, native_folder, out error);
			bool ret = raw_ret;
			GLib.Marshaller.Free (native_folder);
			if (error != IntPtr.Zero) throw new GLib.GException (error);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_add_shortcut_folder_uri(IntPtr raw, IntPtr uri, out IntPtr error);
		static d_gtk_file_chooser_add_shortcut_folder_uri gtk_file_chooser_add_shortcut_folder_uri = FuncLoader.LoadFunction<d_gtk_file_chooser_add_shortcut_folder_uri>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_add_shortcut_folder_uri"));

		public bool AddShortcutFolderUri(string uri) {
			IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup (uri);
			IntPtr error = IntPtr.Zero;
			bool raw_ret = gtk_file_chooser_add_shortcut_folder_uri(Handle, native_uri, out error);
			bool ret = raw_ret;
			GLib.Marshaller.Free (native_uri);
			if (error != IntPtr.Zero) throw new GLib.GException (error);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate int d_gtk_file_chooser_error_quark();
		static d_gtk_file_chooser_error_quark gtk_file_chooser_error_quark = FuncLoader.LoadFunction<d_gtk_file_chooser_error_quark>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_error_quark"));

		public static int ErrorQuark() {
			int raw_ret = gtk_file_chooser_error_quark();
			int ret = raw_ret;
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_choice(IntPtr raw, IntPtr id);
		static d_gtk_file_chooser_get_choice gtk_file_chooser_get_choice = FuncLoader.LoadFunction<d_gtk_file_chooser_get_choice>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_choice"));

		public string GetChoice(string id) {
			IntPtr native_id = GLib.Marshaller.StringToPtrGStrdup (id);
			IntPtr raw_ret = gtk_file_chooser_get_choice(Handle, native_id);
			string ret = GLib.Marshaller.Utf8PtrToString (raw_ret);
			GLib.Marshaller.Free (native_id);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_current_folder(IntPtr raw);
		static d_gtk_file_chooser_get_current_folder gtk_file_chooser_get_current_folder = FuncLoader.LoadFunction<d_gtk_file_chooser_get_current_folder>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_current_folder"));

		public string CurrentFolder { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_current_folder(Handle);
				string ret = GLib.Marshaller.FilenamePtrToStringGFree(raw_ret);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_current_folder_file(IntPtr raw);
		static d_gtk_file_chooser_get_current_folder_file gtk_file_chooser_get_current_folder_file = FuncLoader.LoadFunction<d_gtk_file_chooser_get_current_folder_file>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_current_folder_file"));

		public GLib.IFile CurrentFolderFile { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_current_folder_file(Handle);
				GLib.IFile ret = GLib.FileAdapter.GetObject (raw_ret, false);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_current_folder_uri(IntPtr raw);
		static d_gtk_file_chooser_get_current_folder_uri gtk_file_chooser_get_current_folder_uri = FuncLoader.LoadFunction<d_gtk_file_chooser_get_current_folder_uri>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_current_folder_uri"));

		public string CurrentFolderUri { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_current_folder_uri(Handle);
				string ret = GLib.Marshaller.PtrToStringGFree(raw_ret);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_current_name(IntPtr raw);
		static d_gtk_file_chooser_get_current_name gtk_file_chooser_get_current_name = FuncLoader.LoadFunction<d_gtk_file_chooser_get_current_name>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_current_name"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_current_name(IntPtr raw, IntPtr name);
		static d_gtk_file_chooser_set_current_name gtk_file_chooser_set_current_name = FuncLoader.LoadFunction<d_gtk_file_chooser_set_current_name>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_current_name"));

		public string CurrentName { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_current_name(Handle);
				string ret = GLib.Marshaller.PtrToStringGFree(raw_ret);
				return ret;
			}
			set {
				IntPtr native_value = GLib.Marshaller.StringToPtrGStrdup (value);
				gtk_file_chooser_set_current_name(Handle, native_value);
				GLib.Marshaller.Free (native_value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_file(IntPtr raw);
		static d_gtk_file_chooser_get_file gtk_file_chooser_get_file = FuncLoader.LoadFunction<d_gtk_file_chooser_get_file>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_file"));

		public GLib.IFile File { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_file(Handle);
				GLib.IFile ret = GLib.FileAdapter.GetObject (raw_ret, false);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_filename(IntPtr raw);
		static d_gtk_file_chooser_get_filename gtk_file_chooser_get_filename = FuncLoader.LoadFunction<d_gtk_file_chooser_get_filename>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_filename"));

		public string Filename { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_filename(Handle);
				string ret = GLib.Marshaller.FilenamePtrToStringGFree(raw_ret);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_filenames(IntPtr raw);
		static d_gtk_file_chooser_get_filenames gtk_file_chooser_get_filenames = FuncLoader.LoadFunction<d_gtk_file_chooser_get_filenames>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_filenames"));

		public string[] Filenames { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_filenames(Handle);
				string[] ret = GLib.Marshaller.SListPtrToArray<string, GLib.ListBase.FilenameString> (raw_ret, true, true);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_files(IntPtr raw);
		static d_gtk_file_chooser_get_files gtk_file_chooser_get_files = FuncLoader.LoadFunction<d_gtk_file_chooser_get_files>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_files"));

		public GLib.IFile[] Files { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_files(Handle);
				GLib.IFile[] ret = GLib.Marshaller.SListPtrToArray<GLib.IFile, GLib.IFile> (raw_ret, false, false);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_preview_file(IntPtr raw);
		static d_gtk_file_chooser_get_preview_file gtk_file_chooser_get_preview_file = FuncLoader.LoadFunction<d_gtk_file_chooser_get_preview_file>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_preview_file"));

		public GLib.IFile PreviewFile { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_preview_file(Handle);
				GLib.IFile ret = GLib.FileAdapter.GetObject (raw_ret, false);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_preview_filename(IntPtr raw);
		static d_gtk_file_chooser_get_preview_filename gtk_file_chooser_get_preview_filename = FuncLoader.LoadFunction<d_gtk_file_chooser_get_preview_filename>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_preview_filename"));

		public string PreviewFilename { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_preview_filename(Handle);
				string ret = GLib.Marshaller.FilenamePtrToStringGFree(raw_ret);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_preview_uri(IntPtr raw);
		static d_gtk_file_chooser_get_preview_uri gtk_file_chooser_get_preview_uri = FuncLoader.LoadFunction<d_gtk_file_chooser_get_preview_uri>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_preview_uri"));

		public string PreviewUri { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_preview_uri(Handle);
				string ret = GLib.Marshaller.PtrToStringGFree(raw_ret);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_uri(IntPtr raw);
		static d_gtk_file_chooser_get_uri gtk_file_chooser_get_uri = FuncLoader.LoadFunction<d_gtk_file_chooser_get_uri>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_uri"));

		public string Uri { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_uri(Handle);
				string ret = GLib.Marshaller.PtrToStringGFree(raw_ret);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_get_uris(IntPtr raw);
		static d_gtk_file_chooser_get_uris gtk_file_chooser_get_uris = FuncLoader.LoadFunction<d_gtk_file_chooser_get_uris>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_get_uris"));

		public string[] Uris { 
			get {
				IntPtr raw_ret = gtk_file_chooser_get_uris(Handle);
				string[] ret = GLib.Marshaller.SListPtrToArray<string, string> (raw_ret, true, true);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_list_filters(IntPtr raw);
		static d_gtk_file_chooser_list_filters gtk_file_chooser_list_filters = FuncLoader.LoadFunction<d_gtk_file_chooser_list_filters>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_list_filters"));

		public Gtk.FileFilter[] Filters { 
			get {
				IntPtr raw_ret = gtk_file_chooser_list_filters(Handle);
				Gtk.FileFilter[] ret = GLib.Marshaller.SListPtrToArray<Gtk.FileFilter, Gtk.FileFilter> (raw_ret, true, false);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_list_shortcut_folder_uris(IntPtr raw);
		static d_gtk_file_chooser_list_shortcut_folder_uris gtk_file_chooser_list_shortcut_folder_uris = FuncLoader.LoadFunction<d_gtk_file_chooser_list_shortcut_folder_uris>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_list_shortcut_folder_uris"));

		public string[] ShortcutFolderUris { 
			get {
				IntPtr raw_ret = gtk_file_chooser_list_shortcut_folder_uris(Handle);
				string[] ret = GLib.Marshaller.SListPtrToArray<string, string> (raw_ret, true, true);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gtk_file_chooser_list_shortcut_folders(IntPtr raw);
		static d_gtk_file_chooser_list_shortcut_folders gtk_file_chooser_list_shortcut_folders = FuncLoader.LoadFunction<d_gtk_file_chooser_list_shortcut_folders>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_list_shortcut_folders"));

		public string[] ShortcutFolders { 
			get {
				IntPtr raw_ret = gtk_file_chooser_list_shortcut_folders(Handle);
				string[] ret = GLib.Marshaller.SListPtrToArray<string, GLib.ListBase.FilenameString> (raw_ret, true, true);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_remove_choice(IntPtr raw, IntPtr id);
		static d_gtk_file_chooser_remove_choice gtk_file_chooser_remove_choice = FuncLoader.LoadFunction<d_gtk_file_chooser_remove_choice>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_remove_choice"));

		public void RemoveChoice(string id) {
			IntPtr native_id = GLib.Marshaller.StringToPtrGStrdup (id);
			gtk_file_chooser_remove_choice(Handle, native_id);
			GLib.Marshaller.Free (native_id);
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_remove_filter(IntPtr raw, IntPtr filter);
		static d_gtk_file_chooser_remove_filter gtk_file_chooser_remove_filter = FuncLoader.LoadFunction<d_gtk_file_chooser_remove_filter>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_remove_filter"));

		public void RemoveFilter(Gtk.FileFilter filter) {
			gtk_file_chooser_remove_filter(Handle, filter == null ? IntPtr.Zero : filter.Handle);
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_remove_shortcut_folder(IntPtr raw, IntPtr folder, out IntPtr error);
		static d_gtk_file_chooser_remove_shortcut_folder gtk_file_chooser_remove_shortcut_folder = FuncLoader.LoadFunction<d_gtk_file_chooser_remove_shortcut_folder>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_remove_shortcut_folder"));

		public bool RemoveShortcutFolder(string folder) {
			IntPtr native_folder = GLib.Marshaller.StringToFilenamePtr (folder);
			IntPtr error = IntPtr.Zero;
			bool raw_ret = gtk_file_chooser_remove_shortcut_folder(Handle, native_folder, out error);
			bool ret = raw_ret;
			GLib.Marshaller.Free (native_folder);
			if (error != IntPtr.Zero) throw new GLib.GException (error);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_remove_shortcut_folder_uri(IntPtr raw, IntPtr uri, out IntPtr error);
		static d_gtk_file_chooser_remove_shortcut_folder_uri gtk_file_chooser_remove_shortcut_folder_uri = FuncLoader.LoadFunction<d_gtk_file_chooser_remove_shortcut_folder_uri>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_remove_shortcut_folder_uri"));

		public bool RemoveShortcutFolderUri(string uri) {
			IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup (uri);
			IntPtr error = IntPtr.Zero;
			bool raw_ret = gtk_file_chooser_remove_shortcut_folder_uri(Handle, native_uri, out error);
			bool ret = raw_ret;
			GLib.Marshaller.Free (native_uri);
			if (error != IntPtr.Zero) throw new GLib.GException (error);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_select_all(IntPtr raw);
		static d_gtk_file_chooser_select_all gtk_file_chooser_select_all = FuncLoader.LoadFunction<d_gtk_file_chooser_select_all>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_select_all"));

		public void SelectAll() {
			gtk_file_chooser_select_all(Handle);
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_select_file(IntPtr raw, IntPtr file, out IntPtr error);
		static d_gtk_file_chooser_select_file gtk_file_chooser_select_file = FuncLoader.LoadFunction<d_gtk_file_chooser_select_file>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_select_file"));

		public bool SelectFile(GLib.IFile file) {
			IntPtr error = IntPtr.Zero;
			bool raw_ret = gtk_file_chooser_select_file(Handle, file == null ? IntPtr.Zero : ((file is GLib.Object) ? (file as GLib.Object).Handle : (file as GLib.FileAdapter).Handle), out error);
			bool ret = raw_ret;
			if (error != IntPtr.Zero) throw new GLib.GException (error);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_select_filename(IntPtr raw, IntPtr filename);
		static d_gtk_file_chooser_select_filename gtk_file_chooser_select_filename = FuncLoader.LoadFunction<d_gtk_file_chooser_select_filename>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_select_filename"));

		public bool SelectFilename(string filename) {
			IntPtr native_filename = GLib.Marshaller.StringToFilenamePtr (filename);
			bool raw_ret = gtk_file_chooser_select_filename(Handle, native_filename);
			bool ret = raw_ret;
			GLib.Marshaller.Free (native_filename);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_select_uri(IntPtr raw, IntPtr uri);
		static d_gtk_file_chooser_select_uri gtk_file_chooser_select_uri = FuncLoader.LoadFunction<d_gtk_file_chooser_select_uri>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_select_uri"));

		public bool SelectUri(string uri) {
			IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup (uri);
			bool raw_ret = gtk_file_chooser_select_uri(Handle, native_uri);
			bool ret = raw_ret;
			GLib.Marshaller.Free (native_uri);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_set_choice(IntPtr raw, IntPtr id, IntPtr option);
		static d_gtk_file_chooser_set_choice gtk_file_chooser_set_choice = FuncLoader.LoadFunction<d_gtk_file_chooser_set_choice>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_choice"));

		public void SetChoice(string id, string option) {
			IntPtr native_id = GLib.Marshaller.StringToPtrGStrdup (id);
			IntPtr native_option = GLib.Marshaller.StringToPtrGStrdup (option);
			gtk_file_chooser_set_choice(Handle, native_id, native_option);
			GLib.Marshaller.Free (native_id);
			GLib.Marshaller.Free (native_option);
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_set_current_folder(IntPtr raw, IntPtr filename);
		static d_gtk_file_chooser_set_current_folder gtk_file_chooser_set_current_folder = FuncLoader.LoadFunction<d_gtk_file_chooser_set_current_folder>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_current_folder"));

		public bool SetCurrentFolder(string filename) {
			IntPtr native_filename = GLib.Marshaller.StringToFilenamePtr (filename);
			bool raw_ret = gtk_file_chooser_set_current_folder(Handle, native_filename);
			bool ret = raw_ret;
			GLib.Marshaller.Free (native_filename);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_set_current_folder_file(IntPtr raw, IntPtr file, out IntPtr error);
		static d_gtk_file_chooser_set_current_folder_file gtk_file_chooser_set_current_folder_file = FuncLoader.LoadFunction<d_gtk_file_chooser_set_current_folder_file>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_current_folder_file"));

		public bool SetCurrentFolderFile(GLib.IFile file) {
			IntPtr error = IntPtr.Zero;
			bool raw_ret = gtk_file_chooser_set_current_folder_file(Handle, file == null ? IntPtr.Zero : ((file is GLib.Object) ? (file as GLib.Object).Handle : (file as GLib.FileAdapter).Handle), out error);
			bool ret = raw_ret;
			if (error != IntPtr.Zero) throw new GLib.GException (error);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_set_current_folder_uri(IntPtr raw, IntPtr uri);
		static d_gtk_file_chooser_set_current_folder_uri gtk_file_chooser_set_current_folder_uri = FuncLoader.LoadFunction<d_gtk_file_chooser_set_current_folder_uri>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_current_folder_uri"));

		public bool SetCurrentFolderUri(string uri) {
			IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup (uri);
			bool raw_ret = gtk_file_chooser_set_current_folder_uri(Handle, native_uri);
			bool ret = raw_ret;
			GLib.Marshaller.Free (native_uri);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_set_file(IntPtr raw, IntPtr file, out IntPtr error);
		static d_gtk_file_chooser_set_file gtk_file_chooser_set_file = FuncLoader.LoadFunction<d_gtk_file_chooser_set_file>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_file"));

		public bool SetFile(GLib.IFile file) {
			IntPtr error = IntPtr.Zero;
			bool raw_ret = gtk_file_chooser_set_file(Handle, file == null ? IntPtr.Zero : ((file is GLib.Object) ? (file as GLib.Object).Handle : (file as GLib.FileAdapter).Handle), out error);
			bool ret = raw_ret;
			if (error != IntPtr.Zero) throw new GLib.GException (error);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_set_filename(IntPtr raw, IntPtr filename);
		static d_gtk_file_chooser_set_filename gtk_file_chooser_set_filename = FuncLoader.LoadFunction<d_gtk_file_chooser_set_filename>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_filename"));

		public bool SetFilename(string filename) {
			IntPtr native_filename = GLib.Marshaller.StringToFilenamePtr (filename);
			bool raw_ret = gtk_file_chooser_set_filename(Handle, native_filename);
			bool ret = raw_ret;
			GLib.Marshaller.Free (native_filename);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gtk_file_chooser_set_uri(IntPtr raw, IntPtr uri);
		static d_gtk_file_chooser_set_uri gtk_file_chooser_set_uri = FuncLoader.LoadFunction<d_gtk_file_chooser_set_uri>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_set_uri"));

		public bool SetUri(string uri) {
			IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup (uri);
			bool raw_ret = gtk_file_chooser_set_uri(Handle, native_uri);
			bool ret = raw_ret;
			GLib.Marshaller.Free (native_uri);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_unselect_all(IntPtr raw);
		static d_gtk_file_chooser_unselect_all gtk_file_chooser_unselect_all = FuncLoader.LoadFunction<d_gtk_file_chooser_unselect_all>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_unselect_all"));

		public void UnselectAll() {
			gtk_file_chooser_unselect_all(Handle);
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_unselect_file(IntPtr raw, IntPtr file);
		static d_gtk_file_chooser_unselect_file gtk_file_chooser_unselect_file = FuncLoader.LoadFunction<d_gtk_file_chooser_unselect_file>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_unselect_file"));

		public void UnselectFile(GLib.IFile file) {
			gtk_file_chooser_unselect_file(Handle, file == null ? IntPtr.Zero : ((file is GLib.Object) ? (file as GLib.Object).Handle : (file as GLib.FileAdapter).Handle));
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_unselect_filename(IntPtr raw, IntPtr filename);
		static d_gtk_file_chooser_unselect_filename gtk_file_chooser_unselect_filename = FuncLoader.LoadFunction<d_gtk_file_chooser_unselect_filename>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_unselect_filename"));

		public void UnselectFilename(string filename) {
			IntPtr native_filename = GLib.Marshaller.StringToFilenamePtr (filename);
			gtk_file_chooser_unselect_filename(Handle, native_filename);
			GLib.Marshaller.Free (native_filename);
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gtk_file_chooser_unselect_uri(IntPtr raw, IntPtr uri);
		static d_gtk_file_chooser_unselect_uri gtk_file_chooser_unselect_uri = FuncLoader.LoadFunction<d_gtk_file_chooser_unselect_uri>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gtk), "gtk_file_chooser_unselect_uri"));

		public void UnselectUri(string uri) {
			IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup (uri);
			gtk_file_chooser_unselect_uri(Handle, native_uri);
			GLib.Marshaller.Free (native_uri);
		}

#endregion
	}
}
