X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;ds=sidebyside;f=shell%2Fev-jobs.h;h=27b40a1c102a31f83f4d629c44a632afab31bfe9;hb=b2ad055bb54dd89f3e8748302cfbd5c6f746d6a4;hp=e89f64649ff2072dc49380573720a6c3adbbe344;hpb=27dce4e648c04fc784527610af77c30cf1318111;p=evince.git diff --git a/shell/ev-jobs.h b/shell/ev-jobs.h index e89f6464..27b40a1c 100644 --- a/shell/ev-jobs.h +++ b/shell/ev-jobs.h @@ -26,6 +26,7 @@ #include "ev-document.h" #include "ev-selection.h" +#include "ev-render-context.h" #include "ev-window.h" G_BEGIN_DECLS @@ -54,8 +55,14 @@ typedef struct _EvJobLoadClass EvJobLoadClass; typedef struct _EvJobSave EvJobSave; typedef struct _EvJobSaveClass EvJobSaveClass; -typedef struct _EvJobPrint EvJobPrint; -typedef struct _EvJobPrintClass EvJobPrintClass; +typedef struct _EvJobFind EvJobFind; +typedef struct _EvJobFindClass EvJobFindClass; + +typedef struct _EvJobLayers EvJobLayers; +typedef struct _EvJobLayersClass EvJobLayersClass; + +typedef struct _EvJobExport EvJobExport; +typedef struct _EvJobExportClass EvJobExportClass; #define EV_TYPE_JOB (ev_job_get_type()) #define EV_JOB(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_JOB, EvJob)) @@ -98,10 +105,20 @@ typedef struct _EvJobPrintClass EvJobPrintClass; #define EV_JOB_SAVE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_JOB_SAVE, EvJobSaveClass)) #define EV_IS_JOB_SAVE(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_JOB_SAVE)) -#define EV_TYPE_JOB_PRINT (ev_job_print_get_type()) -#define EV_JOB_PRINT(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_JOB_PRINT, EvJobPrint)) -#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)) + +#define EV_TYPE_JOB_LAYERS (ev_job_layers_get_type()) +#define EV_JOB_LAYERS(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_JOB_LAYERS, EvJobLayers)) +#define EV_JOB_LAYERS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_JOB_LAYERS, EvJobLayersClass)) +#define EV_IS_JOB_LAYERS(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_JOB_LAYERS)) + +#define EV_TYPE_JOB_EXPORT (ev_job_export_get_type()) +#define EV_JOB_EXPORT(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_JOB_EXPORT, EvJobExport)) +#define EV_JOB_EXPORT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), EV_TYPE_JOB_EXPORT, EvJobExportClass)) +#define EV_IS_JOB_EXPORT(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_JOB_EXPORT)) typedef enum { EV_JOB_RUN_THREAD, @@ -235,7 +252,8 @@ struct _EvJobFontsClass EvJobClass parent_class; /* Signals */ - void (* updated) (EvJobFonts *job); + void (* updated) (EvJobFonts *job, + gdouble progress); }; struct _EvJobLoad @@ -267,24 +285,49 @@ struct _EvJobSaveClass EvJobClass parent_class; }; -struct _EvJobPrint +struct _EvJobFind { EvJob parent; - const gchar *format; - gchar *temp_file; - EvPrintRange *ranges; - gint n_ranges; - EvPrintPageSet page_set; - gint copies; - gint pages_per_sheet; - gboolean collate; - gboolean reverse; - gdouble width; - gdouble height; + gint start_page; + gint current_page; + gint n_pages; + GList **pages; + gchar *text; + gboolean case_sensitive; + gboolean has_results; }; -struct _EvJobPrintClass +struct _EvJobFindClass +{ + EvJobClass parent_class; + + /* Signals */ + void (* updated) (EvJobFind *job, + gint page); +}; + +struct _EvJobLayers +{ + EvJob parent; + + GtkTreeModel *model; +}; + +struct _EvJobLayersClass +{ + EvJobClass parent_class; +}; + +struct _EvJobExport +{ + EvJob parent; + + gint page; + EvRenderContext *rc; +}; + +struct _EvJobExportClass { EvJobClass parent_class; }; @@ -356,20 +399,28 @@ GType ev_job_save_get_type (void) G_GNUC_CONST; EvJob *ev_job_save_new (EvDocument *document, const gchar *uri, const gchar *document_uri); - -/* EvJobPrint */ -GType ev_job_print_get_type (void) G_GNUC_CONST; -EvJob *ev_job_print_new (EvDocument *document, - const gchar *format, - gdouble width, - gdouble height, - EvPrintRange *ranges, - gint n_ranges, - EvPrintPageSet page_set, - gint pages_per_sheet, - 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); + +/* EvJobLayers */ +GType ev_job_layers_get_type (void) G_GNUC_CONST; +EvJob *ev_job_layers_new (EvDocument *document); + +/* EvJobExport */ +GType ev_job_export_get_type (void) G_GNUC_CONST; +EvJob *ev_job_export_new (EvDocument *document); +void ev_job_export_set_page (EvJobExport *job, + gint page); G_END_DECLS