X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;ds=inline;f=libdocument%2Fev-file-exporter.c;h=23a5debc09c85b894219945ea04dfe23b58ba1cf;hb=d4139205b010ed06310d14284e63114e88ec6de2;hp=d65abec168535249355ff5bfc8e67316f2cf7635;hpb=e70119b293ab8a26bdea4a56407bb0f41f1e43aa;p=evince.git diff --git a/libdocument/ev-file-exporter.c b/libdocument/ev-file-exporter.c index d65abec1..23a5debc 100644 --- a/libdocument/ev-file-exporter.c +++ b/libdocument/ev-file-exporter.c @@ -17,54 +17,60 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ +#include #include "ev-file-exporter.h" +#include "ev-document.h" -GType -ev_file_exporter_get_type (void) -{ - static GType type = 0; - - if (G_UNLIKELY (type == 0)) { - const GTypeInfo our_info = - { - sizeof (EvFileExporterIface), - NULL, - NULL, - }; +G_DEFINE_INTERFACE (EvFileExporter, ev_file_exporter, 0) - type = g_type_register_static (G_TYPE_INTERFACE, - "EvFileExporter", - &our_info, (GTypeFlags)0); - } - - return type; +static void +ev_file_exporter_default_init (EvFileExporterInterface *klass) +{ } void ev_file_exporter_begin (EvFileExporter *exporter, EvFileExporterContext *fc) { - EvFileExporterIface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter); + EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter); iface->begin (exporter, fc); } +void +ev_file_exporter_begin_page (EvFileExporter *exporter) +{ + EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter); + + if (iface->begin_page) + iface->begin_page (exporter); +} + void ev_file_exporter_do_page (EvFileExporter *exporter, EvRenderContext *rc) { - EvFileExporterIface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter); + EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter); iface->do_page (exporter, rc); } +void +ev_file_exporter_end_page (EvFileExporter *exporter) +{ + EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter); + + if (iface->end_page) + iface->end_page (exporter); +} + void ev_file_exporter_end (EvFileExporter *exporter) { - EvFileExporterIface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter); + EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter); iface->end (exporter); } @@ -72,7 +78,7 @@ ev_file_exporter_end (EvFileExporter *exporter) EvFileExporterCapabilities ev_file_exporter_get_capabilities (EvFileExporter *exporter) { - EvFileExporterIface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter); + EvFileExporterInterface *iface = EV_FILE_EXPORTER_GET_IFACE (exporter); - iface->get_capabilities (exporter); + return iface->get_capabilities (exporter); }