[gthumb/ext] [image_print] do not use the page_setup if it's not available
- From: Paolo Bacchilega <paobac src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gthumb/ext] [image_print] do not use the page_setup if it's not available
- Date: Wed, 2 Dec 2009 10:38:56 +0000 (UTC)
commit 5a8c7fe2674f0284d787eb54f8735dbaff0f2b0c
Author: Paolo Bacchilega <paobac src gnome org>
Date: Wed Dec 2 11:37:39 2009 +0100
[image_print] do not use the page_setup if it's not available
[bug #219370]
extensions/image_print/gth-image-print-job.c | 24 +++++++++++++++---------
1 files changed, 15 insertions(+), 9 deletions(-)
---
diff --git a/extensions/image_print/gth-image-print-job.c b/extensions/image_print/gth-image-print-job.c
index c4fe258..d190ae0 100644
--- a/extensions/image_print/gth-image-print-job.c
+++ b/extensions/image_print/gth-image-print-job.c
@@ -1270,7 +1270,6 @@ operation_create_custom_widget_cb (GtkPrintOperation *operation,
gpointer user_data)
{
GthImagePrintJob *self = user_data;
- int i;
self->priv->builder = _gtk_builder_new_from_file ("print-layout.ui", "image_print");
self->priv->caption_chooser = gth_metadata_chooser_new (GTH_METADATA_ALLOW_IN_PRINT);
@@ -1365,12 +1364,16 @@ operation_create_custom_widget_cb (GtkPrintOperation *operation,
G_CALLBACK (position_combobox_changed_cb),
self);
- gtk_widget_set_size_request (GET_WIDGET ("preview_drawingarea"),
- gtk_page_setup_get_paper_width (self->priv->page_setup, GTK_UNIT_MM),
- gtk_page_setup_get_paper_height (self->priv->page_setup, GTK_UNIT_MM));
- for (i = 0; i < self->priv->n_images; i++)
- gth_image_info_reset (self->priv->images[i]);
- gth_image_print_job_update_preview (self);
+ if (self->priv->page_setup != NULL) {
+ int i;
+
+ gtk_widget_set_size_request (GET_WIDGET ("preview_drawingarea"),
+ gtk_page_setup_get_paper_width (self->priv->page_setup, GTK_UNIT_MM),
+ gtk_page_setup_get_paper_height (self->priv->page_setup, GTK_UNIT_MM));
+ for (i = 0; i < self->priv->n_images; i++)
+ gth_image_info_reset (self->priv->images[i]);
+ gth_image_print_job_update_preview (self);
+ }
return gtk_builder_get_object (self->priv->builder, "print_layout");
}
@@ -1387,10 +1390,13 @@ operation_update_custom_widget_cb (GtkPrintOperation *operation,
int i;
_g_object_unref (self->priv->page_setup);
- self->priv->page_setup = gtk_page_setup_copy (setup);
+ self->priv->page_setup = NULL;
- self->priv->dpi = gtk_print_settings_get_resolution (settings);
+ if (setup == NULL)
+ return;
+ self->priv->page_setup = gtk_page_setup_copy (setup);
+ self->priv->dpi = gtk_print_settings_get_resolution (settings);
gtk_widget_set_size_request (GET_WIDGET ("preview_drawingarea"),
gtk_page_setup_get_paper_width (setup, GTK_UNIT_MM),
gtk_page_setup_get_paper_height (setup, GTK_UNIT_MM));
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]