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-info.h1
-rw-r--r--libdocument/ev-document.h1
-rw-r--r--libdocument/ev-link.c21
-rw-r--r--libdocument/ev-link.h14
4 files changed, 30 insertions, 7 deletions
diff --git a/libdocument/ev-document-info.h b/libdocument/ev-document-info.h
index 0cd1ef8..b5e8654 100644
--- a/libdocument/ev-document-info.h
+++ b/libdocument/ev-document-info.h
@@ -23,7 +23,6 @@
#include <glib-object.h>
#include <glib.h>
-#include "ev-link.h"
G_BEGIN_DECLS
diff --git a/libdocument/ev-document.h b/libdocument/ev-document.h
index e83295f..833491e 100644
--- a/libdocument/ev-document.h
+++ b/libdocument/ev-document.h
@@ -27,7 +27,6 @@
#include <gdk/gdk.h>
#include <cairo.h>
-#include "ev-link.h"
#include "ev-document-info.h"
#include "ev-render-context.h"
diff --git a/libdocument/ev-link.c b/libdocument/ev-link.c
index 17e4421..1e8251a 100644
--- a/libdocument/ev-link.c
+++ b/libdocument/ev-link.c
@@ -224,6 +224,27 @@ ev_link_mapping_find (GList *link_mapping,
return link;
}
+void
+ev_link_mapping_get_area (GList *link_mapping,
+ EvLink *link,
+ EvRectangle *area)
+{
+ GList *list;
+
+ for (list = link_mapping; list; list = list->next) {
+ EvLinkMapping *mapping = list->data;
+
+ if (mapping->link == link) {
+ area->x1 = mapping->x1;
+ area->y1 = mapping->y1;
+ area->x2 = mapping->x2;
+ area->y2 = mapping->y2;
+
+ break;
+ }
+ }
+}
+
gint
ev_link_get_page (EvLink *link)
{
diff --git a/libdocument/ev-link.h b/libdocument/ev-link.h
index 9bd7f6e..136047c 100644
--- a/libdocument/ev-link.h
+++ b/libdocument/ev-link.h
@@ -21,6 +21,7 @@
#define EV_LINK_H
#include <glib-object.h>
+#include "ev-document.h"
#include "ev-link-action.h"
G_BEGIN_DECLS
@@ -43,7 +44,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);
+gint ev_link_get_page (EvLink *link);
/* Link Mapping stuff */
typedef struct _EvLinkMapping EvLinkMapping;
@@ -56,10 +57,13 @@ struct _EvLinkMapping
gdouble y2;
};
-void ev_link_mapping_free (GList *link_mapping);
-EvLink *ev_link_mapping_find (GList *link_mapping,
- gdouble x,
- gdouble y);
+void ev_link_mapping_free (GList *link_mapping);
+EvLink *ev_link_mapping_find (GList *link_mapping,
+ gdouble x,
+ gdouble y);
+void ev_link_mapping_get_area (GList *link_mapping,
+ EvLink *link,
+ EvRectangle *area);
G_END_DECLS
#endif /* !EV_LINK_H */