2008-07-20 [paul] 3.5.0cvs27
authorPaul Mangan <paul@claws-mail.org>
Sun, 20 Jul 2008 07:32:37 +0000 (07:32 +0000)
committerPaul Mangan <paul@claws-mail.org>
Sun, 20 Jul 2008 07:32:37 +0000 (07:32 +0000)
* src/addrgather.c
remove now redundant code
* src/mainwindow.c
* src/mainwindow.h
fix bug 1673, 'Tools/Harvest adresses is
grayed out if folder is empty'

ChangeLog
PATCHSETS
configure.ac
src/addrgather.c
src/mainwindow.c
src/mainwindow.h

index 62a83a6..147de36 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2008-07-20 [paul]      3.5.0cvs27
+
+       * src/addrgather.c
+               remove now redundant code
+       * src/mainwindow.c
+       * src/mainwindow.h
+               fix bug 1673, 'Tools/Harvest adresses is
+               grayed out if folder is empty'
+
 2008-07-19 [ticho]     3.5.0cvs26
 
        * src/edittags.c
index 0ef17ed..c60cc16 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.274.2.252 -r 1.274.2.253 src/mainwindow.c;  ) > 3.5.0cvs24.patchset
 ( cvs diff -u -r 1.61.2.79 -r 1.61.2.80 src/account.c;  cvs diff -u -r 1.5.10.21 -r 1.5.10.22 src/addrgather.c;  cvs diff -u -r 1.382.2.456 -r 1.382.2.457 src/compose.c;  cvs diff -u -r 1.8.2.30 -r 1.8.2.31 src/editldap.c;  cvs diff -u -r 1.1.4.28 -r 1.1.4.29 src/expldifdlg.c;  cvs diff -u -r 1.14.2.17 -r 1.14.2.18 src/importldif.c;  cvs diff -u -r 1.115.2.198 -r 1.115.2.199 src/main.c;  cvs diff -u -r 1.274.2.253 -r 1.274.2.254 src/mainwindow.c;  cvs diff -u -r 1.83.2.133 -r 1.83.2.134 src/mimeview.c;  cvs diff -u -r 1.5.2.17 -r 1.5.2.18 src/noticeview.c;  cvs diff -u -r 1.105.2.137 -r 1.105.2.138 src/prefs_account.c;  cvs diff -u -r 1.60.2.58 -r 1.60.2.59 src/prefs_actions.c;  cvs diff -u -r 1.3.2.19 -r 1.3.2.20 src/prefs_ext_prog.c;  cvs diff -u -r 1.59.2.69 -r 1.59.2.70 src/prefs_filtering.c;  cvs diff -u -r 1.52.2.64 -r 1.52.2.65 src/prefs_folder_item.c;  cvs diff -u -r 1.1.2.10 -r 1.1.2.11 src/prefs_image_viewer.c;  cvs diff -u -r 1.1.2.13 -r 1.1.2.14 src/prefs_logging.c;  cvs diff -u -r 1.1.2.36 -r 1.1.2.37 src/prefs_msg_colors.c;  cvs diff -u -r 1.1.2.29 -r 1.1.2.30 src/prefs_other.c;  cvs diff -u -r 1.1.2.22 -r 1.1.2.23 src/prefs_send.c;  cvs diff -u -r 1.5.2.35 -r 1.5.2.36 src/prefs_spelling.c;  cvs diff -u -r 1.1.2.55 -r 1.1.2.56 src/prefs_summaries.c;  cvs diff -u -r 1.12.2.63 -r 1.12.2.64 src/prefs_template.c;  cvs diff -u -r 1.1.2.13 -r 1.1.2.14 src/printing.c;  cvs diff -u -r 1.8.2.35 -r 1.8.2.36 src/quote_fmt.c;  cvs diff -u -r 1.15.2.53 -r 1.15.2.54 src/summary_search.c;  cvs diff -u -r 1.395.2.373 -r 1.395.2.374 src/summaryview.c;  cvs diff -u -r 1.43.2.101 -r 1.43.2.102 src/toolbar.c;  cvs diff -u -r 1.1.2.70 -r 1.1.2.71 src/wizard.c;  cvs diff -u -r 1.24.2.16 -r 1.24.2.17 src/common/Makefile.am;  cvs diff -u -r 1.1.4.45 -r 1.1.4.46 src/gtk/gtksctree.c;  cvs diff -u -r 1.4.2.40 -r 1.4.2.41 src/gtk/gtkutils.h;  cvs diff -u -r 1.5.2.51 -r 1.5.2.52 src/gtk/pluginwindow.c;  cvs diff -u -r 1.1.2.82 -r 1.1.2.83 src/gtk/quicksearch.c;  cvs diff -u -r 1.1.2.32 -r 1.1.2.33 src/plugins/bogofilter/bogofilter_gtk.c;  cvs diff -u -r 1.5.2.22 -r 1.5.2.23 src/plugins/dillo_viewer/dillo_prefs.c;  cvs diff -u -r 1.1.2.30 -r 1.1.2.31 src/plugins/pgpcore/prefs_gpg.c;  cvs diff -u -r 1.23.2.48 -r 1.23.2.49 src/plugins/spamassassin/spamassassin_gtk.c;  cvs diff -u -r 1.14.2.63 -r 1.14.2.64 src/plugins/trayicon/trayicon.c;  cvs diff -u -r 1.1.2.6 -r 1.1.2.7 src/plugins/trayicon/trayicon_prefs.c;  ) > 3.5.0cvs25.patchset
 ( cvs diff -u -r 1.1.2.16 -r 1.1.2.17 src/edittags.c;  cvs diff -u -r 1.115.2.199 -r 1.115.2.200 src/main.c;  cvs diff -u -r 1.83.2.134 -r 1.83.2.135 src/mimeview.c;  cvs diff -u -r 1.20.2.24 -r 1.20.2.25 src/mimeview.h;  cvs diff -u -r 1.5.2.75 -r 1.5.2.76 src/gtk/gtkutils.c;  cvs diff -u -r 1.4.2.41 -r 1.4.2.42 src/gtk/gtkutils.h;  cvs diff -u -r 1.5.2.28 -r 1.5.2.29 src/gtk/menu.c;  cvs diff -u -r 1.4.2.12 -r 1.4.2.13 src/gtk/menu.h;  ) > 3.5.0cvs26.patchset
+( cvs diff -u -r 1.5.10.22 -r 1.5.10.23 src/addrgather.c;  cvs diff -u -r 1.274.2.254 -r 1.274.2.255 src/mainwindow.c;  cvs diff -u -r 1.39.2.48 -r 1.39.2.49 src/mainwindow.h;  ) > 3.5.0cvs27.patchset
index 1929186..b714546 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=5
 MICRO_VERSION=0
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=26
+EXTRA_VERSION=27
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index e1c1422..2c65cde 100644 (file)
@@ -57,9 +57,8 @@
 #include "addrindex.h"
 #include "addrbook.h"
 
-#define PAGE_WARNING    0
-#define PAGE_FIELDS     1
-#define PAGE_FINISH     2
+#define PAGE_FIELDS     0
+#define PAGE_FINISH     1
 
 #define NUM_FIELDS      6
 
@@ -255,59 +254,6 @@ static void addrgather_dlg_cancel( GtkWidget *widget, gpointer data ) {
        gtk_box_pack_start(GTK_BOX(box), checkbtn, FALSE, TRUE, 0); \
 }
 
-/*
- * Create notebook page for warning message.
- * Enter: pageNum Page number.
- *        pageLbl Page label.
- */
-static void addrgather_page_warning( gint pageNum, gchar *pageLbl ) {
-       GtkWidget *vbox;
-       GtkWidget *table;
-       GtkWidget *label;
-       gint top;
-
-       vbox = gtk_vbox_new(FALSE, 8);
-       gtk_container_add( GTK_CONTAINER( addrgather_dlg.notebook ), vbox );
-       gtk_container_set_border_width( GTK_CONTAINER (vbox), BORDER_WIDTH );
-
-       label = gtk_label_new( pageLbl );
-       gtk_widget_show( label );
-       gtk_notebook_set_tab_label(
-               GTK_NOTEBOOK( addrgather_dlg.notebook ),
-               gtk_notebook_get_nth_page( GTK_NOTEBOOK( addrgather_dlg.notebook ), pageNum ),
-               label );
-
-       table = gtk_table_new(3, 2, FALSE);
-       gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0);
-       gtk_container_set_border_width( GTK_CONTAINER(table), 8 );
-       gtk_table_set_row_spacings(GTK_TABLE(table), 8);
-       gtk_table_set_col_spacings(GTK_TABLE(table), 8 );
-
-       /* First row */
-       top = 0;
-       label = gtk_label_new("");
-       gtk_table_attach(GTK_TABLE(table), label, 0, 1, top, (top + 1), GTK_FILL, 0, 0, 0);
-       gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
-
-       /* First row */
-       top++;
-       label = gtk_label_new( _("No folder or message was selected." ) );
-       gtk_table_attach(GTK_TABLE(table), label, 0, 1, top, (top + 1), GTK_FILL, 0, 0, 0);
-       gtk_label_set_justify( GTK_LABEL(label), GTK_JUSTIFY_LEFT );
-       gtk_misc_set_alignment( GTK_MISC(label), 0, 0.5 );
-
-       /* Second row */
-       top++;
-       label = gtk_label_new( _(
-                       "Please select a folder to process from the folder\n"
-                       "list. Alternatively, select one or messages from\n"
-                       "the message list." ) );
-
-       gtk_table_attach( GTK_TABLE(table), label, 0, 1, top, (top + 1), GTK_FILL, 0, 0, 0);
-       gtk_label_set_justify( GTK_LABEL(label), GTK_JUSTIFY_LEFT );
-       gtk_misc_set_alignment( GTK_MISC(label), 0, 0.5 );
-}
-
 /*
  * Create notebook page for mail headers.
  * Enter: pageNum Page number.
@@ -533,7 +479,6 @@ static void addrgather_dlg_create(void)
                                                                 "Collect Email Address Dialog");
 
        /* Create notebook pages */
-       addrgather_page_warning(PAGE_WARNING, _("Warning"));
        addrgather_page_fields(PAGE_FIELDS, _("Header Fields"));
        addrgather_page_finish(PAGE_FINISH, _("Finish"));
        gtk_widget_show_all(addrgather_dlg.window);
@@ -603,13 +548,7 @@ AddressBookFile *addrgather_dlg_execute(FolderItem *folderItem, AddressIndex *ad
        addrgather_dlg_status_show("");
        gtk_widget_show(addrgather_dlg.window);
 
-       if (errFlag) {
-               gtk_notebook_set_current_page(GTK_NOTEBOOK(addrgather_dlg.notebook), PAGE_WARNING);
-               gtk_widget_set_sensitive(addrgather_dlg.btnOk, FALSE);
-               gtk_widget_grab_default(addrgather_dlg.btnCancel);
-       } else {
-               gtk_widget_grab_focus(addrgather_dlg.entryBook);
-       }
+       gtk_widget_grab_focus(addrgather_dlg.entryBook);
        manage_window_set_transient(GTK_WINDOW(addrgather_dlg.window));
        gtk_main();
 
index bf65245..8ca8082 100644 (file)
@@ -2768,6 +2768,10 @@ SensitiveCond main_window_get_current_state(MainWindow *mainwin)
                state |= M_CAN_LEARN_SPAM;
        }
 
+       if (mainwin->summaryview->folder_item) {
+               state |= M_FOLDER_SELECTED;
+       }
+
        if (inc_is_active())
                state |= M_INC_ACTIVE;
        if (imap_cancel_all_enabled())
@@ -2868,7 +2872,9 @@ void main_window_set_menu_sensitive(MainWindow *mainwin)
                {"/Message/Re-edit"               , M_HAVE_ACCOUNT|M_ALLOW_REEDIT},
 
                {"/Tools/Add sender to address book"   , M_SINGLE_TARGET_EXIST},
-               {"/Tools/Collect addresses"       , M_MSG_EXIST|M_SUMMARY_ISLIST},
+               {"/Tools/Collect addresses"            , M_FOLDER_SELECTED},
+               {"/Tools/Collect addresses/from Current folder..."
+                                                      , M_FOLDER_SELECTED},
                {"/Tools/Collect addresses/from Selected messages..."
                                                       , M_TARGET_EXIST},
                {"/Tools/Filter all messages in folder", M_MSG_EXIST|M_EXEC},
index b63b6b1..56db6cf 100644 (file)
@@ -62,7 +62,8 @@ typedef enum
        M_HAVE_PROCESSING     = 1 << 21,
        M_SUMMARY_ISLIST      = 1 << 22,
        M_IN_MSGLIST          = 1 << 23,
-       M_HAVE_MULTI_ACCOUNT  = 1 << 24
+       M_HAVE_MULTI_ACCOUNT  = 1 << 24,
+       M_FOLDER_SELECTED     = 1 << 25
 } SensitiveCond;
 
 typedef enum