[gtk+] iconhelper: refactor some code into a single function



commit 417d6666e5923bdd716fd016f6f0aac45ab76585
Author: Cosimo Cecchi <cosimoc gnome org>
Date:   Sun Aug 4 16:56:37 2013 +0200

    iconhelper: refactor some code into a single function
    
    https://bugzilla.gnome.org/show_bug.cgi?id=705443

 gtk/gtkiconhelper.c |   70 +++++++++++++++++++++++---------------------------
 1 files changed, 32 insertions(+), 38 deletions(-)
---
diff --git a/gtk/gtkiconhelper.c b/gtk/gtkiconhelper.c
index d753198..2200e3c 100644
--- a/gtk/gtkiconhelper.c
+++ b/gtk/gtkiconhelper.c
@@ -179,6 +179,36 @@ ensure_icon_size (GtkIconHelper *self,
 }
 
 static GdkPixbuf *
+ensure_stated_pixbuf_from_pixbuf (GtkIconHelper   *self,
+                                 GtkStyleContext *context,
+                                 GdkPixbuf       *pixbuf)
+{
+  GdkPixbuf *rendered;
+  GtkIconSource *source;
+
+  G_GNUC_BEGIN_IGNORE_DEPRECATIONS;
+
+  /* FIXME: use gtk_icon_info_load_icon? */
+
+  source = gtk_icon_source_new ();
+  gtk_icon_source_set_pixbuf (source, pixbuf);
+  /* The size here is arbitrary; since size isn't
+   * wildcarded in the source, it isn't supposed to be
+   * scaled by the engine function
+   */
+  gtk_icon_source_set_size (source,
+                           GTK_ICON_SIZE_SMALL_TOOLBAR);
+  gtk_icon_source_set_size_wildcarded (source, FALSE);
+
+  rendered = gtk_render_icon_pixbuf (context, source, (GtkIconSize) -1);
+  gtk_icon_source_free (source);
+
+  G_GNUC_END_IGNORE_DEPRECATIONS;
+
+  return rendered;
+}
+
+static GdkPixbuf *
 ensure_stated_icon_from_info (GtkIconHelper *self,
                               GtkStyleContext *context,
                              GtkIconInfo *info)
@@ -210,28 +240,9 @@ ensure_stated_icon_from_info (GtkIconHelper *self,
     }
   else if (!symbolic)
     {
-      GtkIconSource *source;
       GdkPixbuf *rendered;
 
-      G_GNUC_BEGIN_IGNORE_DEPRECATIONS;
-
-      /* FIXME: use gtk_icon_info_load_icon? */
-
-      source = gtk_icon_source_new ();
-      gtk_icon_source_set_pixbuf (source, destination);
-      /* The size here is arbitrary; since size isn't
-       * wildcarded in the source, it isn't supposed to be
-       * scaled by the engine function
-       */
-      gtk_icon_source_set_size (source,
-                               GTK_ICON_SIZE_SMALL_TOOLBAR);
-      gtk_icon_source_set_size_wildcarded (source, FALSE);
-
-      rendered = gtk_render_icon_pixbuf (context, source, (GtkIconSize) -1);
-      gtk_icon_source_free (source);
-
-      G_GNUC_END_IGNORE_DEPRECATIONS;
-
+      rendered = ensure_stated_pixbuf_from_pixbuf (self, context, destination);
       g_object_unref (destination);
       destination = rendered;
     }
@@ -653,26 +664,9 @@ ensure_stated_surface_from_info (GtkIconHelper *self,
     }
   else if (!symbolic)
     {
-      GtkIconSource *source;
       GdkPixbuf *rendered;
 
-      G_GNUC_BEGIN_IGNORE_DEPRECATIONS;
-
-      source = gtk_icon_source_new ();
-      gtk_icon_source_set_pixbuf (source, destination);
-      /* The size here is arbitrary; since size isn't
-       * wildcarded in the source, it isn't supposed to be
-       * scaled by the engine function
-       */
-      gtk_icon_source_set_size (source,
-                               GTK_ICON_SIZE_SMALL_TOOLBAR);
-      gtk_icon_source_set_size_wildcarded (source, FALSE);
-
-      rendered = gtk_render_icon_pixbuf (context, source, (GtkIconSize) -1);
-      gtk_icon_source_free (source);
-
-      G_GNUC_END_IGNORE_DEPRECATIONS;
-
+      rendered = ensure_stated_pixbuf_from_pixbuf (self, context, destination);
       g_object_unref (destination);
       destination = rendered;
     }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]