diff options
author | Juan Pablo Ugarte <juanpablougarte@gmail.com> | 2014-05-05 15:22:52 -0300 |
---|---|---|
committer | Juan Pablo Ugarte <juanpablougarte@gmail.com> | 2014-05-05 15:31:50 -0300 |
commit | b9f91bcd8ce1548c8cfb65ac1d52d1a53c73132a (patch) | |
tree | 955498310e92f93965921d50aff8eb5e06998536 /gtk/gtkcolorbutton.c | |
parent | 748b2bf5aea6162ada2fb614e3f75f08925da198 (diff) | |
download | gtk+-b9f91bcd8ce1548c8cfb65ac1d52d1a53c73132a.tar.gz |
GtkColorButton: Fix recursion loop in "use-alpha" set_property()
Diffstat (limited to 'gtk/gtkcolorbutton.c')
-rw-r--r-- | gtk/gtkcolorbutton.c | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/gtk/gtkcolorbutton.c b/gtk/gtkcolorbutton.c index 776c8eab51..661c5c6fc3 100644 --- a/gtk/gtkcolorbutton.c +++ b/gtk/gtkcolorbutton.c @@ -767,6 +767,21 @@ gtk_color_button_get_rgba (GtkColorButton *button, *rgba = button->priv->rgba; } +static void +set_use_alpha (GtkColorButton *button, gboolean use_alpha) +{ + use_alpha = (use_alpha != FALSE); + + if (button->priv->use_alpha != use_alpha) + { + button->priv->use_alpha = use_alpha; + + gtk_widget_queue_draw (button->priv->draw_area); + + g_object_notify (G_OBJECT (button), "use-alpha"); + } +} + /** * gtk_color_button_set_use_alpha: * @button: a #GtkColorButton @@ -783,17 +798,7 @@ gtk_color_button_set_use_alpha (GtkColorButton *button, gboolean use_alpha) { g_return_if_fail (GTK_IS_COLOR_BUTTON (button)); - - use_alpha = (use_alpha != FALSE); - - if (button->priv->use_alpha != use_alpha) - { - button->priv->use_alpha = use_alpha; - - gtk_widget_queue_draw (button->priv->draw_area); - - g_object_notify (G_OBJECT (button), "use-alpha"); - } + set_use_alpha (button, use_alpha); } /** @@ -874,7 +879,7 @@ gtk_color_button_set_property (GObject *object, switch (param_id) { case PROP_USE_ALPHA: - gtk_color_chooser_set_use_alpha (GTK_COLOR_CHOOSER (button), g_value_get_boolean (value)); + set_use_alpha (button, g_value_get_boolean (value)); break; case PROP_TITLE: gtk_color_button_set_title (button, g_value_get_string (value)); |