diff options
author | Carlos Garnacho <carlosg@gnome.org> | 2010-12-04 17:44:53 +0100 |
---|---|---|
committer | Carlos Garnacho <carlosg@gnome.org> | 2010-12-04 17:49:28 +0100 |
commit | 3d28adf31779632d980097b92c472904b258a520 (patch) | |
tree | 5126310aeeaf8ca0fc1b0a5f26c0d5c26f025241 /gtk/gtkmodifierstyle.c | |
parent | cd76b057e9693b6919f4ccbe40ce205efc8d3caf (diff) | |
download | gtk+-3d28adf31779632d980097b92c472904b258a520.tar.gz |
Make gtk_widget_override_cursor() take GdkRGBAs
Even though the style properties have the GdkColor type, the other
gtk_widget_override_* API takes RGBA colors, so it is consistent
now.
Diffstat (limited to 'gtk/gtkmodifierstyle.c')
-rw-r--r-- | gtk/gtkmodifierstyle.c | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/gtk/gtkmodifierstyle.c b/gtk/gtkmodifierstyle.c index a8f4d3d729..48a4f21f6e 100644 --- a/gtk/gtkmodifierstyle.c +++ b/gtk/gtkmodifierstyle.c @@ -98,7 +98,8 @@ gtk_modifier_style_get_style_property (GtkStyleProvider *provider, GValue *value) { GtkModifierStylePrivate *priv; - GdkColor *color; + GdkRGBA *rgba; + GdkColor color; gchar *str; /* Reject non-color types for now */ @@ -110,13 +111,17 @@ gtk_modifier_style_get_style_property (GtkStyleProvider *provider, g_type_name (pspec->owner_type), pspec->name); - color = g_hash_table_lookup (priv->color_properties, str); + rgba = g_hash_table_lookup (priv->color_properties, str); g_free (str); - if (!color) + if (!rgba) return FALSE; - g_value_set_boxed (value, color); + color.red = (guint) (rgba->red * 65535.) + 0.5; + color.green = (guint) (rgba->green * 65535.) + 0.5; + color.blue = (guint) (rgba->blue * 65535.) + 0.5; + + g_value_set_boxed (value, &color); return TRUE; } @@ -254,10 +259,10 @@ void gtk_modifier_style_set_color_property (GtkModifierStyle *style, GType widget_type, const gchar *prop_name, - const GdkColor *color) + const GdkRGBA *color) { GtkModifierStylePrivate *priv; - const GdkColor *old_color; + const GdkRGBA *old_color; gchar *str; g_return_if_fail (GTK_IS_MODIFIER_STYLE (style)); @@ -270,7 +275,7 @@ gtk_modifier_style_set_color_property (GtkModifierStyle *style, old_color = g_hash_table_lookup (priv->color_properties, str); if ((!color && !old_color) || - (color && old_color && gdk_color_equal (color, old_color))) + (color && old_color && gdk_rgba_equal (color, old_color))) { g_free (str); return; @@ -278,7 +283,7 @@ gtk_modifier_style_set_color_property (GtkModifierStyle *style, if (color) g_hash_table_insert (priv->color_properties, str, - gdk_color_copy (color)); + gdk_rgba_copy (color)); else g_hash_table_remove (priv->color_properties, str); |