Mercurial > audlegacy
diff src/audacious/ui_skinned_menurow.c @ 4195:2281da647da9
beggining of GdkPixbuf transition
author | Tomasz Mon <desowin@gmail.com> |
---|---|
date | Sat, 19 Jan 2008 06:03:03 +0100 |
parents | 07c1639b110b |
children | 47352b34dbdf |
line wrap: on
line diff
--- a/src/audacious/ui_skinned_menurow.c Wed Jan 16 11:37:25 2008 +0100 +++ b/src/audacious/ui_skinned_menurow.c Sat Jan 19 06:03:03 2008 +0100 @@ -211,48 +211,43 @@ UiSkinnedMenurow *menurow = UI_SKINNED_MENUROW (widget); g_return_val_if_fail (menurow->width > 0 && menurow->height > 0, FALSE); - GdkPixmap *obj = NULL; - GdkGC *gc; - - obj = gdk_pixmap_new(NULL, menurow->width, menurow->height, gdk_rgb_get_visual()->depth); - gc = gdk_gc_new(obj); + GdkPixbuf *obj = NULL; + obj = gdk_pixbuf_new(GDK_COLORSPACE_RGB, TRUE, 8, menurow->width, menurow->height); if (menurow->selected == MENUROW_NONE) { if (cfg.always_show_cb || menurow->pushed) - skin_draw_pixmap(widget, bmp_active_skin, obj, gc, menurow->skin_index, + skin_draw_pixbuf(widget, bmp_active_skin, obj, menurow->skin_index, menurow->nx, menurow->ny, 0, 0, 8, 43); else - skin_draw_pixmap(widget, bmp_active_skin, obj, gc, menurow->skin_index, + skin_draw_pixbuf(widget, bmp_active_skin, obj, menurow->skin_index, menurow->nx + 8, menurow->ny, 0, 0, 8, 43); } else { - skin_draw_pixmap(widget, bmp_active_skin, obj, gc, menurow->skin_index, + skin_draw_pixbuf(widget, bmp_active_skin, obj, menurow->skin_index, menurow->sx + ((menurow->selected - 1) * 8), menurow->sy, 0, 0, 8, 43); } if (cfg.always_show_cb || menurow->pushed) { if (menurow->always_selected) - skin_draw_pixmap(widget, bmp_active_skin, obj, gc, menurow->skin_index, + skin_draw_pixbuf(widget, bmp_active_skin, obj, menurow->skin_index, menurow->sx + 8, menurow->sy + 10, 0, 10, 8, 8); if (menurow->doublesize_selected) - skin_draw_pixmap(widget, bmp_active_skin, obj, gc, menurow->skin_index, + skin_draw_pixbuf(widget, bmp_active_skin, obj, menurow->skin_index, menurow->sx + 24, menurow->sy + 26, 0, 26, 8, 8); } - GdkPixmap *image = NULL; - + GdkPixbuf *image = NULL; if (menurow->double_size) { - image = create_dblsize_pixmap(obj); + image = gdk_pixbuf_scale_simple(obj, menurow->width*2, menurow->height*2, GDK_INTERP_NEAREST); } else { - image = gdk_pixmap_new(NULL, menurow->width, menurow->height, gdk_rgb_get_visual()->depth); - gdk_draw_drawable(image, gc, obj, 0, 0, 0, 0, menurow->width, menurow->height); + image = gdk_pixbuf_copy(obj); } - g_object_unref(obj); + gdk_draw_pixbuf(widget->window, NULL, image, 0, 0, 0, 0, + menurow->width*(1+menurow->double_size), menurow->height*(1+menurow->double_size), + GDK_RGB_DITHER_NONE, 0, 0); - gdk_draw_drawable (widget->window, gc, image, 0, 0, 0, 0, - menurow->width*(1+menurow->double_size), menurow->height*(1+menurow->double_size)); - g_object_unref(gc); + g_object_unref(obj); g_object_unref(image); return FALSE;