#include <gio/gio.h>
#include <gtk/gtk.h>
+#include <cairo.h>
#include <evince-document.h>
typedef struct _EvJobExport EvJobExport;
typedef struct _EvJobExportClass EvJobExportClass;
+typedef struct _EvJobPrint EvJobPrint;
+typedef struct _EvJobPrintClass EvJobPrintClass;
+
#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))
#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))
+#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))
+
typedef enum {
EV_JOB_RUN_THREAD,
EV_JOB_RUN_MAIN_LOOP
EvJobClass parent_class;
};
+struct _EvJobPrint
+{
+ EvJob parent;
+
+ gint page;
+ cairo_t *cr;
+};
+
+struct _EvJobPrintClass
+{
+ EvJobClass parent_class;
+};
+
/* Base job class */
GType ev_job_get_type (void) G_GNUC_CONST;
gboolean ev_job_run (EvJob *job);
EvJob *ev_job_export_new (EvDocument *document);
void ev_job_export_set_page (EvJobExport *job,
gint page);
+/* EvJobPrint */
+GType ev_job_print_get_type (void) G_GNUC_CONST;
+EvJob *ev_job_print_new (EvDocument *document);
+void ev_job_print_set_page (EvJobPrint *job,
+ gint page);
+void ev_job_print_set_cairo (EvJobPrint *job,
+ cairo_t *cr);
G_END_DECLS