]> www.fi.muni.cz Git - evince.git/blob - libdocument/ev-file-exporter.c
[dualscreen] fix crash on ctrl+w and fix control window closing
[evince.git] / libdocument / ev-file-exporter.c
1 /* this file is part of evince, a gnome document viewer
2  *
3  *  Copyright (C) 2004 Martin Kretzschmar
4  *
5  *  Author:
6  *    Martin Kretzschmar <martink@gnome.org>
7  *
8  * Evince is free software; you can redistribute it and/or modify it
9  * under the terms of the GNU General Public License as published by
10  * the Free Software Foundation; either version 2 of the License, or
11  * (at your option) any later version.
12  *
13  * Evince is distributed in the hope that it will be useful, but
14  * WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16  * General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21  */
22
23 #include <config.h>
24 #include "ev-file-exporter.h"
25 #include "ev-document.h"
26
27 G_DEFINE_INTERFACE (EvFileExporter, ev_file_exporter, 0)
28
29 static void
30 ev_file_exporter_default_init (EvFileExporterInterface *klass)
31 {
32 }
33
34 void
35 ev_file_exporter_begin (EvFileExporter        *exporter,
36                         EvFileExporterContext *fc)
37 {
38         EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter);
39
40         iface->begin (exporter, fc);
41 }
42
43 void
44 ev_file_exporter_begin_page (EvFileExporter *exporter)
45 {
46         EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter);
47
48         if (iface->begin_page)
49                 iface->begin_page (exporter);
50 }
51
52 void
53 ev_file_exporter_do_page (EvFileExporter  *exporter,
54                           EvRenderContext *rc)
55 {
56         EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter);
57
58         iface->do_page (exporter, rc);
59 }
60
61 void
62 ev_file_exporter_end_page (EvFileExporter *exporter)
63 {
64         EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter);
65         
66         if (iface->end_page)
67                 iface->end_page (exporter);
68 }
69
70 void
71 ev_file_exporter_end (EvFileExporter *exporter)
72 {
73         EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter);
74
75         iface->end (exporter);
76 }
77
78 EvFileExporterCapabilities
79 ev_file_exporter_get_capabilities (EvFileExporter *exporter)
80 {
81         EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter);
82
83         return iface->get_capabilities (exporter);
84 }