X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;ds=sidebyside;f=backend%2Fimpress%2Fimpress-document.c;h=79cbf51b24010d9bac01595f7dc33f996e551326;hb=4cec7958f9bfd4f2950bdf0b257757348b26dafc;hp=6251fbd25ae101cc0b4027de726e44a76542183c;hpb=217797d63b2d3b1c9a7a0511af1bbf3d99f0d482;p=evince.git diff --git a/backend/impress/impress-document.c b/backend/impress/impress-document.c index 6251fbd2..79cbf51b 100644 --- a/backend/impress/impress-document.c +++ b/backend/impress/impress-document.c @@ -18,14 +18,18 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include -#include +#include "config.h" + #include +#include +#include + #include "imposter.h" #include "impress-document.h" -#include "ev-document-thumbnails.h" + #include "ev-document-misc.h" +#include "ev-document-thumbnails.h" struct _ImpressDocumentClass { @@ -58,11 +62,10 @@ typedef struct _ImpressDocumentClass ImpressDocumentClass; static void impress_document_document_iface_init (EvDocumentIface *iface); static void impress_document_document_thumbnails_iface_init (EvDocumentThumbnailsIface *iface); -G_DEFINE_TYPE_WITH_CODE (ImpressDocument, impress_document, G_TYPE_OBJECT, - { G_IMPLEMENT_INTERFACE (EV_TYPE_DOCUMENT, - impress_document_document_iface_init); - G_IMPLEMENT_INTERFACE (EV_TYPE_DOCUMENT_THUMBNAILS, - impress_document_document_thumbnails_iface_init); +EV_BACKEND_REGISTER_WITH_CODE (ImpressDocument, impress_document, + { + EV_BACKEND_IMPLEMENT_INTERFACE (EV_TYPE_DOCUMENT_THUMBNAILS, + impress_document_document_thumbnails_iface_init); }); /* Renderer */ @@ -332,9 +335,9 @@ impress_document_get_n_pages (EvDocument *document) static void impress_document_get_page_size (EvDocument *document, - int page, - double *width, - double *height) + EvPage *page, + double *width, + double *height) { ImpressDocument *impress_document = IMPRESS_DOCUMENT (document); @@ -381,7 +384,7 @@ impress_document_render_pixbuf (EvDocument *document, g_return_val_if_fail (IMPRESS_IS_DOCUMENT (document), NULL); g_return_val_if_fail (impress_document->imp != NULL, NULL); - impress_document->pagenum = rc->page; + impress_document->pagenum = rc->page->index; g_mutex_lock (impress_document->mutex); impress_document->cond = g_cond_new (); @@ -458,12 +461,6 @@ impress_document_class_init (ImpressDocumentClass *klass) gobject_class->finalize = impress_document_finalize; } -static gboolean -impress_document_can_get_text (EvDocument *document) -{ - return FALSE; -} - static EvDocumentInfo * impress_document_get_info (EvDocument *document) { @@ -480,7 +477,6 @@ impress_document_document_iface_init (EvDocumentIface *iface) { iface->load = impress_document_load; iface->save = impress_document_save; - iface->can_get_text = impress_document_can_get_text; iface->get_n_pages = impress_document_get_n_pages; iface->get_page_size = impress_document_get_page_size; iface->render = impress_document_render; @@ -494,7 +490,6 @@ impress_document_thumbnails_get_thumbnail (EvDocumentThumbnails *document, { GdkPixbuf *pixbuf; GdkPixbuf *scaled_pixbuf; - gdouble w, h; pixbuf = impress_document_render_pixbuf (EV_DOCUMENT (document), rc); scaled_pixbuf = gdk_pixbuf_scale_simple (pixbuf,