From cbdeaed3897f8fdd01995a356c1e3a829fffbf7e Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Sat, 11 Jun 2005 14:15:42 +0000 Subject: Make fonts model fill incrementally. 2005-06-11 Marco Pesenti Gritti * 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. --- (limited to 'backend') diff --git a/backend/ev-document-fonts.c b/backend/ev-document-fonts.c index fca1976..cd53d1e 100644 --- a/backend/ev-document-fonts.c +++ b/backend/ev-document-fonts.c @@ -47,13 +47,12 @@ ev_document_fonts_get_type (void) return type; } -GtkTreeModel * -ev_document_fonts_get_fonts_model (EvDocumentFonts *document_fonts) +gboolean +ev_document_fonts_fill_model (EvDocumentFonts *document_fonts, + GtkTreeModel *model, + int n_pages) { EvDocumentFontsIface *iface = EV_DOCUMENT_FONTS_GET_IFACE (document_fonts); - GtkTreeModel *retval; - retval = iface->get_fonts_model (document_fonts); - - return retval; + return iface->fill_model (document_fonts, model, n_pages); } diff --git a/backend/ev-document-fonts.h b/backend/ev-document-fonts.h index 6cb07e2..2a05e7e 100644 --- a/backend/ev-document-fonts.h +++ b/backend/ev-document-fonts.h @@ -54,11 +54,15 @@ struct _EvDocumentFontsIface GTypeInterface base_iface; /* Methods */ - GtkTreeModel *(* get_fonts_model) (EvDocumentFonts *document_fonts); + gboolean (* fill_model) (EvDocumentFonts *document_fonts, + GtkTreeModel *model, + int n_pages); }; -GType ev_document_fonts_get_type (void); -GtkTreeModel *ev_document_fonts_get_fonts_model (EvDocumentFonts *document_fonts); +GType ev_document_fonts_get_type (void); +gboolean ev_document_fonts_fill_model (EvDocumentFonts *document_fonts, + GtkTreeModel *model, + int n_pages); G_END_DECLS -- cgit v0.9.1