Description
Sharing settings between applicationsMethods and Functions
gtkSettingsGetDefault()
gtkSettingsGetForScreen(screen)
gtkSettingsInstallProperty(pspec)
gtkSettingsInstallPropertyParser(pspec, parser)
gtkRcPropertyParseColor(pspec, gstring)
gtkRcPropertyParseEnum(pspec, gstring)
gtkRcPropertyParseFlags(pspec, gstring)
gtkRcPropertyParseRequisition(pspec, gstring)
gtkRcPropertyParseBorder(pspec, gstring)
gtkSettingsSetPropertyValue(object, name, svalue)
gtkSettingsSetStringProperty(object, name, v.string, origin)
gtkSettingsSetLongProperty(object, name, v.long, origin)
gtkSettingsSetDoubleProperty(object, name, v.double, origin)
Hierarchy
GObject
+----GtkSettingsDetailed Description
GtkSettings provide a mechanism to share global settings between applications.
On the X window system, this sharing is realized by an XSettings (undocumented)
manager that is usually part of the desktop environment, along with utilities
that let the user change these settings. In the absence of an Xsettings manager,
settings can also be specified in RC files.
Applications can override system-wide settings with gtkSettingsSetStringProperty
,
gtkSettingsSetLongProperty
, etc. This should be restricted to special
cases though; GtkSettings are not meant as an application configuration
facility. When doing so, you need to be aware that settings that are specific
to individual widgets may not be available before the widget type has been
realized at least once. The following example demonstrates a way to do this:
gtk_init (&argc, &argv);
/* make sure the type is realized */
g_type_class_unref (g_type_class_ref (GTK_TYPE_IMAGE_MENU_ITEM));
g_object_set (gtk_settings_get_default (), "gtk-menu-images", FALSE, NULL);
There is one GtkSettings instance per screen. It can be obtained with
gtkSettingsGetForScreen
, but in many cases, it is more convenient
to use gtkWidgetGetSettings
. gtkSettingsGetDefault
returns the
GtkSettings instance for the default screen.References
http://library.gnome.org/devel//gtk/GtkSettings.html