- colors = g_value_get_string (value);
-
- settings_update_color_scheme (settings);
-
- data = (ColorSchemeData *) g_object_get_data (G_OBJECT (settings),
- "gtk-color-scheme");
-
- if (update_color_hash (data, colors, source))
- g_object_notify (G_OBJECT (settings), "color-hash");
-
- g_object_thaw_notify (G_OBJECT (settings));
-}
-
-static GHashTable *
-get_color_hash (GtkSettings *settings)
-{
- ColorSchemeData *data;
-
- settings_update_color_scheme (settings);
-
- data = (ColorSchemeData *)g_object_get_data (G_OBJECT (settings),
- "gtk-color-scheme");
-
- return data->color_hash;
-}
-
-static void
-append_color_scheme (gpointer key,
- gpointer value,
- gpointer data)
-{
- gchar *name = (gchar *)key;
- GdkColor *color = (GdkColor *)value;
- GString *string = (GString *)data;
-
- g_string_append_printf (string, "%s: #%04x%04x%04x\n",
- name, color->red, color->green, color->blue);
-}
-
-static gchar *
-get_color_scheme (GtkSettings *settings)
-{
- ColorSchemeData *data;
- GString *string;
-
- settings_update_color_scheme (settings);
-
- data = (ColorSchemeData *) g_object_get_data (G_OBJECT (settings),
- "gtk-color-scheme");
-
- string = g_string_new ("");
-
- g_hash_table_foreach (data->color_hash, append_color_scheme, string);
-
- return g_string_free (string, FALSE);
-}
-
-GdkScreen *
-_gtk_settings_get_screen (GtkSettings *settings)
-{
- return settings->screen;