X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=backend%2Fev-link.h;h=b7304debfe1e9d8435f8dab7fb6fcf905ab3d5cb;hb=1a9964cbdc190840aa6ea2d762be1b8132d3dcbb;hp=d92d428e186223a94dbf6c319c30e3eed9f17dff;hpb=1c0d19bd22598eca159c3febdcdaf4168891cb8f;p=evince.git diff --git a/backend/ev-link.h b/backend/ev-link.h index d92d428e..b7304deb 100644 --- a/backend/ev-link.h +++ b/backend/ev-link.h @@ -21,6 +21,7 @@ #define EV_LINK_H #include +#include "ev-link-action.h" G_BEGIN_DECLS @@ -28,45 +29,36 @@ typedef struct _EvLink EvLink; typedef struct _EvLinkClass EvLinkClass; typedef struct _EvLinkPrivate EvLinkPrivate; -#define EV_TYPE_LINK (ev_link_get_type()) -#define EV_LINK(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_LINK, EvLink)) -#define EV_LINK_CLASS(klass) (G_TYPE_CHACK_CLASS_CAST((klass), EV_TYPE_LINK, EvLinkClass)) -#define EV_IS_LINK(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_LINK)) -#define EV_IS_LINK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), EV_TYPE_LINK)) +#define EV_TYPE_LINK (ev_link_get_type()) +#define EV_LINK(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_LINK, EvLink)) +#define EV_LINK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_LINK, EvLinkClass)) +#define EV_IS_LINK(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_LINK)) +#define EV_IS_LINK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), EV_TYPE_LINK)) #define EV_LINK_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS((object), EV_TYPE_LINK, EvLinkClass)) -#define EV_TYPE_LINK_TYPE (ev_link_type_get_type ()) +GType ev_link_get_type (void) G_GNUC_CONST; -typedef enum -{ - EV_LINK_TYPE_TITLE, - EV_LINK_TYPE_PAGE, - EV_LINK_TYPE_EXTERNAL_URI, - /* We'll probably fill this in more as we support the other types of - * links */ -} EvLinkType; +EvLink *ev_link_new (const gchar *title, + EvLinkAction *action); -GType ev_link_type_get_type (void); -GType ev_link_get_type (void); +const gchar *ev_link_get_title (EvLink *self); +EvLinkAction *ev_link_get_action (EvLink *self); -EvLink *ev_link_new_title (const char *title); -EvLink *ev_link_new_page (const char *title, - int page); -EvLink *ev_link_new_external (const char *title, - const char *uri); -const char *ev_link_get_title (EvLink *link); -void ev_link_set_title (EvLink *link, - const char *title); -const char *ev_link_get_uri (EvLink *link); -void ev_link_set_uri (EvLink *link, - const char *uri); -EvLinkType ev_link_get_link_type (EvLink *link); -void ev_link_set_link_type (EvLink *link, - EvLinkType type); -int ev_link_get_page (EvLink *link); -void ev_link_set_page (EvLink *link, - int page); +/* Link Mapping stuff */ +typedef struct _EvLinkMapping EvLinkMapping; +struct _EvLinkMapping +{ + EvLink *link; + gdouble x1; + gdouble y1; + gdouble x2; + gdouble y2; +}; +void ev_link_mapping_free (GList *link_mapping); +EvLink *ev_link_mapping_find (GList *link_mapping, + gdouble x, + gdouble y); G_END_DECLS #endif /* !EV_LINK_H */