X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=inline;f=src%2Fui%2Fgui%2Fpsppire-output-window.c;h=658d36a4669f7d9aecb236a25214678ead7f4444;hb=eea449691e75dfc2af4fd5d6670ab155b813a13e;hp=9886810f1134f109d7cc5496ad36f5876e587090;hpb=c742f5287ac3c40742091c4f37d368f6206e3d3f;p=pspp diff --git a/src/ui/gui/psppire-output-window.c b/src/ui/gui/psppire-output-window.c index 9886810f11..658d36a466 100644 --- a/src/ui/gui/psppire-output-window.c +++ b/src/ui/gui/psppire-output-window.c @@ -109,7 +109,8 @@ psppire_output_window_dispose (GObject *obj) viewer->items = NULL; viewer->n_items = viewer->allocated_items = 0; - g_object_unref (viewer->print_settings); + if (viewer->print_settings != NULL) + g_object_unref (viewer->print_settings); /* Chain up to the parent class */ G_OBJECT_CLASS (parent_class)->dispose (obj); @@ -148,6 +149,7 @@ struct psppire_output_driver struct output_driver driver; PsppireOutputWindow *viewer; struct xr_driver *xr; + int font_height; }; static struct output_driver_class psppire_output_class; @@ -221,8 +223,10 @@ psppire_output_submit (struct output_driver *this, { const GtkStyle *style = gtk_widget_get_style (GTK_WIDGET (viewer)); struct string_map options = STRING_MAP_INITIALIZER (options); + struct text_item *text_item; PangoFontDescription *font_desc; char *font_name; + int font_width; /* Use GTK+ default font as proportional font. */ font_name = pango_font_description_to_string (style->font_desc); @@ -251,7 +255,15 @@ psppire_output_submit (struct output_driver *this, pod->xr = xr_driver_create (cr, &options); string_map_destroy (&options); + + text_item = text_item_create (TEXT_ITEM_PARAGRAPH, "X"); + r = xr_rendering_create (pod->xr, text_item_super (text_item), cr); + xr_rendering_measure (r, &font_width, &pod->font_height); + /* xr_rendering_destroy (r); */ + text_item_unref (text_item); } + else + pod->viewer->y += pod->font_height / 2; r = xr_rendering_create (pod->xr, item, cr); if (r == NULL)