summaryrefslogtreecommitdiff
path: root/gtk/gtksettings.c
diff options
context:
space:
mode:
authorTim Janik <timj@gtk.org>2007-01-30 11:10:22 +0000
committerTim Janik <timj@src.gnome.org>2007-01-30 11:10:22 +0000
commit98170cf57e6cbdbab449f07f44b84e2ae7f560e3 (patch)
tree269790b26dc819b6fcab291e28c9d581a78ba4e4 /gtk/gtksettings.c
parent160ea46dba935541ad6490635394ddd888cbfbd7 (diff)
downloadgtk+-98170cf57e6cbdbab449f07f44b84e2ae7f560e3.tar.gz
cleaned up ::color-hash registration to not abuse class_n_properties and
Tue Jan 30 12:09:56 2007 Tim Janik <timj@gtk.org> * gtk/gtksettings.c: cleaned up ::color-hash registration to not abuse class_n_properties and leave an uninitialized value array behind. svn path=/trunk/; revision=17235
Diffstat (limited to 'gtk/gtksettings.c')
-rw-r--r--gtk/gtksettings.c26
1 files changed, 17 insertions, 9 deletions
diff --git a/gtk/gtksettings.c b/gtk/gtksettings.c
index 2db01ccf05..191b98827f 100644
--- a/gtk/gtksettings.c
+++ b/gtk/gtksettings.c
@@ -620,14 +620,14 @@ gtk_settings_class_init (GtkSettingsClass *class)
*
* Since: 2.10
*/
- g_object_class_install_property (gobject_class,
- PROP_COLOR_HASH,
- g_param_spec_boxed ("color-hash",
- P_("Color Hash"),
- P_("A hash table representation of the color scheme."),
- G_TYPE_HASH_TABLE,
- GTK_PARAM_READABLE));
- class_n_properties++;
+ result = settings_install_property_parser (class,
+ g_param_spec_boxed ("color-hash",
+ P_("Color Hash"),
+ P_("A hash table representation of the color scheme."),
+ G_TYPE_HASH_TABLE,
+ GTK_PARAM_READABLE),
+ NULL);
+ g_assert (result == PROP_COLOR_HASH);
result = settings_install_property_parser (class,
g_param_spec_string ("gtk-file-chooser-backend",
@@ -777,8 +777,10 @@ gtk_settings_get_property (GObject *object,
GType value_type = G_VALUE_TYPE (value);
GType fundamental_type = G_TYPE_FUNDAMENTAL (value_type);
- if (property_id == PROP_COLOR_HASH)
+ /* handle internal properties */
+ switch (property_id)
{
+ case PROP_COLOR_HASH:
g_value_set_boxed (value, get_color_hash (settings));
return;
}
@@ -1023,6 +1025,12 @@ settings_install_property_parser (GtkSettingsClass *class,
case G_TYPE_DOUBLE:
case G_TYPE_STRING:
break;
+ case G_TYPE_BOXED:
+ if (strcmp (g_param_spec_get_name (pspec), "color-hash") == 0)
+ {
+ break;
+ }
+ /* fall through */
default:
if (!parser)
{