summaryrefslogtreecommitdiff
path: root/gtk/gtkimage.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2010-06-14 23:46:46 -0400
committerMatthias Clasen <mclasen@redhat.com>2010-06-14 23:46:46 -0400
commite9fc660d7ec07c74afe2d4114b88c44fd78f7759 (patch)
tree0756809a68818843074a8f73ccf5b6c10fec135f /gtk/gtkimage.c
parentd53b0c200db655cd8825f32442211bea902f01c5 (diff)
downloadgtk+-e9fc660d7ec07c74afe2d4114b88c44fd78f7759.tar.gz
Add a variant of gtk_icon_theme_load_symbolic that takes a style
As proposed by Owen in bug 621578 to reduce code duplication.
Diffstat (limited to 'gtk/gtkimage.c')
-rw-r--r--gtk/gtkimage.c54
1 files changed, 10 insertions, 44 deletions
diff --git a/gtk/gtkimage.c b/gtk/gtkimage.c
index 9edae99a16..df032f29f5 100644
--- a/gtk/gtkimage.c
+++ b/gtk/gtkimage.c
@@ -1697,32 +1697,15 @@ ensure_pixbuf_for_icon_name (GtkImage *image,
MIN (width, height), flags);
if (info)
{
- GdkColor error_color, warning_color, success_color;
- GdkColor *error_ptr, *warning_ptr, *success_ptr;
GtkStyle *style;
gboolean was_symbolic;
style = gtk_widget_get_style (GTK_WIDGET (image));
- if (!gtk_style_lookup_color (style, "error_color", &error_color))
- error_ptr = NULL;
- else
- error_ptr = &error_color;
- if (!gtk_style_lookup_color (style, "warning_color", &warning_color))
- warning_ptr = NULL;
- else
- warning_ptr = &warning_color;
- if (!gtk_style_lookup_color (style, "success_color", &success_color))
- success_ptr = NULL;
- else
- success_ptr = &success_color;
-
- image->data.name.pixbuf = gtk_icon_info_load_symbolic (info,
- &style->fg[state],
- success_ptr,
- warning_ptr,
- error_ptr,
- &was_symbolic,
- NULL);
+ image->data.name.pixbuf =
+ gtk_icon_info_load_symbolic_for_style (info,
+ style, state,
+ &was_symbolic,
+ NULL);
priv->was_symbolic = was_symbolic;
gtk_icon_info_free (info);
}
@@ -1790,32 +1773,15 @@ ensure_pixbuf_for_gicon (GtkImage *image,
MIN (width, height), flags);
if (info)
{
- GdkColor error_color, warning_color, success_color;
- GdkColor *error_ptr, *warning_ptr, *success_ptr;
GtkStyle *style;
gboolean was_symbolic;
style = gtk_widget_get_style (GTK_WIDGET (image));
- if (!gtk_style_lookup_color (style, "error_color", &error_color))
- error_ptr = NULL;
- else
- error_ptr = &error_color;
- if (!gtk_style_lookup_color (style, "warning_color", &warning_color))
- warning_ptr = NULL;
- else
- warning_ptr = &warning_color;
- if (!gtk_style_lookup_color (style, "success_color", &success_color))
- success_ptr = NULL;
- else
- success_ptr = &success_color;
-
- image->data.gicon.pixbuf = gtk_icon_info_load_symbolic (info,
- &style->fg[state],
- success_ptr,
- warning_ptr,
- error_ptr,
- &was_symbolic,
- NULL);
+ image->data.gicon.pixbuf =
+ gtk_icon_info_load_symbolic_for_style (info,
+ style, state,
+ &was_symbolic,
+ NULL);
priv->was_symbolic = was_symbolic;
gtk_icon_info_free (info);
}