1 /* this file is part of evince, a gnome document viewer
3 * Copyright (C) 2004 Martin Kretzschmar
6 * Martin Kretzschmar <martink@gnome.org>
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.
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.
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., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
23 #ifndef EV_PS_EXPORTER_H
24 #define EV_PS_EXPORTER_H
26 #include <glib-object.h>
30 #define EV_TYPE_PS_EXPORTER (ev_ps_exporter_get_type ())
31 #define EV_PS_EXPORTER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), EV_TYPE_PS_EXPORTER, EvPSExporter))
32 #define EV_PS_EXPORTER_IFACE(k) (G_TYPE_CHECK_CLASS_CAST((k), EV_TYPE_PS_EXPORTER, EvPSExporterIface))
33 #define EV_IS_PS_EXPORTER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), EV_TYPE_PS_EXPORTER))
34 #define EV_IS_PS_EXPORTER_IFACE(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EV_TYPE_PS_EXPORTER))
35 #define EV_PS_EXPORTER_GET_IFACE(inst) (G_TYPE_INSTANCE_GET_INTERFACE ((inst), EV_TYPE_PS_EXPORTER, EvPSExporterIface))
37 typedef struct _EvPSExporter EvPSExporter;
38 typedef struct _EvPSExporterIface EvPSExporterIface;
40 struct _EvPSExporterIface {
41 GTypeInterface base_iface;
44 void (* begin) (EvPSExporter *exporter,
48 void (* do_page) (EvPSExporter *exporter,
50 void (* end) (EvPSExporter *exporter);
53 GType ev_ps_exporter_get_type (void);
54 void ev_ps_exporter_begin (EvPSExporter *exporter, const char *filename,
55 int first_page, int last_page);
56 void ev_ps_exporter_do_page (EvPSExporter *exporter, int page);
57 void ev_ps_exporter_end (EvPSExporter *exporter);