diff options
author | Marco Pesenti Gritti <mpg@redhat.com> | 2005-06-11 14:15:42 (GMT) |
---|---|---|
committer | Marco Pesenti Gritti <marco@src.gnome.org> | 2005-06-11 14:15:42 (GMT) |
commit | cbdeaed3897f8fdd01995a356c1e3a829fffbf7e (patch) | |
tree | cdecbff828fe40a30bb201cf6e883f3674b5aafc /shell/ev-jobs.h | |
parent | e1dd38e5d83e54780cdc37a02f2e3e44eee6400a (diff) |
Make fonts model fill incrementally.
2005-06-11 Marco Pesenti Gritti <mpg@redhat.com>
* backend/ev-document-fonts.c: (ev_document_fonts_fill_model):
* backend/ev-document-fonts.h:
* pdf/ev-poppler.cc:
Make fonts model fill incrementally.
* shell/ev-job-queue.c: (handle_job), (search_for_jobs_unlocked),
(no_jobs_available_unlocked), (ev_job_queue_init), (find_queue),
(ev_job_queue_remove_job):
* shell/ev-jobs.c: (ev_job_fonts_init), (ev_job_fonts_class_init),
(ev_job_fonts_new), (ev_job_fonts_run):
* shell/ev-jobs.h:
New job for fonts scanning
* shell/ev-properties.c: (job_fonts_finished_cb),
(fill_fonts_treeview), (setup_fonts_view), (ev_properties_new):
* shell/ev-properties.h:
* shell/ev-window.c: (ev_window_cmd_file_properties):
Incrementally feel the treeview using the new job. Show Loading...
message until scanning is completed.
Hopefully I didnt break the build without the poppler patch.
Diffstat (limited to 'shell/ev-jobs.h')
-rw-r--r-- | shell/ev-jobs.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/shell/ev-jobs.h b/shell/ev-jobs.h index 11a3f09..d585d86 100644 --- a/shell/ev-jobs.h +++ b/shell/ev-jobs.h @@ -40,6 +40,9 @@ typedef struct _EvJobLinksClass EvJobLinksClass; typedef struct _EvJobLoad EvJobLoad; typedef struct _EvJobLoadClass EvJobLoadClass; +typedef struct _EvJobFonts EvJobFonts; +typedef struct _EvJobFontsClass EvJobFontsClass; + #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_CHACK_CLASS_CAST((klass), EV_TYPE_JOB, EvJobClass)) @@ -65,6 +68,11 @@ typedef struct _EvJobLoadClass EvJobLoadClass; #define EV_JOB_LOAD_CLASS(klass) (G_TYPE_CHACK_CLASS_CAST((klass), EV_TYPE_JOB_LOAD, EvJobLoadClass)) #define EV_IS_JOB_LOAD(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_JOB_LOAD)) +#define EV_TYPE_JOB_FONTS (ev_job_fonts_get_type()) +#define EV_JOB_FONTS(object) (G_TYPE_CHECK_INSTANCE_CAST((object), EV_TYPE_JOB_FONTS, EvJobFonts)) +#define EV_JOB_FONTS_CLASS(klass) (G_TYPE_CHACK_CLASS_CAST((klass), EV_TYPE_JOB_FONTS, EvJobFontsClass)) +#define EV_IS_JOB_FONTS(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), EV_TYPE_JOB_FONTS)) + typedef enum { EV_JOB_PRIORITY_LOW, EV_JOB_PRIORITY_HIGH, @@ -141,6 +149,18 @@ struct _EvJobLoadClass EvJobClass parent_class; }; +struct _EvJobFonts +{ + EvJob parent; + GtkTreeModel *model; + gboolean scan_completed; +}; + +struct _EvJobFontsClass +{ + EvJobClass parent_class; +}; + /* Base job class */ GType ev_job_get_type (void); void ev_job_finished (EvJob *job); @@ -173,6 +193,12 @@ EvJob *ev_job_load_new (EvDocument *document, const gchar *uri); void ev_job_load_run (EvJobLoad *load); +/* EvJobFonts */ +GType ev_job_fonts_get_type (void); +EvJob *ev_job_fonts_new (EvDocument *document, + GtkTreeModel *model); +void ev_job_fonts_run (EvJobFonts *fonts); + G_END_DECLS #endif /* __EV_JOBS_H__ */ |