-static void dvi_document_document_iface_init (EvDocumentIface *iface);
-static void dvi_document_document_thumbnails_iface_init (EvDocumentThumbnailsIface *iface);
-static void dvi_document_file_exporter_iface_init (EvFileExporterIface *iface);
-static void dvi_document_get_page_size (EvDocument *document,
- int page,
- double *width,
- double *height);
-static void dvi_document_do_color_special (DviContext *dvi,
- const char *prefix,
- const char *arg);
-
-G_DEFINE_TYPE_WITH_CODE
- (DviDocument, dvi_document, G_TYPE_OBJECT,
- {
- G_IMPLEMENT_INTERFACE (EV_TYPE_DOCUMENT, dvi_document_document_iface_init);
- G_IMPLEMENT_INTERFACE (EV_TYPE_DOCUMENT_THUMBNAILS, dvi_document_document_thumbnails_iface_init);
- G_IMPLEMENT_INTERFACE (EV_TYPE_FILE_EXPORTER, dvi_document_file_exporter_iface_init);
+static void dvi_document_document_thumbnails_iface_init (EvDocumentThumbnailsInterface *iface);
+static void dvi_document_file_exporter_iface_init (EvFileExporterInterface *iface);
+static void dvi_document_do_color_special (DviContext *dvi,
+ const char *prefix,
+ const char *arg);
+
+EV_BACKEND_REGISTER_WITH_CODE (DviDocument, dvi_document,
+ {
+ EV_BACKEND_IMPLEMENT_INTERFACE (EV_TYPE_DOCUMENT_THUMBNAILS, dvi_document_document_thumbnails_iface_init);
+ EV_BACKEND_IMPLEMENT_INTERFACE (EV_TYPE_FILE_EXPORTER, dvi_document_file_exporter_iface_init);