Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/backend/ev-document.h
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@redhat.com>2005-04-05 00:40:58 (GMT)
committer Kristian Høgsberg <krh@src.gnome.org>2005-04-05 00:40:58 (GMT)
commit5e6728daa9b09a76f2537f7c848123639165cd70 (patch)
tree5025ca7e39a8b82ffecf70292de02360cf98973c /backend/ev-document.h
parent0278ffdb57c2e17e33acb52bb5569d746246f671 (diff)
Make searching work again.
2005-04-04 Kristian Høgsberg <krh@redhat.com> Make searching work again. * backend/ev-document.c: * backend/ev-document.h: * backend/ev-document-find.c: * backend/ev-document-find.h: Change EvDocumentIface so we no longer store the current page or zoom level in the document. The consequence is that all calls that operate on the current page now instead take the page number as an extra argument, and all coordinates are now doubles in document coordinate system. * pdf/ev-poppler.cc: * pixbuf/pixbuf-document.c: * ps/ps-document.c: Update backends accordingly.
Diffstat (limited to 'backend/ev-document.h')
-rw-r--r--backend/ev-document.h57
1 files changed, 26 insertions, 31 deletions
diff --git a/backend/ev-document.h b/backend/ev-document.h
index e5c91b7..743b947 100644
--- a/backend/ev-document.h
+++ b/backend/ev-document.h
@@ -54,14 +54,17 @@ typedef enum
EV_DOCUMENT_ERROR_ENCRYPTED
} EvDocumentError;
+typedef struct {
+ double x1;
+ double y1;
+ double x2;
+ double y2;
+} EvRectangle;
+
struct _EvDocumentIface
{
GTypeInterface base_iface;
- /* Signals */
- void (* page_changed) (EvDocument *document);
- void (* scale_changed) (EvDocument *document);
-
/* Methods */
gboolean (* load) (EvDocument *document,
const char *uri,
@@ -70,24 +73,20 @@ struct _EvDocumentIface
const char *uri,
GError **error);
int (* get_n_pages) (EvDocument *document);
- void (* set_page) (EvDocument *document,
- int page);
- int (* get_page) (EvDocument *document);
- void (* set_scale) (EvDocument *document,
- double scale);
void (* get_page_size) (EvDocument *document,
int page,
- int *width,
- int *height);
+ double *width,
+ double *height);
char * (* get_page_label) (EvDocument *document,
int page);
char * (* get_text) (EvDocument *document,
- GdkRectangle *rect);
- EvLink * (* get_link) (EvDocument *document,
- int x,
- int y);
- GList * (* get_links) (EvDocument *document);
- GdkPixbuf * (* render_pixbuf) (EvDocument *document);
+ int page,
+ EvRectangle *rect);
+ GList * (* get_links) (EvDocument *document,
+ int page);
+ GdkPixbuf * (* render_pixbuf) (EvDocument *document,
+ int page,
+ double scale);
};
GType ev_document_get_type (void);
@@ -104,24 +103,20 @@ gboolean ev_document_save (EvDocument *document,
GError **error);
char *ev_document_get_title (EvDocument *document);
int ev_document_get_n_pages (EvDocument *document);
-void ev_document_set_page (EvDocument *document,
- int page);
-int ev_document_get_page (EvDocument *document);
-void ev_document_set_scale (EvDocument *document,
- double scale);
void ev_document_get_page_size (EvDocument *document,
int page,
- int *width,
- int *height);
+ double *width,
+ double *height);
char *ev_document_get_page_label(EvDocument *document,
- int page);
+ int page);
char *ev_document_get_text (EvDocument *document,
- GdkRectangle *rect);
-EvLink *ev_document_get_link (EvDocument *document,
- int x,
- int y);
-GList *ev_document_get_links (EvDocument *document);
-GdkPixbuf *ev_document_render_pixbuf (EvDocument *document);
+ int page,
+ EvRectangle *rect);
+GList *ev_document_get_links (EvDocument *document,
+ int page);
+GdkPixbuf *ev_document_render_pixbuf (EvDocument *document,
+ int page,
+ double scale);
G_END_DECLS