Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/libdocument
diff options
context:
space:
mode:
Diffstat (limited to 'libdocument')
-rw-r--r--libdocument/ev-document-links.h1
-rw-r--r--libdocument/ev-link.c20
-rw-r--r--libdocument/ev-link.h1
3 files changed, 22 insertions, 0 deletions
diff --git a/libdocument/ev-document-links.h b/libdocument/ev-document-links.h
index 8e8f20a..a9208f4 100644
--- a/libdocument/ev-document-links.h
+++ b/libdocument/ev-document-links.h
@@ -48,6 +48,7 @@ enum {
EV_DOCUMENT_LINKS_COLUMN_MARKUP,
EV_DOCUMENT_LINKS_COLUMN_LINK,
EV_DOCUMENT_LINKS_COLUMN_EXPAND,
+ EV_DOCUMENT_LINKS_COLUMN_PAGE_LABEL,
EV_DOCUMENT_LINKS_COLUMN_NUM_COLUMNS
};
diff --git a/libdocument/ev-link.c b/libdocument/ev-link.c
index 8561914..17e4421 100644
--- a/libdocument/ev-link.c
+++ b/libdocument/ev-link.c
@@ -224,3 +224,23 @@ ev_link_mapping_find (GList *link_mapping,
return link;
}
+gint
+ev_link_get_page (EvLink *link)
+{
+ EvLinkAction *action;
+ EvLinkDest *dest;
+
+ action = ev_link_get_action (link);
+ if (!action)
+ return -1;
+
+ if (ev_link_action_get_action_type (action) !=
+ EV_LINK_ACTION_TYPE_GOTO_DEST)
+ return -1;
+
+ dest = ev_link_action_get_dest (action);
+ if (dest)
+ return ev_link_dest_get_page (dest);
+
+ return -1;
+}
diff --git a/libdocument/ev-link.h b/libdocument/ev-link.h
index b7304de..9bd7f6e 100644
--- a/libdocument/ev-link.h
+++ b/libdocument/ev-link.h
@@ -43,6 +43,7 @@ EvLink *ev_link_new (const gchar *title,
const gchar *ev_link_get_title (EvLink *self);
EvLinkAction *ev_link_get_action (EvLink *self);
+gint ev_link_get_page (EvLink *link);
/* Link Mapping stuff */
typedef struct _EvLinkMapping EvLinkMapping;