* src/folder.c
authorChristoph Hohmann <reboot@gmx.ch>
Tue, 23 Jul 2002 18:18:21 +0000 (18:18 +0000)
committerChristoph Hohmann <reboot@gmx.ch>
Tue, 23 Jul 2002 18:18:21 +0000 (18:18 +0000)
* src/folder.h
* src/summaryview.c
* src/summaryview.h
* src/main.c
        o separate processing and summaryview
        o removed summary_write_cache from summaryview
        o removed summaryview->killed_messages, because we don't have
          to keep a list of killed messages anymore. New cache will
          keep the hidden messages in cache anyway
* src/folderview.c
* src/inc.c
* src/selective_download.c
        o removed unnecessary summary_write_cache calls
* src/procmsg.c
        o don't set ignore thread flag in procmsg_get_thread_tree
          if it is already set
* src/mainwindow.c
* src/statusbar.h
        o moved STATUSBAR_PUSH/POP to statusbar.h because
          they are used in different files

13 files changed:
ChangeLog.claws
configure.in
src/folder.c
src/folder.h
src/folderview.c
src/inc.c
src/main.c
src/mainwindow.c
src/procmsg.c
src/selective_download.c
src/statusbar.h
src/summaryview.c
src/summaryview.h

index 42a024d2bf1d3b8d527a662107670359997cf688..ee871b489b3750b2f7f9c353a12e90f999937d66 100644 (file)
@@ -1,3 +1,27 @@
+2002-07-23 [christoph] 0.8.0claws6
+
+       * src/folder.c
+        * src/folder.h
+       * src/summaryview.c
+       * src/summaryview.h
+       * src/main.c
+               o separate processing and summaryview
+               o removed summary_write_cache from summaryview
+               o removed summaryview->killed_messages, because we don't have
+                 to keep a list of killed messages anymore. New cache will
+                 keep the hidden messages in cache anyway
+       * src/folderview.c
+       * src/inc.c
+       * src/selective_download.c
+               o removed unnecessary summary_write_cache calls
+       * src/procmsg.c
+               o don't set ignore thread flag in procmsg_get_thread_tree
+                 if it is already set
+       * src/mainwindow.c
+       * src/statusbar.h
+               o moved STATUSBAR_PUSH/POP to statusbar.h because
+                 they are used in different files
+
 2002-07-23 [melvin]    0.8.0claws5
 
        * src/addressbook.c
index f72fd9381f012129aa3411065a181b4a22ad9b3d..5a70fdb54a426a16ba5a987602557f0a969cb184 100644 (file)
@@ -8,7 +8,7 @@ MINOR_VERSION=8
 MICRO_VERSION=0
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=claws5
+EXTRA_VERSION=claws6
 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
 
 dnl set $target
index 32f395e3b32bcd157d93933122e9fe78162d9dfb..4a5ca10c7da9735a68157c163a68f22b3da79ba0 100644 (file)
@@ -2222,3 +2222,34 @@ static gboolean persist_prefs_free(gpointer key, gpointer val, gpointer data)
        return TRUE;    
 }
 
+void folder_item_apply_processing(FolderItem *item)
+{
+       GSList *processing_list;
+       GSList *mlist, *cur;
+       GHashTable *folder_table;
+       
+       g_return_if_fail(item != NULL);
+       
+       processing_list = item->prefs->processing;
+       if (processing_list == NULL)
+               return;
+       folder_table = g_hash_table_new(NULL, NULL);
+
+       mlist = folder_item_get_msg_list(item);
+       
+       for(cur = mlist ; cur != NULL ; cur = cur->next) {
+               MsgInfo * msginfo;
+
+               msginfo = (MsgInfo *) cur->data;
+               filter_message_by_msginfo(processing_list, msginfo,
+                                         folder_table);
+               procmsg_msginfo_free(msginfo);
+       }
+       
+       /* folder_item_scan_foreach(summaryview->folder_table); */
+       folderview_update_item_foreach(folder_table);
+
+       g_slist_free(mlist);
+       
+       g_hash_table_destroy(folder_table);
+}
index c0d29d85dcbc13aa10c2d7a12f06bf3247bbb971..d2cf511c944dd4ec998fa7ad58301079c49464ce 100644 (file)
@@ -364,4 +364,6 @@ void folder_clean_cache_memory              ();
 void folder_item_write_cache           (FolderItem *item);
 void folder_item_set_default_flags     (FolderItem *dest, MsgFlags *flags);
 
+void folder_item_apply_processing      (FolderItem *item);
+
 #endif /* __FOLDER_H__ */
index 8e10ab7288a55fd8b9f511e24df8a50eaae70b79..3198f0c01593757e221617d4c2d6fb83d6aa24d0 100644 (file)
@@ -61,6 +61,7 @@
 #include "account.h"
 #include "folder.h"
 #include "inc.h"
+#include "statusbar.h"
 
 typedef enum
 {
@@ -74,19 +75,6 @@ typedef enum
 #define COL_FOLDER_WIDTH       150
 #define COL_NUM_WIDTH          32
 
-#define STATUSBAR_PUSH(mainwin, str) \
-{ \
-       gtk_statusbar_push(GTK_STATUSBAR(mainwin->statusbar), \
-                          mainwin->folderview_cid, str); \
-       gtkut_widget_wait_for_draw(mainwin->hbox_stat); \
-}
-
-#define STATUSBAR_POP(mainwin) \
-{ \
-       gtk_statusbar_pop(GTK_STATUSBAR(mainwin->statusbar), \
-                         mainwin->folderview_cid); \
-}
-
 static GList *folderview_list = NULL;
 
 static GdkFont *normalfont;
@@ -1619,6 +1607,15 @@ static void folderview_selected(GtkCTree *ctree, GtkCTreeNode *row,
 
        can_select = FALSE;
 
+       /* Save cache for old folder */
+       /* We don't want to lose all caches if sylpheed crashed */
+       if(folderview->opened) {
+               FolderItem *olditem;
+               
+               olditem = gtk_ctree_node_get_row_data(ctree, folderview->opened);
+               folder_item_write_cache(olditem);
+       }
+       
        /* CLAWS: set compose button type: news folder items 
         * always have a news folder as parent */
        if (item->folder) 
@@ -1647,10 +1644,29 @@ static void folderview_selected(GtkCTree *ctree, GtkCTreeNode *row,
                folder_item_scan(item);
        }
 
+       /* Processing */
+       if(item->prefs->processing != NULL) {
+               gchar *buf;
+               
+               buf = g_strdup_printf(_("Processing (%s)..."), item->path);
+               debug_print("%s\n", buf);
+               STATUSBAR_PUSH(folderview->mainwin, buf);
+               g_free(buf);
+       
+               main_window_cursor_wait(folderview->mainwin);
+       
+               folder_item_apply_processing(item);
+
+               debug_print(_("done.\n"));
+               STATUSBAR_POP(folderview->mainwin);
+               main_window_cursor_normal(folderview->mainwin);
+       }
+               
+       /* Show messages */
        opened = summary_show(folderview->summaryview, item, FALSE);
 
        folder_clean_cache_memory();
-       
+
        if (!opened) {
                gtkut_ctree_set_focus_row(ctree, folderview->opened);
                gtk_ctree_select(ctree, folderview->opened);
index 5c04dfa7533811e9e10d0ead8d00bd1b73a9adfa..4b6252136978bc80685e5018c1d80b132e7f2695 100644 (file)
--- a/src/inc.c
+++ b/src/inc.c
@@ -174,7 +174,6 @@ void inc_mail(MainWindow *mainwin, gboolean notify)
                return;
 
        inc_autocheck_timer_remove();
-       summary_write_cache(mainwin->summaryview);
        main_window_lock(mainwin);
 
        if (prefs_common.use_extinc && prefs_common.extinc_cmd) {
@@ -279,7 +278,6 @@ void inc_all_account_mail(MainWindow *mainwin, gboolean notify)
        if (inc_lock_count) return;
 
        inc_autocheck_timer_remove();
-       summary_write_cache(mainwin->summaryview);
        main_window_lock(mainwin);
 
        if (prefs_common.inc_local)
index b117836845f4d435002a8ddb5084a6f608134c8d..3b7cb574e09b453cd60ea8d9901ec54ba1cb0f66 100644 (file)
@@ -115,6 +115,7 @@ static gchar *get_socket_name               (void);
 static void open_compose_new_with_recipient    (const gchar    *address);
 
 static void send_queue                 (void);
+static void initial_processing         (FolderItem *item, gpointer data);
 
 #if 0
 /* for gettext */
@@ -298,8 +299,9 @@ int main(int argc, char *argv[])
 
        /* prefs_scoring_read_config(); */
        prefs_matcher_read_config();
+
        /* make one all-folder processing before using sylpheed */
-       processing_apply(mainwin->summaryview);
+       folder_func_to_all_folders(initial_processing, (gpointer *)mainwin);
 
        addressbook_read_file();
 
@@ -398,6 +400,25 @@ static void save_all_caches(FolderItem *item, gpointer data)
        folder_item_write_cache(item);
 }
 
+static void initial_processing(FolderItem *item, gpointer data)
+{
+       MainWindow *mainwin = (MainWindow *)data;
+       gchar *buf;
+               
+       buf = g_strdup_printf(_("Processing (%s)..."), item->path);
+       debug_print("%s\n", buf);
+       STATUSBAR_PUSH(mainwin, buf);
+       g_free(buf);
+
+       main_window_cursor_wait(mainwin);
+       
+       folder_item_apply_processing(item);
+
+       debug_print(_("done.\n"));
+       STATUSBAR_POP(mainwin);
+       main_window_cursor_normal(mainwin);
+}
+
 void app_will_exit(GtkWidget *widget, gpointer data)
 {
        MainWindow *mainwin = data;
@@ -430,7 +451,6 @@ void app_will_exit(GtkWidget *widget, gpointer data)
 
        /* save all state before exiting */
        folder_write_list();
-       summary_write_cache(mainwin->summaryview);
        folder_func_to_all_folders(save_all_caches, NULL);
 
        main_window_get_size(mainwin);
index 09cd69ce072c89d5279e794464c6aaeb44da36d2..e53c729fb9e43b7eee1247456e11c6c947398fed 100644 (file)
 
 #define AC_LABEL_WIDTH 240
 
-#define STATUSBAR_PUSH(mainwin, str) \
-{ \
-       gtk_statusbar_push(GTK_STATUSBAR(mainwin->statusbar), \
-                          mainwin->mainwin_cid, str); \
-       gtkut_widget_wait_for_draw(mainwin->hbox_stat); \
-}
-
-#define STATUSBAR_POP(mainwin) \
-{ \
-       gtk_statusbar_pop(GTK_STATUSBAR(mainwin->statusbar), \
-                         mainwin->mainwin_cid); \
-}
-
 /* list of all instantiated MainWindow */
 static GList *mainwin_list = NULL;
 
index a423aab7c95b5b76fadeb8e698890aaeeb2b99ed..00d8e05713838d57f450a1da7f9cee5606427d05 100644 (file)
@@ -553,7 +553,7 @@ GNode *procmsg_get_thread_tree(GSList *mlist)
                        if (parent == NULL) {
                                parent = root;
                        } else {
-                               if(MSG_IS_IGNORE_THREAD(((MsgInfo *)parent->data)->flags)) {
+                               if(MSG_IS_IGNORE_THREAD(((MsgInfo *)parent->data)->flags) && !MSG_IS_IGNORE_THREAD(msginfo->flags)) {
                                        procmsg_msginfo_set_flags(msginfo, MSG_IGNORE_THREAD, 0);
                                }
                        }
@@ -594,7 +594,7 @@ GNode *procmsg_get_thread_tree(GSList *mlist)
                        g_node_insert_before
                                (parent, parent->children, node);
                        /* CLAWS: ignore thread */
-                       if(MSG_IS_IGNORE_THREAD(((MsgInfo *)parent->data)->flags)) {
+                       if(MSG_IS_IGNORE_THREAD(((MsgInfo *)parent->data)->flags) && !MSG_IS_IGNORE_THREAD(msginfo->flags)) {
                                procmsg_msginfo_set_flags(msginfo, MSG_IGNORE_THREAD, 0);
                        }
                }
@@ -625,7 +625,7 @@ GNode *procmsg_get_thread_tree(GSList *mlist)
                                g_node_unlink(node);
                                g_node_append(parent, node);
                                /* CLAWS: ignore thread */
-                               if(MSG_IS_IGNORE_THREAD(((MsgInfo *)parent->data)->flags)) {
+                               if(MSG_IS_IGNORE_THREAD(((MsgInfo *)parent->data)->flags) && !MSG_IS_IGNORE_THREAD(msginfo->flags)) {
                                        procmsg_msginfo_set_flags(msginfo, MSG_IGNORE_THREAD, 0);
                                }
                        }
index f51eac2ada319cbb230d31f525ba37bbf1ca4076..df306e292fb08be4dd33d8c21ec412e97ff3576e 100644 (file)
@@ -145,8 +145,6 @@ void sd_init_pixmaps                (MainWindow     *mainwin);
 
 void selective_download(MainWindow *mainwin)
 {
-       summary_write_cache(mainwin->summaryview);
-
        sd_remove_header_files();
        
        inc_lock();
index 991b672b6a7f0b01777ebbe46a855375f5b86779..f8d25b18f9ef6d907c7835db5fe59976c7c6ada4 100644 (file)
@@ -35,4 +35,17 @@ void statusbar_print_all     (const gchar    *format, ...)
                                 G_GNUC_PRINTF(1, 2);
 void statusbar_pop_all         (void);
 
+#define STATUSBAR_PUSH(mainwin, str) \
+{ \
+       gtk_statusbar_push(GTK_STATUSBAR(mainwin->statusbar), \
+                          mainwin->folderview_cid, str); \
+       gtkut_widget_wait_for_draw(mainwin->hbox_stat); \
+}
+
+#define STATUSBAR_POP(mainwin) \
+{ \
+       gtk_statusbar_pop(GTK_STATUSBAR(mainwin->statusbar), \
+                         mainwin->folderview_cid); \
+}
+
 #endif /* __STATUSBAR_H__ */
index b2d0fcc6fb8092e4d3978a8d6151b45eb860b509..6e5e7be984ac48f4a20b6263c5d916a3f0e6fafc 100644 (file)
 #include "filtering.h"
 #include "string_match.h"
 
-#define STATUSBAR_PUSH(mainwin, str) \
-{ \
-       gtk_statusbar_push(GTK_STATUSBAR(mainwin->statusbar), \
-                          mainwin->summaryview_cid, str); \
-       gtkut_widget_wait_for_draw(mainwin->hbox_stat); \
-}
-
-#define STATUSBAR_POP(mainwin) \
-{ \
-       gtk_statusbar_pop(GTK_STATUSBAR(mainwin->statusbar), \
-                         mainwin->summaryview_cid); \
-}
-
 #define SUMMARY_COL_MARK_WIDTH         10
 #define SUMMARY_COL_UNREAD_WIDTH       13
 #define SUMMARY_COL_LOCKED_WIDTH       13
@@ -143,9 +130,6 @@ static void summary_free_msginfo_func       (GtkCTree               *ctree,
 static void summary_set_marks_func     (GtkCTree               *ctree,
                                         GtkCTreeNode           *node,
                                         gpointer                data);
-static void summary_write_cache_func   (GtkCTree               *ctree,
-                                        GtkCTreeNode           *node,
-                                        gpointer                data);
 
 static void summary_set_menu_sensitive (SummaryView            *summaryview);
 
@@ -247,7 +231,9 @@ static void summary_unthread_for_exec_func  (GtkCTree       *ctree,
 void summary_simplify_subject(SummaryView *summaryview, gchar * rexp,
                              GSList * mlist);
 
+#if 0
 void summary_processing(SummaryView *summaryview, GSList * mlist);
+#endif
 static void summary_filter_func                (GtkCTree               *ctree,
                                         GtkCTreeNode           *node,
                                         gpointer                data);
@@ -722,30 +708,16 @@ gboolean summary_show(SummaryView *summaryview, FolderItem *item,
                        summary_unlock(summaryview);
                        summary_execute(summaryview);
                        summary_lock(summaryview);
-               } else if (G_ALERTALTERNATE == val)
-                       summary_write_cache(summaryview);
-               else {
+               } else if (G_ALERTALTERNATE == val) {
+                       /* DO NOTHING */
+               else {
                        summary_unlock(summaryview);
                        inc_unlock();
                        return FALSE;
                }
                folder_update_op_count();
-       } else {
-               /* 
-                * CLAWS: summary_show() is responsible for updating the caches. 
-                * after filtering inc.c::inc_finished() forces the update of
-                * the cache by indirectly calling summary_show() (by re-selecting
-                * the currently selected mail folder).  
-                * this collides with the new filtering system that may have set 
-                * any message flag before calling summary_show(). 
-                * we can prevent this cache-write by checking the opened member
-                * of the folderview. if this is NULL, the folderview forced
-                * an update of the summary view.
-                */
-               if (summaryview->folderview->opened) 
-                       summary_write_cache(summaryview);
-       }       
-        
+       }
+       
        summaryview->folderview->opened = selected_node;
 
        gtk_clist_freeze(GTK_CLIST(ctree));
@@ -794,9 +766,9 @@ gboolean summary_show(SummaryView *summaryview, FolderItem *item,
        BY OTHER PROGRAMS TO THE FOLDER
 */
        mlist = folder_item_get_msg_list(item);
-
+#if 0
        summary_processing(summaryview, mlist);
-
+#endif
        for(cur = mlist ; cur != NULL ; cur = g_slist_next(cur)) {
                MsgInfo * msginfo = (MsgInfo *) cur->data;
 
@@ -808,8 +780,6 @@ gboolean summary_show(SummaryView *summaryview, FolderItem *item,
                }
        }
 
-       summaryview->killed_messages = NULL;
-
        if (summaryview->folder_item->hide_read_msgs) {
                GSList *not_killed;
                
@@ -824,8 +794,7 @@ gboolean summary_show(SummaryView *summaryview, FolderItem *item,
                             && !MSG_IS_IGNORE_THREAD(msginfo->flags))
                            not_killed = g_slist_append(not_killed, msginfo);
                        else
-                               summaryview->killed_messages = 
-                                       g_slist_append(summaryview->killed_messages, msginfo);
+                               procmsg_msginfo_free(msginfo);
                }
                g_slist_free(mlist);
                mlist = not_killed;
@@ -833,8 +802,7 @@ gboolean summary_show(SummaryView *summaryview, FolderItem *item,
                summary_set_hide_read_msgs_menu(summaryview, FALSE);
        }
 
-       if ((global_scoring || item->prefs->scoring) &&
-           (item->folder->type == F_NEWS)) {
+       if ((global_scoring || item->prefs->scoring)) {
                GSList *not_killed;
                gint kill_score;
 
@@ -845,12 +813,10 @@ gboolean summary_show(SummaryView *summaryview, FolderItem *item,
                for(cur = mlist ; cur != NULL ; cur = g_slist_next(cur)) {
                        MsgInfo * msginfo = (MsgInfo *) cur->data;
 
-                       if (MSG_IS_NEWS(msginfo->flags) &&
-                           (msginfo->score <= kill_score))
-                               summaryview->killed_messages = g_slist_append(summaryview->killed_messages, msginfo);
+                       if (msginfo->score > kill_score)
+                               not_killed = g_slist_append(not_killed, msginfo);
                        else
-                               not_killed = g_slist_append(not_killed,
-                                                           msginfo);
+                               procmsg_msginfo_free(msginfo);
                }
                g_slist_free(mlist);
                mlist = not_killed;
@@ -870,8 +836,6 @@ gboolean summary_show(SummaryView *summaryview, FolderItem *item,
        if (item->sort_key != SORT_BY_NONE)
                summary_sort(summaryview, item->sort_key, item->sort_type);
 
-       summary_write_cache(summaryview);
-
        gtk_signal_handler_unblock_by_data(GTK_OBJECT(ctree), summaryview);
 
        gtk_clist_thaw(GTK_CLIST(ctree));
@@ -935,19 +899,9 @@ void summary_clear_list(SummaryView *summaryview)
 {
        GtkCList *clist = GTK_CLIST(summaryview->ctree);
        gint optimal_width;
-       GSList * cur;
 
        gtk_clist_freeze(clist);
 
-       for(cur = summaryview->killed_messages ; cur != NULL ; 
-           cur = g_slist_next(cur)) {
-               MsgInfo * msginfo = (MsgInfo *) cur->data;
-
-               procmsg_msginfo_free(msginfo);
-       }
-       g_slist_free(summaryview->killed_messages);
-       summaryview->killed_messages = NULL;
-
        gtk_ctree_pre_recursive(GTK_CTREE(summaryview->ctree),
                                NULL, summary_free_msginfo_func, NULL);
 
@@ -2089,120 +2043,6 @@ static void summary_set_ctree_from_list(SummaryView *summaryview,
        }
 }
 
-struct wcachefp
-{
-       FILE *cache_fp;
-       FILE *mark_fp;
-};
-
-gint summary_write_cache(SummaryView *summaryview)
-{
-       struct wcachefp fps;
-       GtkCTree *ctree = GTK_CTREE(summaryview->ctree);
-       gint ver = CACHE_VERSION;
-       gchar *buf;
-       gchar *cachefile, *markfile;
-       GSList *cur;
-       gint filemode = 0;
-       PrefsFolderItem *prefs;
-
-       if (!summaryview->folder_item || !summaryview->folder_item->path)
-               return -1;
-               
-       if (!summaryview->folder_item->cache)
-               return -1;
-       
-       folder_item_write_cache(summaryview->folder_item);
-       return 0;
-
-       if (summaryview->folder_item->folder->update_mark != NULL)
-               summaryview->folder_item->folder->update_mark(summaryview->folder_item->folder, summaryview->folder_item);
-
-       cachefile = folder_item_get_cache_file(summaryview->folder_item);
-       g_return_val_if_fail(cachefile != NULL, -1);
-       if ((fps.cache_fp = fopen(cachefile, "wb")) == NULL) {
-               FILE_OP_ERROR(cachefile, "fopen");
-               g_free(cachefile);
-               return -1;
-       }
-       if (change_file_mode_rw(fps.cache_fp, cachefile) < 0)
-               FILE_OP_ERROR(cachefile, "chmod");
-
-       prefs = summaryview->folder_item->prefs;
-        if (prefs && prefs->enable_folder_chmod && prefs->folder_chmod) {
-               /* for cache file */
-               filemode = prefs->folder_chmod;
-               if (filemode & S_IRGRP) filemode |= S_IWGRP;
-               if (filemode & S_IROTH) filemode |= S_IWOTH;
-#if HAVE_FCHMOD
-               fchmod(fileno(fps.cache_fp), filemode);
-#else
-               chmod(cachefile, filemode);
-#endif
-        }
-
-       g_free(cachefile);
-
-       markfile = folder_item_get_mark_file(summaryview->folder_item);
-       if ((fps.mark_fp = fopen(markfile, "wb")) == NULL) {
-               FILE_OP_ERROR(markfile, "fopen");
-               fclose(fps.cache_fp);
-               g_free(markfile);
-               return -1;
-       }
-       if (change_file_mode_rw(fps.mark_fp, markfile) < 0)
-               FILE_OP_ERROR(markfile, "chmod");
-        if (prefs && prefs->enable_folder_chmod && prefs->folder_chmod) {
-#if HAVE_FCHMOD
-               fchmod(fileno(fps.mark_fp), filemode);
-#else
-               chmod(markfile, filemode);
-#endif
-        }
-
-       g_free(markfile);
-
-       buf = g_strdup_printf(_("Writing summary cache (%s)..."),
-                             summaryview->folder_item->path);
-       debug_print(buf);
-       STATUSBAR_PUSH(summaryview->mainwin, buf);
-       g_free(buf);
-
-       WRITE_CACHE_DATA_INT(ver, fps.cache_fp);
-       ver = MARK_VERSION;
-       WRITE_CACHE_DATA_INT(ver, fps.mark_fp);
-
-       gtk_ctree_pre_recursive(ctree, NULL, summary_write_cache_func, &fps);
-
-       for (cur = summaryview->killed_messages; cur != NULL; cur = cur->next) {
-               MsgInfo *msginfo = (MsgInfo *)cur->data;
-               procmsg_write_cache(msginfo, fps.cache_fp);
-               procmsg_write_flags(msginfo, fps.mark_fp);
-       }
-
-       procmsg_flush_mark_queue(summaryview->folder_item, fps.mark_fp);
-
-       fclose(fps.cache_fp);
-       fclose(fps.mark_fp);
-
-       debug_print(_("done.\n"));
-       STATUSBAR_POP(summaryview->mainwin);
-
-       return 0;
-}
-
-static void summary_write_cache_func(GtkCTree *ctree, GtkCTreeNode *node,
-                                    gpointer data)
-{
-       struct wcachefp *fps = data;
-       MsgInfo *msginfo = gtk_ctree_node_get_row_data(ctree, node);
-
-       if (msginfo == NULL) return;
-
-       procmsg_write_cache(msginfo, fps->cache_fp);
-       procmsg_write_flags(msginfo, fps->mark_fp);
-}
-
 static gchar *summary_complete_address(const gchar *addr)
 {
        gint count;
@@ -3365,8 +3205,6 @@ gboolean summary_execute(SummaryView *summaryview)
        summary_update_status(summaryview);
        summary_status_show(summaryview);
 
-       summary_write_cache(summaryview);
-
        gtk_ctree_node_moveto(ctree, summaryview->selected, -1, 0.5, 0);
 
        gtk_clist_thaw(clist);
@@ -3729,61 +3567,6 @@ static void summary_unthread_for_exec_func(GtkCTree *ctree, GtkCTreeNode *node,
        }
 }
 
-void summary_processing(SummaryView *summaryview, GSList * mlist)
-{
-       GSList * processing_list;
-       FolderItem * folder_item;
-       GSList * cur;
-       gchar * buf;
-
-       folder_item = summaryview->folder_item;
-       if (folder_item == NULL)
-               return;
-
-       processing_list = folder_item->prefs->processing;
-
-       if (processing_list == NULL)
-               return;
-
-       summary_lock(summaryview);
-       
-       buf = g_strdup_printf(_("Processing (%s)..."), folder_item->path);
-       debug_print(buf);
-       STATUSBAR_PUSH(summaryview->mainwin, buf);
-       g_free(buf);
-
-       main_window_cursor_wait(summaryview->mainwin);
-
-       summaryview->folder_table = g_hash_table_new(NULL, NULL);
-
-       for(cur = mlist ; cur != NULL ; cur = cur->next) {
-               MsgInfo * msginfo;
-
-               msginfo = (MsgInfo *) cur->data;
-               filter_message_by_msginfo(processing_list, msginfo,
-                                         summaryview->folder_table);
-       }
-       
-       /* folder_item_scan_foreach(summaryview->folder_table); */
-       folderview_update_item_foreach(summaryview->folder_table);
-       
-       g_hash_table_destroy(summaryview->folder_table);
-       summaryview->folder_table = NULL;
-       
-       if (prefs_common.immediate_exec) {
-               summary_unlock(summaryview);
-               summary_execute(summaryview);
-               summary_lock(summaryview);
-       } else
-               summary_status_show(summaryview);
-
-       debug_print(_("done.\n"));
-       STATUSBAR_POP(summaryview->mainwin);
-       main_window_cursor_normal(summaryview->mainwin);
-
-       summary_unlock(summaryview);
-}
-
 void summary_expand_threads(SummaryView *summaryview)
 {
        GtkCTree *ctree = GTK_CTREE(summaryview->ctree);
@@ -4441,10 +4224,6 @@ void summary_set_column_order(SummaryView *summaryview)
 
        item = summaryview->folder_item;
 
-       summary_lock(summaryview);
-       summary_write_cache(summaryview);
-       summary_unlock(summaryview);
-       
        summary_clear_all(summaryview);
        gtk_widget_destroy(summaryview->ctree);
 
@@ -5072,6 +4851,7 @@ static void summary_unignore_thread(SummaryView *summaryview)
        summary_status_show(summaryview);
 }
 
+#if 0 /* OLD PROCESSING */
 static gboolean processing_apply_func(GNode *node, gpointer data)
 {
        FolderItem *item;
@@ -5132,6 +4912,7 @@ void processing_apply(SummaryView * summaryview)
                                processing_apply_func, summaryview);
        }
 }
+#endif
 
 void summary_toggle_show_read_messages(SummaryView *summaryview)
 {
@@ -5211,8 +4992,6 @@ void summary_reflect_prefs_pixmap_theme(SummaryView *summaryview)
        gtk_widget_show(pixmap);
        summaryview->folder_pixmap = pixmap; 
 
-       summary_write_cache(summaryview);
-
        folderview_unselect(summaryview->folderview);
        folderview_select(summaryview->folderview, summaryview->folder_item);
 }
index 13e7bd4f53b274187813c8920029fe433b4720e3..7e545f70942d0b27647709748f109fcb547cff19 100644 (file)
@@ -118,7 +118,6 @@ struct _SummaryView
 
        FolderItem *folder_item;
 
-       GSList * killed_messages;
        gint important_score;
 
        /* current message status */
@@ -240,7 +239,9 @@ void summary_set_colorlabel_color (GtkCTree         *ctree,
 
 void summary_set_column_order    (SummaryView          *summaryview);
 
+#if 0 /* OLD PROCESSING */
 void processing_apply();
+#endif
 
 void summary_toggle_show_read_messages (SummaryView *summaryview);