X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=backend%2Fev-document-thumbnails.h;h=6e15a327606999c096e090d4dd9674148bab5e35;hb=d89b1cb89ef2d589befbe7a7f0c9732ff72ecc7b;hp=fdc1e80aae9f9486b54a5576beeef334b74a9eb3;hpb=ca0836cb912f3b88834cae97774079314727c6e2;p=evince.git diff --git a/backend/ev-document-thumbnails.h b/backend/ev-document-thumbnails.h index fdc1e80a..6e15a327 100644 --- a/backend/ev-document-thumbnails.h +++ b/backend/ev-document-thumbnails.h @@ -23,33 +23,54 @@ #include +#include "ev-render-context.h" + G_BEGIN_DECLS -#define EV_TYPE_DOCUMENT_THUMBNAILS (ev_document_thumbnails_get_type ()) -#define EV_DOCUMENT_THUMBNAILS(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), EV_TYPE_DOCUMENT_THUMBNAILS, EvDocumentThumbnails)) -#define EV_DOCUMENT_THUMBNAILS_IFACE(k) (G_TYPE_CHECK_CLASS_CAST((k), EV_TYPE_DOCUMENT_THUMBNAILS, EvDocumentThumbnailsIface)) -#define EV_IS_DOCUMENT_THUMBNAILS(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), EV_TYPE_DOCUMENT_THUMBNAILS)) -#define EV_IS_DOCUMENT_THUMBNAILS_IFACE(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EV_TYPE_DOCUMENT_THUMBNAILS)) +#define EV_TYPE_DOCUMENT_THUMBNAILS (ev_document_thumbnails_get_type ()) +#define EV_DOCUMENT_THUMBNAILS(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), EV_TYPE_DOCUMENT_THUMBNAILS, EvDocumentThumbnails)) +#define EV_DOCUMENT_THUMBNAILS_IFACE(k) (G_TYPE_CHECK_CLASS_CAST((k), EV_TYPE_DOCUMENT_THUMBNAILS, EvDocumentThumbnailsIface)) +#define EV_IS_DOCUMENT_THUMBNAILS(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), EV_TYPE_DOCUMENT_THUMBNAILS)) +#define EV_IS_DOCUMENT_THUMBNAILS_IFACE(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EV_TYPE_DOCUMENT_THUMBNAILS)) #define EV_DOCUMENT_THUMBNAILS_GET_IFACE(inst) (G_TYPE_INSTANCE_GET_INTERFACE ((inst), EV_TYPE_DOCUMENT_THUMBNAILS, EvDocumentThumbnailsIface)) -typedef struct _EvDocumentThumbnails EvDocumentThumbnails; -typedef struct _EvDocumentThumbnailsIface EvDocumentThumbnailsIface; +typedef struct _EvDocumentThumbnails EvDocumentThumbnails; +typedef struct _EvDocumentThumbnailsIface EvDocumentThumbnailsIface; struct _EvDocumentThumbnailsIface { - GTypeInterface base_iface; + GTypeInterface base_iface; - /* Methods */ - GdkPixbuf * (* get_thumbnail) (EvDocumentThumbnails *document, - gint page, - gint width); + /* Methods */ + GdkPixbuf * (* get_thumbnail) (EvDocumentThumbnails *document, + gint page, + gint rotation, + gint size, + gboolean border); + void (* get_dimensions) (EvDocumentThumbnails *document, + gint page, + gint suggested_width, + gint *width, + gint *height); }; -GType ev_document_thumbnails_get_type (void); +GType ev_document_thumbnails_get_type (void); + +/* FIXME: This is a little bit busted. We call get_thumbnail w/ a suggested + * width, but we should call it with a scale so that different sized pages get + * sized proportionally. + */ -GdkPixbuf *ev_document_thumbnails_get_thumbnail (EvDocumentThumbnails *document, - gint page, - gint width); +GdkPixbuf *ev_document_thumbnails_get_thumbnail (EvDocumentThumbnails *document, + gint page, + gint rotation, + gint size, + gboolean border); +void ev_document_thumbnails_get_dimensions (EvDocumentThumbnails *document, + gint page, + gint size, + gint *width, + gint *height); G_END_DECLS