diff options
Diffstat (limited to 'roi.c')
-rw-r--r-- | roi.c | 15 |
1 files changed, 4 insertions, 11 deletions
@@ -237,20 +237,13 @@ configure_event(GtkWidget *widget, GdkEventConfigure *event, gpointer data) } gboolean -expose_event(GtkWidget *widget, GdkEventExpose *event, gpointer userdata) +draw_cb(GtkWidget *widget, cairo_t *cr, gpointer userdata) { struct roi *roi = userdata; - cairo_t *cr; - cr = gdk_cairo_create(gtk_widget_get_window(widget)); gdk_cairo_set_source_pixbuf(cr, roi->modified_input ? roi->modified_input : roi->input, 0, 0); - cairo_rectangle(cr, - event->area.x, event->area.y, - event->area.width, event->area.height); - /* cairo_paint(cr); */ - cairo_fill(cr); - cairo_destroy(cr); + cairo_paint(cr); return FALSE; } @@ -276,8 +269,8 @@ main(int argc, char *argv[]) g_signal_connect(roi.window, "destroy", G_CALLBACK(gtk_main_quit), NULL); - g_signal_connect(G_OBJECT(roi.drawing_area), "expose-event", - G_CALLBACK(expose_event), &roi); + g_signal_connect(G_OBJECT(roi.drawing_area), "draw", + G_CALLBACK(draw_cb), &roi); g_signal_connect(G_OBJECT(roi.drawing_area), "configure-event", G_CALLBACK(configure_event), &roi); |