]> Pileus Git - ~andy/gtk/commitdiff
gtk-demo: Port pixbufs example to resources
authorBenjamin Otte <otte@redhat.com>
Wed, 30 Jan 2013 15:57:13 +0000 (16:57 +0100)
committerBenjamin Otte <otte@redhat.com>
Fri, 1 Feb 2013 16:42:45 +0000 (17:42 +0100)
demos/gtk-demo/demo.gresource.xml
demos/gtk-demo/pixbufs.c

index e836f86dd2e7534f3decefd92d9c886910a83225..cc4397d390a984e461f35eae761c944ffb5f6bd5 100644 (file)
     <file>floppybuddy.gif</file>
     <file>gtk-logo-rgb.gif</file>
   </gresource>
+  <gresource prefix="/pixbufs">
+    <file>apple-red.png</file>
+    <file>background.jpg</file>
+    <file>gnome-applets.png</file>
+    <file>gnome-calendar.png</file>
+    <file>gnome-foot.png</file>
+    <file>gnome-gmush.png</file>
+    <file>gnome-gimp.png</file>
+    <file>gnome-gsame.png</file>
+    <file>gnu-keys.png</file>
+  </gresource>
   <gresource prefix="/sources">
     <file>application.c</file>
     <file>appwindow.c</file>
index 5e0d7dfa24d4e9bbbae3cbf2bffe180bf4775b78..3f4f896abe757204f18867693d771f67c2c97cae 100644 (file)
 
 #define FRAME_DELAY 50
 
-#define BACKGROUND_NAME "background.jpg"
+#define BACKGROUND_NAME "/pixbufs/background.jpg"
 
 static const char *image_names[] = {
-  "apple-red.png",
-  "gnome-applets.png",
-  "gnome-calendar.png",
-  "gnome-foot.png",
-  "gnome-gmush.png",
-  "gnome-gimp.png",
-  "gnome-gsame.png",
-  "gnu-keys.png"
+  "/pixbufs/apple-red.png",
+  "/pixbufs/gnome-applets.png",
+  "/pixbufs/gnome-calendar.png",
+  "/pixbufs/gnome-foot.png",
+  "/pixbufs/gnome-gmush.png",
+  "/pixbufs/gnome-gimp.png",
+  "/pixbufs/gnome-gsame.png",
+  "/pixbufs/gnu-keys.png"
 };
 
 #define N_IMAGES G_N_ELEMENTS (image_names)
@@ -56,22 +56,11 @@ static gboolean
 load_pixbufs (GError **error)
 {
   gint i;
-  char *filename;
 
   if (background)
     return TRUE; /* already loaded earlier */
 
-  /* demo_find_file() looks in the current directory first,
-   * so you can run gtk-demo without installing GTK, then looks
-   * in the location where the file is installed.
-   */
-  filename = demo_find_file (BACKGROUND_NAME, error);
-  if (!filename)
-    return FALSE; /* note that "error" was filled in and returned */
-
-  background = gdk_pixbuf_new_from_file (filename, error);
-  g_free (filename);
-
+  background = gdk_pixbuf_new_from_resource (BACKGROUND_NAME, error);
   if (!background)
     return FALSE; /* Note that "error" was filled with a GError */
 
@@ -80,12 +69,7 @@ load_pixbufs (GError **error)
 
   for (i = 0; i < N_IMAGES; i++)
     {
-      filename = demo_find_file (image_names[i], error);
-      if (!filename)
-        return FALSE; /* Note that "error" was filled with a GError */
-
-      images[i] = gdk_pixbuf_new_from_file (filename, error);
-      g_free (filename);
+      images[i] = gdk_pixbuf_new_from_resource (image_names[i], error);
 
       if (!images[i])
         return FALSE; /* Note that "error" was filled with a GError */