2004-11-09 [colin] 0.9.12cvs144.1
[claws.git] / src / folder_item_prefs.c
index d60d0e9575ecc08bbfc767443dc4284cff3d7d22..054e11e813f402f673d0b1c74b91b1f8ac26eb68 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
- * Copyright (C) 1999-2001 Hiroyuki Yamamoto
+ * Copyright (C) 1999-2004 Hiroyuki Yamamoto and the Sylpheed-Claws team
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -31,7 +31,6 @@
 #include "utils.h"
 #include "prefs_gtk.h"
 #include "filtering.h"
-#include "prefs_scoring.h"
 #include "folder_item_prefs.h"
 
 FolderItemPrefs tmp_prefs;
@@ -53,10 +52,12 @@ static PrefParam param[] = {
         NULL, NULL, NULL},
        /*{"enable_thread", "TRUE", &tmp_prefs.enable_thread, P_BOOL,
         NULL, NULL, NULL},*/
+#if 0
        {"hide_score", "-9999", &tmp_prefs.kill_score, P_INT,
         NULL, NULL, NULL},
        {"important_score", "1", &tmp_prefs.important_score, P_INT,
         NULL, NULL, NULL},
+#endif
        /* MIGRATION */  
        {"request_return_receipt", "", &tmp_prefs.request_return_receipt, P_BOOL,
         NULL, NULL, NULL},
@@ -80,10 +81,20 @@ static PrefParam param[] = {
         NULL, NULL, NULL},
        {"default_account", NULL, &tmp_prefs.default_account, P_INT,
         NULL, NULL, NULL},
+#if USE_ASPELL
+       {"enable_default_dictionary", "", &tmp_prefs.enable_default_dictionary, P_BOOL,
+        NULL, NULL, NULL},
+       {"default_dictionary", NULL, &tmp_prefs.default_dictionary, P_STRING,
+        NULL, NULL, NULL},
+#endif  
        {"save_copy_to_folder", NULL, &tmp_prefs.save_copy_to_folder, P_BOOL,
         NULL, NULL, NULL},
        {"folder_color", "", &tmp_prefs.color, P_INT,
         NULL, NULL, NULL},
+       {"enable_processing", "FALSE", &tmp_prefs.enable_processing, P_BOOL,
+        NULL, NULL, NULL},
+       {"newmailcheck", "TRUE", &tmp_prefs.newmailcheck, P_BOOL,
+        NULL, NULL, NULL},
        {NULL, NULL, NULL, P_OTHER, NULL, NULL, NULL}
 };
 
@@ -131,7 +142,7 @@ void folder_item_prefs_save_config(FolderItem * item)
 
        id = folder_item_get_identifier(item);
 
-       prefs_save_config(param, id, FOLDERITEM_RC);
+       prefs_write_config(param, id, FOLDERITEM_RC);
        g_free(id);
 
        /* MIGRATION: make sure migrated items are not saved
@@ -156,8 +167,6 @@ static FolderItemPrefs *folder_item_prefs_clear(FolderItemPrefs *prefs)
        prefs->sort_by_subject = FALSE;
        prefs->sort_by_score = FALSE;
        prefs->sort_descending = FALSE;
-       prefs->kill_score = -9999;
-       prefs->important_score = 9999;
 
        prefs->request_return_receipt = FALSE;
        prefs->enable_default_to = FALSE;
@@ -170,11 +179,18 @@ static FolderItemPrefs *folder_item_prefs_clear(FolderItemPrefs *prefs)
        prefs->folder_chmod = 0;
        prefs->enable_default_account = FALSE;
        prefs->default_account = 0;
+#if USE_ASPELL
+       prefs->enable_default_dictionary = FALSE;
+       prefs->default_dictionary = NULL;
+#endif
        prefs->save_copy_to_folder = FALSE;
        prefs->color = 0;
 
-       prefs->scoring = NULL;
+        prefs->enable_processing = TRUE;
        prefs->processing = NULL;
+
+       prefs->newmailcheck = TRUE;
+
        return prefs;
 }
 
@@ -193,8 +209,6 @@ void folder_item_prefs_free(FolderItemPrefs * prefs)
                g_free(prefs->default_to);
        if (prefs->default_reply_to) 
                g_free(prefs->default_reply_to);
-       if (prefs->scoring != NULL)
-               prefs_scoring_free(prefs->scoring);
        g_free(prefs);
 }
 
@@ -217,7 +231,7 @@ gint folder_item_prefs_get_sort_type(FolderItem * item)
 
 void folder_item_prefs_copy_prefs(FolderItem * src, FolderItem * dest)
 {
-       GSList *tmp_prop_list = NULL, *tmp_scor_list = NULL, *tmp;
+       GSList *tmp_prop_list = NULL, *tmp;
        folder_item_prefs_read_config(src);
 
        tmp_prefs.directory                     = g_strdup(src->prefs->directory);
@@ -229,18 +243,10 @@ void folder_item_prefs_copy_prefs(FolderItem * src, FolderItem * dest)
        tmp_prefs.sort_by_score                 = src->prefs->sort_by_score;
        tmp_prefs.sort_descending               = src->prefs->sort_descending;
        tmp_prefs.enable_thread                 = src->prefs->enable_thread;
-       tmp_prefs.kill_score                    = src->prefs->kill_score;
-       tmp_prefs.important_score               = src->prefs->important_score;
+        tmp_prefs.enable_processing             = src->prefs->enable_processing;
+    tmp_prefs.newmailcheck             = src->prefs->newmailcheck;
 
        prefs_matcher_read_config();
-       for (tmp = src->prefs->scoring; tmp != NULL && tmp->data != NULL;) {
-               ScoringProp *prop = (ScoringProp *)tmp->data;
-               
-               tmp_scor_list = g_slist_append(tmp_scor_list,
-                                          scoringprop_copy(prop));
-               tmp = tmp->next;
-       }
-       tmp_prefs.scoring                       = tmp_scor_list;
 
        for (tmp = src->prefs->processing; tmp != NULL && tmp->data != NULL;) {
                FilteringProp *prop = (FilteringProp *)tmp->data;
@@ -262,6 +268,10 @@ void folder_item_prefs_copy_prefs(FolderItem * src, FolderItem * dest)
        tmp_prefs.folder_chmod                  = src->prefs->folder_chmod;
        tmp_prefs.enable_default_account        = src->prefs->enable_default_account;
        tmp_prefs.default_account               = src->prefs->default_account;
+#if USE_ASPELL
+       tmp_prefs.enable_default_dictionary     = src->prefs->enable_default_dictionary;
+       tmp_prefs.default_dictionary            = g_strdup(src->prefs->default_dictionary);
+#endif
        tmp_prefs.save_copy_to_folder           = src->prefs->save_copy_to_folder;
        tmp_prefs.color                         = src->prefs->color;