]> www.fi.muni.cz Git - evince.git/blobdiff - shell/ev-print-job.c
Updated Brazilian Portuguese translation.
[evince.git] / shell / ev-print-job.c
index 8363639861105632257be2e7f1de722c252e4608..955e4bab183b246f5f9b2bd9919f22be07631a3b 100644 (file)
@@ -34,6 +34,7 @@
 
 #include "ev-ps-exporter.h"
 #include "ev-print-job.h"
+#include "ev-page-cache.h"
 
 #define EV_PRINT_JOB_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST((klass), EV_PRINT_JOB, EvPrintJobClass))
 #define EV_IS_PRINT_JOB_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE((klass), EV_PRINT_JOB))
@@ -219,7 +220,7 @@ void
 ev_print_job_use_print_dialog_settings (EvPrintJob *job, GnomePrintDialog *dialog)
 {
        GnomePrintConfig *print_config;
-       EvPageCache *page_cache = ev_document_get_page_cache (job->document);
+       EvPageCache *page_cache = ev_page_cache_get (job->document);
 
        g_return_if_fail (EV_IS_PRINT_JOB (job));
        g_return_if_fail (GNOME_IS_PRINT_DIALOG (dialog));
@@ -231,7 +232,7 @@ ev_print_job_use_print_dialog_settings (EvPrintJob *job, GnomePrintDialog *dialo
        gnome_print_config_get_boolean (print_config,
                                        (guchar *)GNOME_PRINT_KEY_DUPLEX, &job->duplex);
 
-       page_cache = ev_document_get_page_cache (job->document);
+       page_cache = ev_page_cache_get (job->document);
 
        /* get the printing ranges */
        switch (gnome_print_dialog_get_range (dialog)) {
@@ -257,8 +258,10 @@ idle_print_handler (EvPrintJob *job)
 {
        if (!job->printing) {
                ev_document_doc_mutex_lock ();
-               ev_ps_exporter_begin (EV_PS_EXPORTER (job->document),
-                                     job->temp_file);
+               ev_ps_exporter_begin (
+                        EV_PS_EXPORTER (job->document),
+                        job->temp_file, job->first_page, job->last_page,
+                        job->width, job->height, job->duplex);
                ev_document_doc_mutex_unlock ();
                job->next_page = job->first_page;
                job->printing = TRUE;
@@ -266,13 +269,18 @@ idle_print_handler (EvPrintJob *job)
        }
 
        if (job->next_page <= job->last_page) {
+               EvRenderContext *rc;
 #if 0
                g_printerr ("Printing page %d\n", job->next_page);
 #endif
+               rc = ev_render_context_new (0, job->next_page, 1.0);
+
                ev_document_doc_mutex_lock ();
-               ev_ps_exporter_do_page (EV_PS_EXPORTER (job->document),
-                                       job->next_page);
+               ev_ps_exporter_do_page (EV_PS_EXPORTER (job->document), rc);
                ev_document_doc_mutex_unlock ();
+
+               g_object_unref (rc);
+
                job->next_page++;
                return TRUE;
        } else { /* no more pages */