From d7a1973f9fe7056d55e06373dd63e70f4222d68b Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Tue, 13 Jul 2010 15:57:18 +0200 Subject: [PATCH] gtk-demo: Make pixbufs demo use Cairo --- demos/gtk-demo/pixbufs.c | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/demos/gtk-demo/pixbufs.c b/demos/gtk-demo/pixbufs.c index d7b7eef3e9..e2fbcb06a5 100644 --- a/demos/gtk-demo/pixbufs.c +++ b/demos/gtk-demo/pixbufs.c @@ -100,20 +100,15 @@ expose_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data) { - guchar *pixels; - int rowstride; + cairo_t *cr; - rowstride = gdk_pixbuf_get_rowstride (frame); + cr = gdk_cairo_create (event->window); - pixels = gdk_pixbuf_get_pixels (frame) + rowstride * event->area.y + event->area.x * 3; + gdk_cairo_set_source_pixbuf (cr, frame, 0, 0); + gdk_cairo_rectangle (cr, &event->area); + cairo_fill (cr); - gdk_draw_rgb_image_dithalign (widget->window, - widget->style->black_gc, - event->area.x, event->area.y, - event->area.width, event->area.height, - GDK_RGB_DITHER_NORMAL, - pixels, rowstride, - event->area.x, event->area.y); + cairo_destroy (cr); return TRUE; }