diff options
author | Jonathan Blandford <jrb@src.gnome.org> | 2005-03-31 18:43:05 (GMT) |
---|---|---|
committer | Jonathan Blandford <jrb@src.gnome.org> | 2005-03-31 18:43:05 (GMT) |
commit | 03ad9a29cbe1a89dfc5e8b94a74f6f86c4cba076 (patch) | |
tree | 9a2b40848e7f657691fd682673d71189301b676e /pdf/ev-poppler.cc | |
parent | e8096c18ba580156072e8c84103bee6f6d3f0bfc (diff) |
Cr 31 13:27:50 2005 Jonathan Blandford <jrb@redhat.com>
Cr 31 13:27:50 2005 Jonathan Blandford <jrb@redhat.com>
* backend/ev-document.c: (ev_document_get_page_label):
* backend/ev-document.h:
* backend/ev-page-cache.c: (_ev_page_cache_new),
(ev_page_cache_get_page_label):
* backend/ev-page-cache.h:
* pdf/ev-poppler.cc:
* shell/ev-sidebar-links.c: (ev_sidebar_links_construct),
(links_page_num_func):
* shell/ev-sidebar-thumbnails.c:
(ev_sidebar_thumbnails_set_document):
* shell/ev-view.c: (status_message_from_link),
(ev_view_motion_notify_event):
* shell/ev-window.c: (document_supports_sidebar): Add in page
label support. It's not perfect yet, but it's the first 'feature'
in a while.
Also, fix a bogus comment noticed by crispin.
VS: Modified Files:
Diffstat (limited to 'pdf/ev-poppler.cc')
-rw-r--r-- | pdf/ev-poppler.cc | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/pdf/ev-poppler.cc b/pdf/ev-poppler.cc index 6a51672..1dd27b7 100644 --- a/pdf/ev-poppler.cc +++ b/pdf/ev-poppler.cc @@ -261,6 +261,26 @@ pdf_document_get_page_size (EvDocument *document, width, height); } +static char * +pdf_document_get_page_label (EvDocument *document, + int page) +{ + PopplerPage *poppler_page = NULL; + char *label = NULL; + + if (page == -1) + poppler_page = PDF_DOCUMENT (document)->page; + else + poppler_page = poppler_document_get_page (PDF_DOCUMENT (document)->document, + page); + + g_object_get (poppler_page, + "label", &label, + NULL); + + return label; +} + static GList * pdf_document_get_links (EvDocument *document) { @@ -359,6 +379,7 @@ pdf_document_document_iface_init (EvDocumentIface *iface) iface->get_page = pdf_document_get_page; iface->set_scale = pdf_document_set_scale; iface->get_page_size = pdf_document_get_page_size; + iface->get_page_label = pdf_document_get_page_label; iface->get_links = pdf_document_get_links; iface->render_pixbuf = pdf_document_render_pixbuf; }; |