diff options
author | Kristian 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) |
commit | 5e6728daa9b09a76f2537f7c848123639165cd70 (patch) | |
tree | 5025ca7e39a8b82ffecf70292de02360cf98973c /backend/ev-document.c | |
parent | 0278ffdb57c2e17e33acb52bb5569d746246f671 (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.c')
-rw-r--r-- | backend/ev-document.c | 70 |
1 files changed, 13 insertions, 57 deletions
diff --git a/backend/ev-document.c b/backend/ev-document.c index d4d6f20..aa61fc6 100644 --- a/backend/ev-document.c +++ b/backend/ev-document.c @@ -158,42 +158,10 @@ ev_document_get_n_pages (EvDocument *document) } void -ev_document_set_page (EvDocument *document, - int page) -{ - EvDocumentIface *iface = EV_DOCUMENT_GET_IFACE (document); - - LOG ("ev_document_set_page"); - iface->set_page (document, page); -} - -int -ev_document_get_page (EvDocument *document) -{ - EvDocumentIface *iface = EV_DOCUMENT_GET_IFACE (document); - int retval; - - LOG ("ev_document_get_page"); - retval = iface->get_page (document); - - return retval; -} - -void -ev_document_set_scale (EvDocument *document, - double scale) -{ - EvDocumentIface *iface = EV_DOCUMENT_GET_IFACE (document); - - LOG ("ev_document_set_scale"); - iface->set_scale (document, scale); -} - -void ev_document_get_page_size (EvDocument *document, int page, - int *width, - int *height) + double *width, + double *height) { EvDocumentIface *iface = EV_DOCUMENT_GET_IFACE (document); @@ -215,36 +183,22 @@ ev_document_get_page_label(EvDocument *document, } char * -ev_document_get_text (EvDocument *document, - GdkRectangle *rect) +ev_document_get_text (EvDocument *document, + int page, + EvRectangle *rect) { EvDocumentIface *iface = EV_DOCUMENT_GET_IFACE (document); char *retval; LOG ("ev_document_get_text"); - retval = iface->get_text (document, rect); - - return retval; -} - -EvLink * -ev_document_get_link (EvDocument *document, - int x, - int y) -{ - EvDocumentIface *iface = EV_DOCUMENT_GET_IFACE (document); - EvLink *retval; - - LOG ("ev_document_get_link"); - if (iface->get_link == NULL) - return NULL; - retval = iface->get_link (document, x, y); + retval = iface->get_text (document, page, rect); return retval; } GList * -ev_document_get_links (EvDocument *document) +ev_document_get_links (EvDocument *document, + int page) { EvDocumentIface *iface = EV_DOCUMENT_GET_IFACE (document); GList *retval; @@ -252,7 +206,7 @@ ev_document_get_links (EvDocument *document) LOG ("ev_document_get_link"); if (iface->get_links == NULL) return NULL; - retval = iface->get_links (document); + retval = iface->get_links (document, page); return retval; } @@ -260,7 +214,9 @@ ev_document_get_links (EvDocument *document) GdkPixbuf * -ev_document_render_pixbuf (EvDocument *document) +ev_document_render_pixbuf (EvDocument *document, + int page, + double scale) { EvDocumentIface *iface = EV_DOCUMENT_GET_IFACE (document); GdkPixbuf *retval; @@ -268,7 +224,7 @@ ev_document_render_pixbuf (EvDocument *document) LOG ("ev_document_render_pixbuf"); g_assert (iface->render_pixbuf); - retval = iface->render_pixbuf (document); + retval = iface->render_pixbuf (document, page, scale); return retval; } |