talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit 18c1ee4a81e42aa15ac8c9f05e26f6adb583720c
parent 4bad8c6617265af44383c5f75952addb19a9694e
Author: Paul Mangan <paul@claws-mail.org>
Date:   Sun, 20 Jul 2008 07:32:37 +0000

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'

Diffstat:
MChangeLog | 9+++++++++
MPATCHSETS | 1+
Mconfigure.ac | 2+-
Msrc/addrgather.c | 67+++----------------------------------------------------------------
Msrc/mainwindow.c | 8+++++++-
Msrc/mainwindow.h | 3++-
6 files changed, 23 insertions(+), 67 deletions(-)

diff --git 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 diff --git a/PATCHSETS b/PATCHSETS @@ -3438,3 +3438,4 @@ ( 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 diff --git a/configure.ac b/configure.ac @@ -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= diff --git a/src/addrgather.c b/src/addrgather.c @@ -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 @@ -256,59 +255,6 @@ static void addrgather_dlg_cancel( GtkWidget *widget, gpointer data ) { } /* - * 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. * pageLbl Page label. @@ -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(); diff --git a/src/mainwindow.c b/src/mainwindow.c @@ -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}, diff --git a/src/mainwindow.h b/src/mainwindow.h @@ -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