- viewer = pod->viewer;
-
- cr = gdk_cairo_create (GTK_WIDGET (pod->viewer)->window);
- if (pod->xr == NULL)
- pod->xr = xr_create_driver (cr);
-
- r = xr_rendering_create (pod->xr, item, cr);
- if (r == NULL)
- goto done;
-
- if (viewer->n_items >= viewer->allocated_items)
- viewer->items = x2nrealloc (viewer->items, &viewer->allocated_items,
- sizeof *viewer->items);
- viewer->items[viewer->n_items++] = output_item_ref (item);
-
- xr_rendering_measure (r, &tw, &th);
-
- drawing_area = gtk_drawing_area_new ();
- gtk_widget_modify_bg (
- GTK_WIDGET (drawing_area), GTK_STATE_NORMAL,
- >k_widget_get_style (drawing_area)->base[GTK_STATE_NORMAL]);
- g_object_set_data (G_OBJECT (drawing_area), "rendering", r);
- gtk_widget_set_size_request (drawing_area, tw, th);
- gtk_layout_put (pod->viewer->output, drawing_area, 0, pod->viewer->y);
- gtk_widget_show (drawing_area);
- g_signal_connect (G_OBJECT (drawing_area), "expose_event",
- G_CALLBACK (expose_event_callback), NULL);