diff src/audacious/ui_skinned_number.c @ 4195:2281da647da9

beggining of GdkPixbuf transition
author Tomasz Mon <desowin@gmail.com>
date Sat, 19 Jan 2008 06:03:03 +0100
parents 9d4b5cdae3ba
children 47352b34dbdf
line wrap: on
line diff
--- a/src/audacious/ui_skinned_number.c	Wed Jan 16 11:37:25 2008 +0100
+++ b/src/audacious/ui_skinned_number.c	Sat Jan 19 06:03:03 2008 +0100
@@ -185,33 +185,28 @@
     UiSkinnedNumber *number = UI_SKINNED_NUMBER (widget);
     g_return_val_if_fail (number->width > 0 && number->height > 0, FALSE);
 
-    GdkPixmap *obj = NULL;
-    GdkGC *gc;
-    obj = gdk_pixmap_new(NULL, number->width, number->height, gdk_rgb_get_visual()->depth);
-    gc = gdk_gc_new(obj);
+    GdkPixbuf *obj;
+    obj = gdk_pixbuf_new(GDK_COLORSPACE_RGB, TRUE, 8, number->width, number->height);
 
     if (number->num > 11 || number->num < 0)
         number->num = 10;
 
-    skin_draw_pixmap(widget, bmp_active_skin, obj, gc,
+    skin_draw_pixbuf(widget, bmp_active_skin, obj,
                      number->skin_index, number->num * 9, 0,
                      0, 0, number->width, number->height);
 
-    GdkPixmap *image;
-    image = gdk_pixmap_new(NULL, number->width*(1+number->double_size),
-                                 number->height*(1+number->double_size),
-                                 gdk_rgb_get_visual()->depth);
+    GdkPixbuf *image = NULL;
+    if (number->double_size) {
+        image = gdk_pixbuf_scale_simple(obj, number->width*2, number->height*2, GDK_INTERP_NEAREST);
+    } else {
+        image = gdk_pixbuf_copy(obj);
+    }
 
-    if (number->double_size) {
-        image = create_dblsize_pixmap(obj);
-    } else
-        gdk_draw_drawable (image, gc, obj, 0, 0, 0, 0, number->width, number->height);
+    gdk_draw_pixbuf(widget->window, NULL, image, 0, 0, 0, 0,
+                    number->width*(1+number->double_size), number->height*(1+number->double_size),
+                    GDK_RGB_DITHER_NONE, 0, 0);
 
     g_object_unref(obj);
-
-    gdk_draw_drawable (widget->window, gc, image, 0, 0, 0, 0,
-                       number->width*(1+number->double_size), number->height*(1+number->double_size));
-    g_object_unref(gc);
     g_object_unref(image);
 
     return FALSE;