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=14cf8ad56067f10735b877b59576a2c334e7bc37;hp=86b3cc2b4117b2569caccebfae7e941f28945b95;hpb=5cc835ba642f057395b3b79d48495a3ab55de6db;p=evince.git diff --git a/backend/ev-link.h b/backend/ev-link.h index 86b3cc2b..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,62 +29,22 @@ 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; +EvLink *ev_link_new (const gchar *title, + EvLinkAction *action); - -typedef enum -{ - EV_LINK_TYPE_TITLE, - EV_LINK_TYPE_PAGE, - EV_LINK_TYPE_PAGE_XYZ, - EV_LINK_TYPE_PAGE_FIT, - EV_LINK_TYPE_PAGE_FITH, - EV_LINK_TYPE_PAGE_FITV, - EV_LINK_TYPE_EXTERNAL_URI, - /* We'll probably fill this in more as we support the other types of - * links */ -} EvLinkType; - -GType ev_link_type_get_type (void); -GType ev_link_get_type (void); - -EvLink *ev_link_new_title (const char *title); -EvLink *ev_link_new_page (const char *title, - int page); -EvLink *ev_link_new_page_xyz (const char *title, - int page, - double top, - double left, - double zoom); -EvLink *ev_link_new_page_fith (const char *title, - int page, - double top); -EvLink *ev_link_new_page_fitv (const char *title, - int page, - double left); -EvLink *ev_link_new_page_fit (const char *title, - int page); -EvLink *ev_link_new_external (const char *title, - const char *uri); - -const char *ev_link_get_title (EvLink *link); -const char *ev_link_get_uri (EvLink *link); -EvLinkType ev_link_get_link_type (EvLink *link); -int ev_link_get_page (EvLink *link); -double ev_link_get_top (EvLink *link); -double ev_link_get_left (EvLink *link); -double ev_link_get_zoom (EvLink *link); +const gchar *ev_link_get_title (EvLink *self); +EvLinkAction *ev_link_get_action (EvLink *self); /* Link Mapping stuff */ - typedef struct _EvLinkMapping EvLinkMapping; struct _EvLinkMapping {