split the folder prefs into 2 separate pages
authorPaul Mangan <paul@claws-mail.org>
Tue, 29 Jul 2003 13:07:59 +0000 (13:07 +0000)
committerPaul Mangan <paul@claws-mail.org>
Tue, 29 Jul 2003 13:07:59 +0000 (13:07 +0000)
ChangeLog.claws
configure.ac
src/prefs_folder_item.c

index 9a9803c174f7d3940d34dbf9eb383d19063e6803..54f7a527dd2605a443a802a819f584a2b08e6cea 100644 (file)
@@ -1,3 +1,8 @@
+2003-07-29 [paul]      0.9.3claws73
+
+       * src/prefs_folder_item.c
+               split the prefs into 2 separate pages
+
 2003-07-29 [paul]      0.9.3claws72
 
        * src/compose.c
index 0650d45688db3ca6069d8414620cfbfca3cd732b..b54e06d7b90f44a653ba183e0ad687f22a9450ea 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=9
 MICRO_VERSION=3
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=72
+EXTRA_VERSION=73
 if test $EXTRA_VERSION -eq 0; then
     VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}claws
 else
index 53ff219947c54d621f98c8425caf51041d0afecd..45ff47628291edeb2743856843d79577dd3264a6 100644 (file)
 #include "filtering.h"
 #include "folder_item_prefs.h"
 
-struct FolderItemSettingsPage
+struct FolderItemGeneralPage
+{
+       PrefsPage page;
+
+       FolderItem *item;
+
+       GtkWidget *table;
+       GtkWidget *checkbtn_simplify_subject;
+       GtkWidget *entry_simplify_subject;
+       GtkWidget *checkbtn_folder_chmod;
+       GtkWidget *entry_folder_chmod;
+       GtkWidget *folder_color;
+       GtkWidget *folder_color_btn;
+
+       GtkWidget *color_dialog;
+};
+
+struct FolderItemComposePage
 {
        PrefsPage page;
 
@@ -56,16 +73,8 @@ struct FolderItemSettingsPage
        GtkWidget *entry_default_to;
        GtkWidget *checkbtn_default_reply_to;
        GtkWidget *entry_default_reply_to;
-       GtkWidget *checkbtn_simplify_subject;
-       GtkWidget *entry_simplify_subject;
-       GtkWidget *checkbtn_folder_chmod;
-       GtkWidget *entry_folder_chmod;
        GtkWidget *checkbtn_enable_default_account;
        GtkWidget *optmenu_default_account;
-       GtkWidget *folder_color;
-       GtkWidget *folder_color_btn;
-
-       GtkWidget *color_dialog;
 };
 
 
@@ -82,11 +91,171 @@ static void folder_color_set_dialog_key_pressed(GtkWidget *widget,
 #define SAFE_STRING(str) \
        (str) ? (str) : ""
 
-void prefs_folder_item_settings_create_widget_func(PrefsPage * _page,
+void prefs_folder_item_general_create_widget_func(PrefsPage * _page,
                                                   GtkWindow * window,
                                                   gpointer data)
 {
-       struct FolderItemSettingsPage *page = (struct FolderItemSettingsPage *) _page;
+       struct FolderItemGeneralPage *page = (struct FolderItemGeneralPage *) _page;
+       FolderItem *item = (FolderItem *) data;
+       guint rowcount;
+
+       GtkWidget *table;
+       GtkWidget *hbox;
+       
+       GtkWidget *checkbtn_simplify_subject;
+       GtkWidget *entry_simplify_subject;
+       GtkWidget *checkbtn_folder_chmod;
+       GtkWidget *entry_folder_chmod;
+       GtkWidget *folder_color;
+       GtkWidget *folder_color_btn;
+       GtkWidget *menu;
+       GtkWidget *menuitem;
+       gint account_index, index;
+
+       page->item         = item;
+
+       /* Table */
+       table = gtk_table_new(3, 2, FALSE);
+       gtk_widget_show(table);
+       gtk_table_set_row_spacings(GTK_TABLE(table), -1);
+       rowcount = 0;
+
+       /* Simplify Subject */
+       checkbtn_simplify_subject = gtk_check_button_new_with_label(_("Simplify Subject RegExp: "));
+       gtk_widget_show(checkbtn_simplify_subject);
+       gtk_table_attach(GTK_TABLE(table), checkbtn_simplify_subject, 0, 1, 
+                        rowcount, rowcount + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK, 0, 0);
+       gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_simplify_subject), 
+                                    item->prefs->enable_simplify_subject);
+
+       entry_simplify_subject = gtk_entry_new();
+       gtk_widget_show(entry_simplify_subject);
+       gtk_table_attach_defaults(GTK_TABLE(table), entry_simplify_subject, 1, 2, 
+                                 rowcount, rowcount + 1);
+       SET_TOGGLE_SENSITIVITY(checkbtn_simplify_subject, entry_simplify_subject);
+       gtk_entry_set_text(GTK_ENTRY(entry_simplify_subject), 
+                          SAFE_STRING(item->prefs->simplify_subject_regexp));
+
+       rowcount++;
+
+       /* Folder chmod */
+       checkbtn_folder_chmod = gtk_check_button_new_with_label(_("Folder chmod: "));
+       gtk_widget_show(checkbtn_folder_chmod);
+       gtk_table_attach(GTK_TABLE(table), checkbtn_folder_chmod, 0, 1, 
+                        rowcount, rowcount + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK, 0, 0);
+
+       gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_folder_chmod), 
+                                    item->prefs->enable_folder_chmod);
+
+       entry_folder_chmod = gtk_entry_new();
+       gtk_widget_show(entry_folder_chmod);
+       gtk_table_attach_defaults(GTK_TABLE(table), entry_folder_chmod, 1, 2, 
+                                 rowcount, rowcount + 1);
+       SET_TOGGLE_SENSITIVITY(checkbtn_folder_chmod, entry_folder_chmod);
+       if (item->prefs->folder_chmod) {
+               gchar *buf;
+
+               buf = g_strdup_printf("%o", item->prefs->folder_chmod);
+               gtk_entry_set_text(GTK_ENTRY(entry_folder_chmod), buf);
+               g_free(buf);
+       }
+       
+       rowcount++;
+
+       /* Folder color */
+       folder_color = gtk_label_new(_("Folder color: "));
+       gtk_misc_set_alignment(GTK_MISC(folder_color), 0, 0.5);
+       gtk_widget_show(folder_color);
+       gtk_table_attach_defaults(GTK_TABLE(table), folder_color, 0, 1, 
+                        rowcount, rowcount + 1);
+
+       hbox = gtk_hbox_new (FALSE, 0);
+       gtk_widget_show (hbox);
+       gtk_table_attach_defaults(GTK_TABLE(table), hbox, 1, 2, 
+                                 rowcount, rowcount + 1);
+
+       folder_color_btn = gtk_button_new_with_label("");
+       gtk_widget_show (hbox);
+       gtk_widget_set_usize(folder_color_btn, 36, 26);
+       gtk_box_pack_start (GTK_BOX (hbox), folder_color_btn, FALSE, FALSE, 0);
+
+       page->item->prefs->color = item->prefs->color;
+
+       gtk_signal_connect(GTK_OBJECT(folder_color_btn), "clicked",
+                          GTK_SIGNAL_FUNC(folder_color_set_dialog),
+                          page);
+
+       set_button_color(item->prefs->color, folder_color_btn);
+
+       rowcount++;
+
+       page->table = table;
+       page->checkbtn_simplify_subject = checkbtn_simplify_subject;
+       page->entry_simplify_subject = entry_simplify_subject;
+       page->checkbtn_folder_chmod = checkbtn_folder_chmod;
+       page->entry_folder_chmod = entry_folder_chmod;
+       page->folder_color = folder_color;
+       page->folder_color_btn = folder_color_btn;
+
+       page->page.widget = table;
+}
+
+void prefs_folder_item_general_destroy_widget_func(PrefsPage *_page) 
+{
+       struct FolderItemGeneralPage *page = (struct FolderItemGeneralPage *) _page;
+}
+
+void prefs_folder_item_general_save_func(PrefsPage *_page) 
+{
+       gchar *buf;
+       struct FolderItemGeneralPage *page = (struct FolderItemGeneralPage *) _page;
+       FolderItemPrefs *prefs = page->item->prefs;
+       GtkWidget *menu;
+       GtkWidget *menuitem;
+       gboolean   old_simplify_val;
+       gchar     *old_simplify_str;
+
+       g_return_if_fail(prefs != NULL);
+
+       old_simplify_val = prefs->enable_simplify_subject;
+       old_simplify_str = prefs->simplify_subject_regexp;
+
+       prefs->enable_simplify_subject =
+           gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(page->checkbtn_simplify_subject));
+       prefs->simplify_subject_regexp = 
+           gtk_editable_get_chars(GTK_EDITABLE(page->entry_simplify_subject), 0, -1);
+       
+/*
+       if (page->item == page->folderview->summaryview->folder_item &&
+           (prefs->enable_simplify_subject != old_simplify_val ||  
+           0 != strcmp2(prefs->simplify_subject_regexp, old_simplify_str))) {
+               summary_clear_all(page->folderview->summaryview);
+               page->folderview->opened = NULL;
+               page->folderview->selected = NULL;
+               folderview_select(page->folderview, page->item);
+       }
+*/
+       if (old_simplify_str) g_free(old_simplify_str);
+
+       prefs->enable_folder_chmod = 
+           gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(page->checkbtn_folder_chmod));
+       buf = gtk_editable_get_chars(GTK_EDITABLE(page->entry_folder_chmod), 0, -1);
+       prefs->folder_chmod = prefs_folder_item_chmod_mode(buf);
+       g_free(buf);
+
+       prefs->color = page->item->prefs->color;
+       /* update folder view */
+       if (prefs->color > 0)
+               folder_item_update(page->item, F_ITEM_UPDATE_MSGCNT);
+
+       folder_item_prefs_save_config(page->item);
+}
+
+void prefs_folder_item_compose_create_widget_func(PrefsPage * _page,
+                                                  GtkWindow * window,
+                                                  gpointer data)
+{
+       struct FolderItemComposePage *page = (struct FolderItemComposePage *) _page;
        FolderItem *item = (FolderItem *) data;
        guint rowcount;
 
@@ -98,16 +267,10 @@ void prefs_folder_item_settings_create_widget_func(PrefsPage * _page,
        GtkWidget *entry_default_to;
        GtkWidget *checkbtn_default_reply_to;
        GtkWidget *entry_default_reply_to;
-       GtkWidget *checkbtn_simplify_subject;
-       GtkWidget *entry_simplify_subject;
-       GtkWidget *checkbtn_folder_chmod;
-       GtkWidget *entry_folder_chmod;
        GtkWidget *checkbtn_enable_default_account;
        GtkWidget *optmenu_default_account;
        GtkWidget *optmenu_default_account_menu;
        GtkWidget *optmenu_default_account_menuitem;
-       GtkWidget *folder_color;
-       GtkWidget *folder_color_btn;
        GList *cur_ac;
        GList *account_list;
        PrefsAccount *ac_prefs;
@@ -119,9 +282,9 @@ void prefs_folder_item_settings_create_widget_func(PrefsPage * _page,
        page->item         = item;
 
        /* Table */
-       table = gtk_table_new(8, 2, FALSE);
+       table = gtk_table_new(5, 2, FALSE);
        gtk_widget_show(table);
-       gtk_table_set_row_spacings(GTK_TABLE(table), VSPACING_NARROW);
+       gtk_table_set_row_spacings(GTK_TABLE(table), -1);
        rowcount = 0;
 
        /* Request Return Receipt */
@@ -130,7 +293,7 @@ void prefs_folder_item_settings_create_widget_func(PrefsPage * _page,
        gtk_widget_show(checkbtn_request_return_receipt);
        gtk_table_attach(GTK_TABLE(table), checkbtn_request_return_receipt, 
                         0, 2, rowcount, rowcount + 1, GTK_SHRINK | GTK_FILL, 
-                        GTK_SHRINK, 0, 0);
+                        GTK_FILL, 0, 0);
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_request_return_receipt),
                                     item->ret_rcpt ? TRUE : FALSE);
 
@@ -141,7 +304,7 @@ void prefs_folder_item_settings_create_widget_func(PrefsPage * _page,
                (_("Save copy of outgoing messages to this folder instead of Sent"));
        gtk_widget_show(checkbtn_save_copy_to_folder);
        gtk_table_attach(GTK_TABLE(table), checkbtn_save_copy_to_folder, 0, 2, 
-                        rowcount, rowcount + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK, 0, 0);
+                        rowcount, rowcount + 1, GTK_SHRINK | GTK_FILL, GTK_FILL, 0, 0);
        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_save_copy_to_folder),
                                     item->prefs->save_copy_to_folder ? TRUE : FALSE);
 
@@ -181,48 +344,6 @@ void prefs_folder_item_settings_create_widget_func(PrefsPage * _page,
 
        rowcount++;
 
-       /* Simplify Subject */
-       checkbtn_simplify_subject = gtk_check_button_new_with_label(_("Simplify Subject RegExp: "));
-       gtk_widget_show(checkbtn_simplify_subject);
-       gtk_table_attach(GTK_TABLE(table), checkbtn_simplify_subject, 0, 1, 
-                        rowcount, rowcount + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK, 0, 0);
-       gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_simplify_subject), 
-                                    item->prefs->enable_simplify_subject);
-
-       entry_simplify_subject = gtk_entry_new();
-       gtk_widget_show(entry_simplify_subject);
-       gtk_table_attach_defaults(GTK_TABLE(table), entry_simplify_subject, 1, 2, 
-                                 rowcount, rowcount + 1);
-       SET_TOGGLE_SENSITIVITY(checkbtn_simplify_subject, entry_simplify_subject);
-       gtk_entry_set_text(GTK_ENTRY(entry_simplify_subject), 
-                          SAFE_STRING(item->prefs->simplify_subject_regexp));
-
-       rowcount++;
-
-       /* Folder chmod */
-       checkbtn_folder_chmod = gtk_check_button_new_with_label(_("Folder chmod: "));
-       gtk_widget_show(checkbtn_folder_chmod);
-       gtk_table_attach(GTK_TABLE(table), checkbtn_folder_chmod, 0, 1, 
-                        rowcount, rowcount + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK, 0, 0);
-
-       gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(checkbtn_folder_chmod), 
-                                    item->prefs->enable_folder_chmod);
-
-       entry_folder_chmod = gtk_entry_new();
-       gtk_widget_show(entry_folder_chmod);
-       gtk_table_attach_defaults(GTK_TABLE(table), entry_folder_chmod, 1, 2, 
-                                 rowcount, rowcount + 1);
-       SET_TOGGLE_SENSITIVITY(checkbtn_folder_chmod, entry_folder_chmod);
-       if (item->prefs->folder_chmod) {
-               gchar *buf;
-
-               buf = g_strdup_printf("%o", item->prefs->folder_chmod);
-               gtk_entry_set_text(GTK_ENTRY(entry_folder_chmod), buf);
-               g_free(buf);
-       }
-       
-       rowcount++;
-
        /* Default account */
        checkbtn_enable_default_account = gtk_check_button_new_with_label(_("Default account: "));
        gtk_widget_show(checkbtn_enable_default_account);
@@ -266,31 +387,6 @@ void prefs_folder_item_settings_create_widget_func(PrefsPage * _page,
 
        rowcount++;
 
-       /* Folder color */
-       folder_color = gtk_label_new(_("Folder color: "));
-       gtk_misc_set_alignment(GTK_MISC(folder_color), 0, 0.5);
-       gtk_widget_show(folder_color);
-       gtk_table_attach_defaults(GTK_TABLE(table), folder_color, 0, 1, 
-                        rowcount, rowcount + 1);
-
-       folder_color_btn = gtk_button_new_with_label("");
-       gtk_widget_set_usize(folder_color_btn, 36, 26);
-       gtk_container_set_border_width(GTK_CONTAINER(folder_color_btn), 2);
-       gtk_widget_show(folder_color_btn);
-       gtk_table_attach(GTK_TABLE(table), folder_color_btn,
-                        1, 2, rowcount, rowcount + 1,
-                        GTK_SHRINK, 0, 0, 0);
-
-       page->item->prefs->color = item->prefs->color;
-
-       gtk_signal_connect(GTK_OBJECT(folder_color_btn), "clicked",
-                          GTK_SIGNAL_FUNC(folder_color_set_dialog),
-                          page);
-
-       set_button_color(item->prefs->color, folder_color_btn);
-
-       rowcount++;
-
        page->window = GTK_WIDGET(window);
        page->table = table;
        page->checkbtn_request_return_receipt = checkbtn_request_return_receipt;
@@ -299,44 +395,33 @@ void prefs_folder_item_settings_create_widget_func(PrefsPage * _page,
        page->entry_default_to = entry_default_to;
        page->checkbtn_default_reply_to = checkbtn_default_reply_to;
        page->entry_default_reply_to = entry_default_reply_to;
-       page->checkbtn_simplify_subject = checkbtn_simplify_subject;
-       page->entry_simplify_subject = entry_simplify_subject;
-       page->checkbtn_folder_chmod = checkbtn_folder_chmod;
-       page->entry_folder_chmod = entry_folder_chmod;
        page->checkbtn_enable_default_account = checkbtn_enable_default_account;
        page->optmenu_default_account = optmenu_default_account;
-       page->folder_color = folder_color;
-       page->folder_color_btn = folder_color_btn;
 
        address_completion_start(page->window);
 
        page->page.widget = table;
 }
 
-void prefs_folder_item_settings_destroy_widget_func(PrefsPage *_page) 
+void prefs_folder_item_compose_destroy_widget_func(PrefsPage *_page) 
 {
-       struct FolderItemSettingsPage *page = (struct FolderItemSettingsPage *) _page;
+       struct FolderItemComposePage *page = (struct FolderItemComposePage *) _page;
 
        address_completion_unregister_entry(GTK_ENTRY(page->entry_default_to));
        address_completion_unregister_entry(GTK_ENTRY(page->entry_default_reply_to));
        address_completion_end(page->window);
 }
 
-void prefs_folder_item_settings_save_func(PrefsPage *_page) 
+void prefs_folder_item_compose_save_func(PrefsPage *_page) 
 {
        gchar *buf;
-       struct FolderItemSettingsPage *page = (struct FolderItemSettingsPage *) _page;
+       struct FolderItemComposePage *page = (struct FolderItemComposePage *) _page;
        FolderItemPrefs *prefs = page->item->prefs;
        GtkWidget *menu;
        GtkWidget *menuitem;
-       gboolean   old_simplify_val;
-       gchar     *old_simplify_str;
 
        g_return_if_fail(prefs != NULL);
 
-       old_simplify_val = prefs->enable_simplify_subject;
-       old_simplify_str = prefs->simplify_subject_regexp;
-
        prefs->request_return_receipt = 
            gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(page->checkbtn_request_return_receipt));
        /* MIGRATION */    
@@ -357,40 +442,12 @@ void prefs_folder_item_settings_save_func(PrefsPage *_page)
        prefs->default_reply_to = 
            gtk_editable_get_chars(GTK_EDITABLE(page->entry_default_reply_to), 0, -1);
 
-       prefs->enable_simplify_subject =
-           gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(page->checkbtn_simplify_subject));
-       prefs->simplify_subject_regexp = 
-           gtk_editable_get_chars(GTK_EDITABLE(page->entry_simplify_subject), 0, -1);
-       
-/*
-       if (page->item == page->folderview->summaryview->folder_item &&
-           (prefs->enable_simplify_subject != old_simplify_val ||  
-           0 != strcmp2(prefs->simplify_subject_regexp, old_simplify_str))) {
-               summary_clear_all(page->folderview->summaryview);
-               page->folderview->opened = NULL;
-               page->folderview->selected = NULL;
-               folderview_select(page->folderview, page->item);
-       }
-*/
-       if (old_simplify_str) g_free(old_simplify_str);
-
-       prefs->enable_folder_chmod = 
-           gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(page->checkbtn_folder_chmod));
-       buf = gtk_editable_get_chars(GTK_EDITABLE(page->entry_folder_chmod), 0, -1);
-       prefs->folder_chmod = prefs_folder_item_chmod_mode(buf);
-       g_free(buf);
-
-       prefs->enable_default_account = 
+       prefs->enable_default_account = 
            gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(page->checkbtn_enable_default_account));
        menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(page->optmenu_default_account));
        menuitem = gtk_menu_get_active(GTK_MENU(menu));
        prefs->default_account = GPOINTER_TO_INT(gtk_object_get_user_data(GTK_OBJECT(menuitem)));
 
-       prefs->color = page->item->prefs->color;
-       /* update folder view */
-       if (prefs->color > 0)
-               folder_item_update(page->item, F_ITEM_UPDATE_MSGCNT);
-
        folder_item_prefs_save_config(page->item);
 }
 
@@ -423,7 +480,7 @@ static void set_button_color(guint rgbvalue, GtkWidget *button)
 
 static void folder_color_set_dialog(GtkWidget *widget, gpointer data)
 {
-       struct FolderItemSettingsPage *page = (struct FolderItemSettingsPage *) data;
+       struct FolderItemGeneralPage *page = (struct FolderItemGeneralPage *) data;
        GtkColorSelectionDialog *dialog;
        gdouble color[4] = {0.0, 0.0, 0.0, 0.0};
        guint rgbcolor;
@@ -455,7 +512,7 @@ static void folder_color_set_dialog(GtkWidget *widget, gpointer data)
 
 static void folder_color_set_dialog_ok(GtkWidget *widget, gpointer data)
 {
-       struct FolderItemSettingsPage *page = (struct FolderItemSettingsPage *) data;
+       struct FolderItemGeneralPage *page = (struct FolderItemGeneralPage *) data;
        GtkColorSelection *colorsel = (GtkColorSelection *)
                                ((GtkColorSelectionDialog *) page->color_dialog)->colorsel;
        gdouble color[4];
@@ -476,7 +533,7 @@ static void folder_color_set_dialog_ok(GtkWidget *widget, gpointer data)
 
 static void folder_color_set_dialog_cancel(GtkWidget *widget, gpointer data)
 {
-       struct FolderItemSettingsPage *page = (struct FolderItemSettingsPage *) data;
+       struct FolderItemGeneralPage *page = (struct FolderItemGeneralPage *) data;
        gtk_widget_destroy(page->color_dialog);
 }
 
@@ -484,20 +541,32 @@ static void folder_color_set_dialog_key_pressed(GtkWidget *widget,
                                                GdkEventKey *event,
                                                gpointer data)
 {
-       struct FolderItemSettingsPage *page = (struct FolderItemSettingsPage *) data;
+       struct FolderItemGeneralPage *page = (struct FolderItemGeneralPage *) data;
        gtk_widget_destroy(page->color_dialog);
 }
 
-struct FolderItemSettingsPage folder_item_settings_page;
+struct FolderItemGeneralPage folder_item_general_page;
+
+static void register_general_page()
+{
+        folder_item_general_page.page.path = _("General");
+        folder_item_general_page.page.create_widget = prefs_folder_item_general_create_widget_func;
+        folder_item_general_page.page.destroy_widget = prefs_folder_item_general_destroy_widget_func;
+        folder_item_general_page.page.save_page = prefs_folder_item_general_save_func;
+        
+       prefs_folder_item_register_page((PrefsPage *) &folder_item_general_page);
+}
+
+struct FolderItemComposePage folder_item_compose_page;
 
-static void register_settings_page()
+static void register_compose_page()
 {
-        folder_item_settings_page.page.path = "Settings";
-        folder_item_settings_page.page.create_widget = prefs_folder_item_settings_create_widget_func;
-        folder_item_settings_page.page.destroy_widget = prefs_folder_item_settings_destroy_widget_func;
-        folder_item_settings_page.page.save_page = prefs_folder_item_settings_save_func;
+        folder_item_compose_page.page.path = _("Compose");
+        folder_item_compose_page.page.create_widget = prefs_folder_item_compose_create_widget_func;
+        folder_item_compose_page.page.destroy_widget = prefs_folder_item_compose_destroy_widget_func;
+        folder_item_compose_page.page.save_page = prefs_folder_item_compose_save_func;
         
-       prefs_folder_item_register_page((PrefsPage *) &folder_item_settings_page);
+       prefs_folder_item_register_page((PrefsPage *) &folder_item_compose_page);
 }
 
 static GSList *prefs_pages = NULL;
@@ -505,7 +574,8 @@ static GSList *prefs_pages = NULL;
 void prefs_folder_item_open(FolderItem *item)
 {
        if (prefs_pages == NULL) {
-               register_settings_page();
+               register_general_page();
+               register_compose_page();
        }
 
        prefswindow_open(_("Settings for folder"), prefs_pages, item);