diff options
author | Carlos Garcia Campos <carlosgc@gnome.org> | 2007-07-29 14:15:17 (GMT) |
---|---|---|
committer | Carlos Garcia Campos <carlosgc@src.gnome.org> | 2007-07-29 14:15:17 (GMT) |
commit | 85fa11d86616d3a9c5a5cfeba78dd7aa72e7997a (patch) | |
tree | c8641298dbaafcb9c5440ed0fa7d0cbc9ed37b92 /shell/ev-jobs.c | |
parent | 5f6b1add282b53fc4544d79e9a6fb635c6754058 (diff) |
Allow printing multiple pages per sheet. Fixes bug #395573.
2007-07-29 Carlos Garcia Campos <carlosgc@gnome.org>
* configure.ac:
* backend/pdf/ev-poppler.cc: (pdf_print_context_free),
(pdf_document_file_exporter_begin),
(pdf_document_file_exporter_do_page),
(pdf_document_file_exporter_get_capabilities):
* libdocument/ev-file-exporter.h:
* shell/ev-jobs.[ch]: (ev_job_print_new), (ev_job_print_run):
* shell/ev-window.c: (ev_window_print_send),
(ev_window_print_dialog_response_cb):
Allow printing multiple pages per sheet. Fixes bug #395573.
svn path=/trunk/; revision=2591
Diffstat (limited to 'shell/ev-jobs.c')
-rw-r--r-- | shell/ev-jobs.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/shell/ev-jobs.c b/shell/ev-jobs.c index d5d45f2..8e140f8 100644 --- a/shell/ev-jobs.c +++ b/shell/ev-jobs.c @@ -326,6 +326,8 @@ render_finished_cb (EvDocument *document, /* FIXME: ps backend should be ported to cairo */ job->surface = ev_document_misc_surface_from_pixbuf (pixbuf); + job->page_ready = TRUE; + g_signal_emit (job, job_render_signals[PAGE_READY], 0); EV_JOB (job)->finished = TRUE; ev_job_finished (EV_JOB (job)); } @@ -562,6 +564,7 @@ ev_job_print_new (EvDocument *document, EvPrintRange *ranges, gint n_ranges, EvPrintPageSet page_set, + gint pages_per_sheet, gint copies, gdouble collate, gdouble reverse) @@ -584,6 +587,8 @@ ev_job_print_new (EvDocument *document, job->n_ranges = n_ranges; job->page_set = page_set; + + job->pages_per_sheet = pages_per_sheet; job->copies = copies; job->collate = collate; @@ -711,6 +716,7 @@ ev_job_print_run (EvJobPrint *job) fc.paper_width = job->width; fc.paper_height = job->height; fc.duplex = FALSE; + fc.pages_per_sheet = job->pages_per_sheet; ev_document_doc_mutex_lock (); ev_file_exporter_begin (EV_FILE_EXPORTER (document), &fc); |