* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
+/* alfons - all folder item specific settings should migrate into
+ * folderlist.xml!!! the old folderitemrc file will only serve for a few
+ * versions (for compatibility) */
+
#include "intl.h"
#include "defs.h"
#include "folder.h"
NULL, NULL, NULL},
{"important_score", "1", &tmp_prefs.important_score, P_INT,
NULL, NULL, NULL},
+ /* MIGRATION */
{"request_return_receipt", "", &tmp_prefs.request_return_receipt, P_BOOL,
NULL, NULL, NULL},
{"enable_default_to", "", &tmp_prefs.enable_default_to, P_BOOL,
prefs_read_config(param, id, FOLDERITEM_RC);
g_free(id);
- * item->prefs = tmp_prefs;
+ *item->prefs = tmp_prefs;
+
+ /* MIGRATION */
+ item->ret_rcpt = tmp_prefs.request_return_receipt ? TRUE : FALSE;
}
void prefs_folder_item_save_config(FolderItem * item)
prefs_save_config(param, id, FOLDERITEM_RC);
g_free(id);
+
+ /* MIGRATION: make sure migrated items are not saved
+ */
}
void prefs_folder_item_set_config(FolderItem * item,
void prefs_folder_item_free(PrefsFolderItem * prefs)
{
- g_free(prefs->default_to);
+ if (prefs->default_to)
+ g_free(prefs->default_to);
if (prefs->scoring != NULL)
prefs_scoring_free(prefs->scoring);
g_free(prefs);
return GTK_SORT_ASCENDING;
}
+#define SAFE_STRING(str) \
+ (str) ? (str) : ""
+
void prefs_folder_item_create(FolderItem *item) {
struct PrefsFolderItemDialog *dialog;
GtkWidget *window;
PACK_CHECK_BUTTON(vbox, checkbtn_request_return_receipt,
_("Request Return Receipt"));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_request_return_receipt),
- item->prefs->request_return_receipt);
+ item->ret_rcpt ? TRUE : FALSE);
/* Default To */
hbox = gtk_hbox_new(FALSE, 8);
gtk_widget_show(entry_default_to);
gtk_box_pack_start(GTK_BOX(hbox), entry_default_to, FALSE, FALSE, 0);
gtk_editable_set_editable(GTK_EDITABLE(entry_default_to), item->prefs->enable_default_to);
- gtk_entry_set_text(GTK_ENTRY(entry_default_to), item->prefs->default_to);
+ gtk_entry_set_text(GTK_ENTRY(entry_default_to), SAFE_STRING(item->prefs->default_to));
/* Folder chmod */
hbox = gtk_hbox_new(FALSE, 8);
prefs->request_return_receipt =
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->checkbtn_request_return_receipt));
+ /* MIGRATION */
+ dialog->item->ret_rcpt = prefs->request_return_receipt;
+
prefs->enable_default_to =
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->checkbtn_default_to));
g_free(prefs->default_to);