X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=libdocument%2Fev-annotation.h;h=554523c15f37a7e63e242081c4d913f4eda2cff4;hb=82415a8523fd27f10006d35c731f35c6f22e170b;hp=159dc2c8f4e9a9d73a48798b01f935c57ca4209a;hpb=69f04772d126cb1d81e5bfcc90897055aab312a5;p=evince.git diff --git a/libdocument/ev-annotation.h b/libdocument/ev-annotation.h index 159dc2c8..554523c1 100644 --- a/libdocument/ev-annotation.h +++ b/libdocument/ev-annotation.h @@ -16,7 +16,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #if !defined (__EV_EVINCE_DOCUMENT_H_INSIDE__) && !defined (EVINCE_COMPILATION) @@ -44,10 +44,10 @@ G_BEGIN_DECLS /* EvAnnotationMarkup */ #define EV_TYPE_ANNOTATION_MARKUP (ev_annotation_markup_get_type ()) #define EV_ANNOTATION_MARKUP(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), EV_TYPE_ANNOTATION_MARKUP, EvAnnotationMarkup)) -#define EV_ANNOTATION_MARKUP_IFACE(k) (G_TYPE_CHECK_CLASS_CAST((k), EV_TYPE_ANNOTATION_MARKUP, EvAnnotationMarkupIface)) +#define EV_ANNOTATION_MARKUP_IFACE(k) (G_TYPE_CHECK_CLASS_CAST((k), EV_TYPE_ANNOTATION_MARKUP, EvAnnotationMarkupInterface)) #define EV_IS_ANNOTATION_MARKUP(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), EV_TYPE_ANNOTATION_MARKUP)) #define EV_IS_ANNOTATION_MARKUP_IFACE(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EV_TYPE_ANNOTATION_MARKUP)) -#define EV_ANNOTATION_MARKUP_GET_IFACE(inst) (G_TYPE_INSTANCE_GET_INTERFACE ((inst), EV_TYPE_ANNOTATION_MARKUP, EvAnnotationMarkupIface)) +#define EV_ANNOTATION_MARKUP_GET_IFACE(inst) (G_TYPE_INSTANCE_GET_INTERFACE ((inst), EV_TYPE_ANNOTATION_MARKUP, EvAnnotationMarkupInterface)) /* EvAnnotationText */ #define EV_TYPE_ANNOTATION_TEXT (ev_annotation_text_get_type()) @@ -69,7 +69,7 @@ typedef struct _EvAnnotation EvAnnotation; typedef struct _EvAnnotationClass EvAnnotationClass; typedef struct _EvAnnotationMarkup EvAnnotationMarkup; -typedef struct _EvAnnotationMarkupIface EvAnnotationMarkupIface; +typedef struct _EvAnnotationMarkupInterface EvAnnotationMarkupInterface; typedef struct _EvAnnotationText EvAnnotationText; typedef struct _EvAnnotationTextClass EvAnnotationTextClass; @@ -77,80 +77,84 @@ typedef struct _EvAnnotationTextClass EvAnnotationTextClass; typedef struct _EvAnnotationAttachment EvAnnotationAttachment; typedef struct _EvAnnotationAttachmentClass EvAnnotationAttachmentClass; -struct _EvAnnotation -{ - GObject parent; - - EvPage *page; - gboolean changed; - - gchar *contents; - gchar *name; - gchar *modified; - GdkColor color; - -}; - -struct _EvAnnotationClass -{ - GObjectClass parent_class; -}; - -struct _EvAnnotationMarkupIface -{ - GTypeInterface base_iface; -}; - -struct _EvAnnotationText -{ - EvAnnotation parent; - - gboolean is_open : 1; -}; - -struct _EvAnnotationTextClass -{ - EvAnnotationClass parent_class; -}; - -struct _EvAnnotationAttachment -{ - EvAnnotation parent; - - EvAttachment *attachment; -}; - -struct _EvAnnotationAttachmentClass -{ - EvAnnotationClass parent_class; -}; +typedef enum { + EV_ANNOTATION_TYPE_UNKNOWN, + EV_ANNOTATION_TYPE_TEXT, + EV_ANNOTATION_TYPE_ATTACHMENT +} EvAnnotationType; + +typedef enum { + EV_ANNOTATION_TEXT_ICON_NOTE, + EV_ANNOTATION_TEXT_ICON_COMMENT, + EV_ANNOTATION_TEXT_ICON_KEY, + EV_ANNOTATION_TEXT_ICON_HELP, + EV_ANNOTATION_TEXT_ICON_NEW_PARAGRAPH, + EV_ANNOTATION_TEXT_ICON_PARAGRAPH, + EV_ANNOTATION_TEXT_ICON_INSERT, + EV_ANNOTATION_TEXT_ICON_CROSS, + EV_ANNOTATION_TEXT_ICON_CIRCLE, + EV_ANNOTATION_TEXT_ICON_UNKNOWN +} EvAnnotationTextIcon; /* EvAnnotation */ -GType ev_annotation_get_type (void) G_GNUC_CONST; +GType ev_annotation_get_type (void) G_GNUC_CONST; +EvAnnotationType ev_annotation_get_annotation_type (EvAnnotation *annot); +EvPage *ev_annotation_get_page (EvAnnotation *annot); +guint ev_annotation_get_page_index (EvAnnotation *annot); +gboolean ev_annotation_equal (EvAnnotation *annot, + EvAnnotation *other); +const gchar *ev_annotation_get_contents (EvAnnotation *annot); +gboolean ev_annotation_set_contents (EvAnnotation *annot, + const gchar *contents); +const gchar *ev_annotation_get_name (EvAnnotation *annot); +gboolean ev_annotation_set_name (EvAnnotation *annot, + const gchar *name); +const gchar *ev_annotation_get_modified (EvAnnotation *annot); +gboolean ev_annotation_set_modified (EvAnnotation *annot, + const gchar *modified); +gboolean ev_annotation_set_modified_from_time (EvAnnotation *annot, + GTime utime); +void ev_annotation_get_color (EvAnnotation *annot, + GdkColor *color); +gboolean ev_annotation_set_color (EvAnnotation *annot, + const GdkColor *color); /* EvAnnotationMarkup */ -GType ev_annotation_markup_get_type (void) G_GNUC_CONST; -gchar *ev_annotation_markup_get_label (EvAnnotationMarkup *markup); -void ev_annotation_markup_set_label (EvAnnotationMarkup *markup, - const gchar *label); -gdouble ev_annotation_markup_get_opacity (EvAnnotationMarkup *markup); -void ev_annotation_markup_set_opacity (EvAnnotationMarkup *markup, - gdouble opacity); -gboolean ev_annotation_markup_has_popup (EvAnnotationMarkup *markup); -void ev_annotation_markup_get_rectangle (EvAnnotationMarkup *markup, - EvRectangle *ev_rect); -gboolean ev_annotation_markup_get_is_open (EvAnnotationMarkup *markup); -void ev_annotation_markup_set_is_open (EvAnnotationMarkup *markup, - gboolean is_open); - -/* EvAnnotationText */ -GType ev_annotation_text_get_type (void) G_GNUC_CONST; -EvAnnotation *ev_annotation_text_new (EvPage *page); +GType ev_annotation_markup_get_type (void) G_GNUC_CONST; +const gchar *ev_annotation_markup_get_label (EvAnnotationMarkup *markup); +gboolean ev_annotation_markup_set_label (EvAnnotationMarkup *markup, + const gchar *label); +gdouble ev_annotation_markup_get_opacity (EvAnnotationMarkup *markup); +gboolean ev_annotation_markup_set_opacity (EvAnnotationMarkup *markup, + gdouble opacity); +gboolean ev_annotation_markup_has_popup (EvAnnotationMarkup *markup); +gboolean ev_annotation_markup_set_has_popup (EvAnnotationMarkup *markup, + gboolean has_popup); +void ev_annotation_markup_get_rectangle (EvAnnotationMarkup *markup, + EvRectangle *ev_rect); +gboolean ev_annotation_markup_set_rectangle (EvAnnotationMarkup *markup, + const EvRectangle *ev_rect); +gboolean ev_annotation_markup_get_popup_is_open (EvAnnotationMarkup *markup); +gboolean ev_annotation_markup_set_popup_is_open (EvAnnotationMarkup *markup, + gboolean is_open); /* EvAnnotationText */ -GType ev_annotation_attachment_get_type (void) G_GNUC_CONST; -EvAnnotation *ev_annotation_attachment_new (EvPage *page, - EvAttachment *attachment); +GType ev_annotation_text_get_type (void) G_GNUC_CONST; +EvAnnotation *ev_annotation_text_new (EvPage *page); +EvAnnotationTextIcon ev_annotation_text_get_icon (EvAnnotationText *text); +gboolean ev_annotation_text_set_icon (EvAnnotationText *text, + EvAnnotationTextIcon icon); +gboolean ev_annotation_text_get_is_open (EvAnnotationText *text); +gboolean ev_annotation_text_set_is_open (EvAnnotationText *text, + gboolean is_open); + +/* EvAnnotationAttachment */ +GType ev_annotation_attachment_get_type (void) G_GNUC_CONST; +EvAnnotation *ev_annotation_attachment_new (EvPage *page, + EvAttachment *attachment); +EvAttachment *ev_annotation_attachment_get_attachment (EvAnnotationAttachment *annot); +gboolean ev_annotation_attachment_set_attachment (EvAnnotationAttachment *annot, + EvAttachment *attachment); G_END_DECLS