X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;f=shell%2Fev-jobs.h;h=188759e928972098d833f49fc4150b4861557ecf;hb=14def5e0c1c11cee1523e10c72df74f4cf5e451d;hp=c0f95721de8b0898bd72b16ded779520cd6d25de;hpb=e71d27db284ccf431167816167bf72f1e23c334d;p=evince.git diff --git a/shell/ev-jobs.h b/shell/ev-jobs.h index c0f95721..188759e9 100644 --- a/shell/ev-jobs.h +++ b/shell/ev-jobs.h @@ -21,10 +21,12 @@ #ifndef __EV_JOBS_H__ #define __EV_JOBS_H__ +#include #include + #include "ev-document.h" -#include "ev-window.h" #include "ev-selection.h" +#include "ev-window.h" G_BEGIN_DECLS @@ -40,6 +42,9 @@ typedef struct _EvJobThumbnailClass EvJobThumbnailClass; typedef struct _EvJobLinks EvJobLinks; typedef struct _EvJobLinksClass EvJobLinksClass; +typedef struct _EvJobAttachments EvJobAttachments; +typedef struct _EvJobAttachmentsClass EvJobAttachmentsClass; + typedef struct _EvJobFonts EvJobFonts; typedef struct _EvJobFontsClass EvJobFontsClass; @@ -52,6 +57,9 @@ typedef struct _EvJobSaveClass EvJobSaveClass; typedef struct _EvJobPrint EvJobPrint; typedef struct _EvJobPrintClass EvJobPrintClass; +typedef struct _EvJobFind EvJobFind; +typedef struct _EvJobFindClass EvJobFindClass; + #define EV_TYPE_JOB (ev_job_get_type()) #define EV_JOB(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_JOB, EvJob)) #define EV_JOB_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_JOB, EvJobClass)) @@ -63,6 +71,11 @@ typedef struct _EvJobPrintClass EvJobPrintClass; #define EV_JOB_LINKS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_JOB_LINKS, EvJobLinksClass)) #define EV_IS_JOB_LINKS(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_JOB_LINKS)) +#define EV_TYPE_JOB_ATTACHMENTS (ev_job_attachments_get_type()) +#define EV_JOB_ATTACHMENTS(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_JOB_ATTACHMENTS, EvJobAttachments)) +#define EV_JOB_ATTACHMENTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_JOB_ATTACHMENTS, EvJobAttachmentsClass)) +#define EV_IS_JOB_ATTACHMENTS(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_JOB_ATTACHMENTS)) + #define EV_TYPE_JOB_RENDER (ev_job_render_get_type()) #define EV_JOB_RENDER(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_JOB_RENDER, EvJobRender)) #define EV_JOB_RENDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_JOB_RENDER, EvJobRenderClass)) @@ -93,6 +106,11 @@ typedef struct _EvJobPrintClass EvJobPrintClass; #define EV_JOB_PRINT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_JOB_PRINT, EvJobPrintClass)) #define EV_IS_JOB_PRINT(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_JOB_PRINT)) +#define EV_TYPE_JOB_FIND (ev_job_find_get_type()) +#define EV_JOB_FIND(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_JOB_FIND, EvJobFind)) +#define EV_JOB_FIND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_JOB_FIND, EvJobFindClass)) +#define EV_IS_JOB_FIND(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_JOB_FIND)) + typedef enum { EV_JOB_RUN_THREAD, EV_JOB_RUN_MAIN_LOOP @@ -140,6 +158,18 @@ struct _EvJobLinksClass EvJobClass parent_class; }; +struct _EvJobAttachments +{ + EvJob parent; + + GList *attachments; +}; + +struct _EvJobAttachmentsClass +{ + EvJobClass parent_class; +}; + typedef enum { EV_RENDER_INCLUDE_NONE = 0, EV_RENDER_INCLUDE_LINKS = 1 << 0, @@ -213,7 +243,8 @@ struct _EvJobFontsClass EvJobClass parent_class; /* Signals */ - void (* updated) (EvJobFonts *job); + void (* updated) (EvJobFonts *job, + gdouble progress); }; struct _EvJobLoad @@ -224,6 +255,7 @@ struct _EvJobLoad EvWindowRunMode mode; gchar *search_string; gchar *uri; + gchar *password; }; struct _EvJobLoadClass @@ -266,6 +298,28 @@ struct _EvJobPrintClass EvJobClass parent_class; }; +struct _EvJobFind +{ + EvJob parent; + + gint start_page; + gint current_page; + gint n_pages; + GList **pages; + gchar *text; + gboolean case_sensitive; + gboolean has_results; +}; + +struct _EvJobFindClass +{ + EvJobClass parent_class; + + /* Signals */ + void (* updated) (EvJobFind *job, + gint page); +}; + /* Base job class */ GType ev_job_get_type (void) G_GNUC_CONST; gboolean ev_job_run (EvJob *job); @@ -289,6 +343,10 @@ void ev_job_set_run_mode (EvJob *job, GType ev_job_links_get_type (void) G_GNUC_CONST; EvJob *ev_job_links_new (EvDocument *document); +/* EvJobAttachments */ +GType ev_job_attachments_get_type (void) G_GNUC_CONST; +EvJob *ev_job_attachments_new (EvDocument *document); + /* EvJobRender */ GType ev_job_render_get_type (void) G_GNUC_CONST; EvJob *ev_job_render_new (EvDocument *document, @@ -321,6 +379,8 @@ EvJob *ev_job_load_new (const gchar *uri, const gchar *search_string); void ev_job_load_set_uri (EvJobLoad *load, const gchar *uri); +void ev_job_load_set_password (EvJobLoad *job, + const gchar *password); /* EvJobSave */ GType ev_job_save_get_type (void) G_GNUC_CONST; @@ -341,6 +401,18 @@ EvJob *ev_job_print_new (EvDocument *document, gint copies, gdouble collate, gdouble reverse); +/* EvJobFind */ +GType ev_job_find_get_type (void) G_GNUC_CONST; +EvJob *ev_job_find_new (EvDocument *document, + gint start_page, + gint n_pages, + const gchar *text, + gboolean case_sensitive); +gint ev_job_find_get_n_results (EvJobFind *job, + gint pages); +gdouble ev_job_find_get_progress (EvJobFind *job); +gboolean ev_job_find_has_results (EvJobFind *job); +GList **ev_job_find_get_results (EvJobFind *job); G_END_DECLS