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

namespace Gdk {

	using System;
	using System.Runtime.InteropServices;

#region Autogenerated code
	public partial class Global {

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gdk_disable_multidevice();
		static d_gdk_disable_multidevice gdk_disable_multidevice = FuncLoader.LoadFunction<d_gdk_disable_multidevice>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_disable_multidevice"));

		public static void DisableMultidevice() {
			gdk_disable_multidevice();
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gdk_get_default_root_window();
		static d_gdk_get_default_root_window gdk_get_default_root_window = FuncLoader.LoadFunction<d_gdk_get_default_root_window>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_get_default_root_window"));

		public static Gdk.Window DefaultRootWindow { 
			get {
				IntPtr raw_ret = gdk_get_default_root_window();
				Gdk.Window ret = GLib.Object.GetObject(raw_ret) as Gdk.Window;
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gdk_get_display_arg_name();
		static d_gdk_get_display_arg_name gdk_get_display_arg_name = FuncLoader.LoadFunction<d_gdk_get_display_arg_name>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_get_display_arg_name"));

		public static string DisplayArgName { 
			get {
				IntPtr raw_ret = gdk_get_display_arg_name();
				string ret = GLib.Marshaller.Utf8PtrToString (raw_ret);
				return ret;
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate IntPtr d_gdk_get_program_class();
		static d_gdk_get_program_class gdk_get_program_class = FuncLoader.LoadFunction<d_gdk_get_program_class>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_get_program_class"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gdk_set_program_class(IntPtr program_class);
		static d_gdk_set_program_class gdk_set_program_class = FuncLoader.LoadFunction<d_gdk_set_program_class>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_set_program_class"));

		public static string ProgramClass { 
			get {
				IntPtr raw_ret = gdk_get_program_class();
				string ret = GLib.Marshaller.Utf8PtrToString (raw_ret);
				return ret;
			}
			set {
				IntPtr native_value = GLib.Marshaller.StringToPtrGStrdup (value);
				gdk_set_program_class(native_value);
				GLib.Marshaller.Free (native_value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gdk_get_show_events();
		static d_gdk_get_show_events gdk_get_show_events = FuncLoader.LoadFunction<d_gdk_get_show_events>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_get_show_events"));

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gdk_set_show_events(bool show_events);
		static d_gdk_set_show_events gdk_set_show_events = FuncLoader.LoadFunction<d_gdk_set_show_events>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_set_show_events"));

		public static bool ShowEvents { 
			get {
				bool raw_ret = gdk_get_show_events();
				bool ret = raw_ret;
				return ret;
			}
			set {
				gdk_set_show_events(value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate int d_gdk_gl_error_quark();
		static d_gdk_gl_error_quark gdk_gl_error_quark = FuncLoader.LoadFunction<d_gdk_gl_error_quark>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_gl_error_quark"));

		public static int GlErrorQuark() {
			int raw_ret = gdk_gl_error_quark();
			int ret = raw_ret;
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gdk_pre_parse_libgtk_only();
		static d_gdk_pre_parse_libgtk_only gdk_pre_parse_libgtk_only = FuncLoader.LoadFunction<d_gdk_pre_parse_libgtk_only>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_pre_parse_libgtk_only"));

		[Obsolete]
		public static void PreParseLibgtkOnly() {
			gdk_pre_parse_libgtk_only();
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gdk_set_allowed_backends(IntPtr backends);
		static d_gdk_set_allowed_backends gdk_set_allowed_backends = FuncLoader.LoadFunction<d_gdk_set_allowed_backends>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_set_allowed_backends"));

		public static string AllowedBackends { 
			set {
				IntPtr native_value = GLib.Marshaller.StringToPtrGStrdup (value);
				gdk_set_allowed_backends(native_value);
				GLib.Marshaller.Free (native_value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gdk_set_double_click_time(uint msec);
		static d_gdk_set_double_click_time gdk_set_double_click_time = FuncLoader.LoadFunction<d_gdk_set_double_click_time>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_set_double_click_time"));

		public static uint DoubleClickTime { 
			set {
				gdk_set_double_click_time(value);
			}
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate bool d_gdk_setting_get(IntPtr name, IntPtr value);
		static d_gdk_setting_get gdk_setting_get = FuncLoader.LoadFunction<d_gdk_setting_get>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_setting_get"));

		public static bool SettingGet(string name, GLib.Value value) {
			IntPtr native_name = GLib.Marshaller.StringToPtrGStrdup (name);
			IntPtr native_value = GLib.Marshaller.StructureToPtrAlloc (value);
			bool raw_ret = gdk_setting_get(native_name, native_value);
			bool ret = raw_ret;
			GLib.Marshaller.Free (native_name);
			Marshal.FreeHGlobal (native_value);
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate uint d_gdk_unicode_to_keyval(uint wc);
		static d_gdk_unicode_to_keyval gdk_unicode_to_keyval = FuncLoader.LoadFunction<d_gdk_unicode_to_keyval>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_unicode_to_keyval"));

		public static uint UnicodeToKeyval(uint wc) {
			uint raw_ret = gdk_unicode_to_keyval(wc);
			uint ret = raw_ret;
			return ret;
		}

		[UnmanagedFunctionPointer (CallingConvention.Cdecl)]
		delegate void d_gdk_notify_startup_complete();
		static d_gdk_notify_startup_complete gdk_notify_startup_complete = FuncLoader.LoadFunction<d_gdk_notify_startup_complete>(FuncLoader.GetProcAddress(GLibrary.Load(Library.Gdk), "gdk_notify_startup_complete"));

		public static void NotifyStartupComplete() {
			gdk_notify_startup_complete();
		}

#endregion
	}
}
