From: Paul Mangan Date: Sat, 13 Mar 2004 09:31:16 +0000 (+0000) Subject: sync with 0.9.10cvs5 X-Git-Tag: rel_0_9_11~80 X-Git-Url: http://git.claws-mail.org/?p=claws.git;a=commitdiff_plain;h=4312b7943cb0fd7331e3748bcbeeb8f1868a6d44 sync with 0.9.10cvs5 --- diff --git a/ChangeLog b/ChangeLog index 9a30a26f7..bebfb2365 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,39 @@ +2004-03-12 + + * src/mainwindow.c + src/summaryview.[ch]: added a function to filter selected + messages. + +2004-03-12 + + * src/filter.[ch] + src/prefs_filter.c: rewrote the filtering system (the UI is not + implemented yet). + +2004-03-09 + + * src/filter.c: fixed the matching algorithm of "not contain" flag + (also match if a header not exist, and handle same multiple + headers). + * src/imageview.c: get_resized_size(): fixed a typo that caused + resizing problem. + +2004-03-02 + + * src/folder.c + src/mh.c: only update FolderItem::last_num when removing the last + number of message in MH folders, and don't scan in other case + (fixes wrong message count on moving). + +2004-03-02 + + * src/folderview.c + src/summaryview.c: always move messages by default when using DnD + (except for News folder). Copy messages if Ctrl-key is pressed. + * src/mainwindow.c: main_window_empty_trash() + src/summaryview.c: summary_execute(): added missing + statusbar_pop_all(). + 2004-02-29 * version 0.9.10 @@ -14,8 +50,8 @@ * src/inc.c: code cleanup. * src/mainwindow.[ch]: added main_window_get() and main_window_toggle_online_if_offline(). - * src/prefs_common.c: prefs_common_read_config(): fixed a bug that made - it offline mode on first execution. + * src/prefs_common.c: prefs_common_read_config(): fixed a bug that + made it offline mode on first execution. 2004-02-25 diff --git a/ChangeLog.claws b/ChangeLog.claws index f92699ccb..98489c47a 100644 --- a/ChangeLog.claws +++ b/ChangeLog.claws @@ -1,3 +1,12 @@ +2004-03-13 [paul] 0.9.10claws10 + + * sync with 0.9.10cvs5 + see ChangeLog 2004-03-02 and 2004-03-12, + specifically: + 'always move messages by default when using DnD (except + for News folder). Copy messages if Ctrl-key is pressed.' + and 'added a function to filter selected messages' + 2004-03-12 [christoph] 0.9.10claws9 * src/codeconv.c diff --git a/ChangeLog.jp b/ChangeLog.jp index 6d8e29f95..0b51f4ea5 100644 --- a/ChangeLog.jp +++ b/ChangeLog.jp @@ -1,3 +1,38 @@ +2004-03-12 + + * src/mainwindow.c + src/summaryview.[ch]: ÁªÂòÃæ¤Î¥á¥Ã¥»¡¼¥¸¤ò¿¶¤êʬ¤±¤ëµ¡Ç½¤òÄɲᣠ+ +2004-03-12 + + * src/filter.[ch] + src/prefs_filter.c: ¥Õ¥£¥ë¥¿¥·¥¹¥Æ¥à¤òºÆ¼ÂÁõ(UI ¤Ï̤¼ÂÁõ)¡£ + +2004-03-09 + + * src/filter.c: ¡Ö´Þ¤Þ¤Ê¤¤¡×¥Õ¥é¥°¤Î¥Þ¥Ã¥Á¥ó¥°¥¢¥ë¥´¥ê¥º¥à¤ò½¤Àµ + (¥Ø¥Ã¥À¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Ç¤â¥Þ¥Ã¥Á¤·¡¢Ê£¿ô¤ÎƱ°ì¥Ø¥Ã¥À¤òÀµ¤·¤¯°·¤¦ + ¤è¤¦¤Ë¤·¤¿)¡£ + * src/imageview.c: get_resized_size(): ¥ê¥µ¥¤¥º¤ÎÌäÂê¤òµ¯¤³¤·¤Æ¤¤¤¿ + typo ¤ò½¤Àµ¡£ + +2004-03-02 + + * src/folder.c + src/mh.c: MH ¥Õ¥©¥ë¥À¤ÎºÇ¸å¤ÎÈÖ¹æ¤Î¥á¥Ã¥»¡¼¥¸¤òºï½ü¤·¤¿¤È¤­ + FolderItem::last_num ¤Î¤ß¤ò¹¹¿·¤·¡¢¤½¤Î¾¤Î¾ì¹ç¤Ï¥¹¥­¥ã¥ó¤·¤Ê¤¤ + ¤è¤¦¤Ë¤·¤¿(°ÜÆ°»þ¤Ë¥á¥Ã¥»¡¼¥¸¿ô¤Î·×»»¤ò¸í¤ë¥Ð¥°¤ò½¤Àµ)¡£ + +2004-03-02 + + * src/folderview.c + src/summaryview.c: DnD »ÈÍÑ»þ¤Ï¾ï¤Ë¥Ç¥Õ¥©¥ë¥È¤Ç¥á¥Ã¥»¡¼¥¸¤ò°ÜÆ°¤¹¤ë + ¤è¤¦¤Ë¤·¤¿(¥Ë¥å¡¼¥¹¥Õ¥©¥ë¥À¤ò½ü¤¯)¡£ Ctrl ¥­¡¼¤¬²¡¤µ¤ì¤¿¾ì¹ç¤Ï + ¥á¥Ã¥»¡¼¥¸¤ò¥³¥Ô¡¼¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£ + * src/mainwindow.c: main_window_empty_trash() + src/summaryview.c: summary_execute(): ÉÔ­¤·¤Æ¤¤¤¿ + statusbar_pop_all() ¤òÄɲᣠ+ 2004-02-29 * version 0.9.10 @@ -9,13 +44,14 @@ 2004-02-26 * src/account.c - src/folderview.c: IMAP4 ¥¢¥«¥¦¥ó¥È¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤È¤­¤Ï¥ª¥ó¥é¥¤¥ó¥â¡¼¥É¤Ë - ÀÚ¤êÂؤ¨¤ë¤è¤¦¤Ë¤·¤¿¡£¤½¤Î¸å¥¹¥Æ¡¼¥¿¥¹¥Ð¡¼¤ò pop ¤¹¤ë¤è¤¦¤Ë¤·¤¿¡£ + src/folderview.c: IMAP4 ¥¢¥«¥¦¥ó¥È¤ò¥Á¥§¥Ã¥¯¤¹¤ë¤È¤­¤Ï¥ª¥ó¥é¥¤¥ó + ¥â¡¼¥É¤ËÀÚ¤êÂؤ¨¤ë¤è¤¦¤Ë¤·¤¿¡£¤½¤Î¸å¥¹¥Æ¡¼¥¿¥¹¥Ð¡¼¤ò pop ¤¹¤ë¤è¤¦¤Ë + ¤·¤¿¡£ * src/inc.c: ¥³¡¼¥É¤ÎÀ°Íý¡£ * src/mainwindow.[ch]: main_window_get() ¤È main_window_toggle_online_if_offline() ¤òÄɲᣠ- * src/prefs_common.c: prefs_common_read_config(): ½é²óµ¯Æ°»þ¤Ë¥ª¥Õ¥é¥¤¥ó - ¥â¡¼¥É¤Ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ¡£ + * src/prefs_common.c: prefs_common_read_config(): ½é²óµ¯Æ°»þ¤Ë + ¥ª¥Õ¥é¥¤¥ó¥â¡¼¥É¤Ë¤·¤Æ¤·¤Þ¤Ã¤Æ¤¤¤¿¥Ð¥°¤ò½¤Àµ¡£ 2004-02-25 diff --git a/configure.ac b/configure.ac index 18fc49a6a..a5f8e1537 100644 --- a/configure.ac +++ b/configure.ac @@ -11,7 +11,7 @@ MINOR_VERSION=9 MICRO_VERSION=10 INTERFACE_AGE=0 BINARY_AGE=0 -EXTRA_VERSION=9 +EXTRA_VERSION=10 if test $EXTRA_VERSION -eq 0; then VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}claws else diff --git a/src/folderview.c b/src/folderview.c index f556f1d1a..5a2b5e6ea 100644 --- a/src/folderview.c +++ b/src/folderview.c @@ -2837,9 +2837,7 @@ static void folderview_drag_received_cb(GtkWidget *widget, case GDK_ACTION_MOVE: case GDK_ACTION_DEFAULT: default: - if (FOLDER_TYPE(src_item->folder) != FOLDER_TYPE(item->folder) || - (FOLDER_TYPE(item->folder) == F_IMAP && - src_item->folder != item->folder)) + if (FOLDER_TYPE(src_item->folder) == F_NEWS) summary_copy_selected_to(folderview->summaryview, item); else summary_move_selected_to(folderview->summaryview, item); diff --git a/src/mainwindow.c b/src/mainwindow.c index be4154026..8985d6056 100644 --- a/src/mainwindow.c +++ b/src/mainwindow.c @@ -678,7 +678,10 @@ static GtkItemFactoryEntry mainwin_entries[] = {N_("/_Tools/_Harvest addresses/from _Messages..."), NULL, addr_harvest_msg_cb, 0, NULL}, {N_("/_Tools/---"), NULL, NULL, 0, ""}, - {N_("/_Tools/_Filter messages"), NULL, filter_cb, 0, NULL}, + {N_("/_Tools/_Filter all messages in folder"), + NULL, filter_cb, 0, NULL}, + {N_("/_Tools/Filter _selected messages"), + NULL, filter_cb, 1, NULL}, {N_("/_Tools/_Create filter rule"), NULL, NULL, 0, ""}, {N_("/_Tools/_Create filter rule/_Automatically"), NULL, create_filter_cb, FILTER_BY_AUTO, NULL}, @@ -1744,13 +1747,14 @@ void main_window_set_menu_sensitive(MainWindow *mainwin) {"/Message/Cancel a news message" , M_TARGET_EXIST|M_ALLOW_DELETE|M_UNLOCKED|M_NEWS}, {"/Message/Mark" , M_TARGET_EXIST}, - {"/Tools/Add sender to address book", M_SINGLE_TARGET_EXIST}, - {"/Tools/Harvest addresses" , M_UNLOCKED}, - {"/Tools/Filter messages" , M_MSG_EXIST|M_EXEC|M_UNLOCKED}, - {"/Tools/Create filter rule" , M_SINGLE_TARGET_EXIST|M_UNLOCKED}, - {"/Tools/Actions" , M_TARGET_EXIST|M_UNLOCKED}, - {"/Tools/Execute" , M_DELAY_EXEC}, - {"/Tools/Delete duplicated messages", M_MSG_EXIST|M_ALLOW_DELETE|M_UNLOCKED}, + {"/Tools/Add sender to address book" , M_SINGLE_TARGET_EXIST}, + {"/Tools/Harvest addresses" , M_UNLOCKED}, + {"/Tools/Filter all messages in folder", M_MSG_EXIST|M_EXEC|M_UNLOCKED}, + {"/Tools/Filter selected messages" , M_TARGET_EXIST|M_EXEC|M_UNLOCKED}, + {"/Tools/Create filter rule" , M_SINGLE_TARGET_EXIST|M_UNLOCKED}, + {"/Tools/Actions" , M_TARGET_EXIST|M_UNLOCKED}, + {"/Tools/Execute" , M_DELAY_EXEC}, + {"/Tools/Delete duplicated messages" , M_MSG_EXIST|M_ALLOW_DELETE|M_UNLOCKED}, {"/Configuration", M_UNLOCKED}, @@ -2723,7 +2727,7 @@ static void delete_duplicated_cb(MainWindow *mainwin, guint action, static void filter_cb(MainWindow *mainwin, guint action, GtkWidget *widget) { - summary_filter(mainwin->summaryview); + summary_filter(mainwin->summaryview, (gboolean)action); } static void execute_summary_cb(MainWindow *mainwin, guint action, diff --git a/src/summaryview.c b/src/summaryview.c index c63e67be0..715a83190 100644 --- a/src/summaryview.c +++ b/src/summaryview.c @@ -1,6 +1,6 @@ /* * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999-2003 Hiroyuki Yamamoto + * Copyright (C) 1999-2004 Hiroyuki Yamamoto * * 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 @@ -3914,7 +3914,7 @@ void summary_collapse_threads(SummaryView *summaryview) gtk_ctree_node_moveto(ctree, summaryview->selected, -1, 0.5, 0); } -void summary_filter(SummaryView *summaryview) +void summary_filter(SummaryView *summaryview, gboolean selected_only) { if (!filtering_rules) { alertpanel_error(_("No filter rules defined.")); @@ -3946,10 +3946,20 @@ void summary_filter(SummaryView *summaryview) summary_status_show(summaryview); } else { - gtk_ctree_pre_recursive(GTK_CTREE(summaryview->ctree), NULL, - GTK_CTREE_FUNC(summary_filter_func), - summaryview); - + if (selected_only) { + GList *cur; + + for (cur = GTK_CLIST(summaryview->ctree)->selection; + cur != NULL; cur = cur->next) { + summary_filter_func(GTK_CTREE(summaryview->ctree), + GTK_CTREE_NODE(cur->data), + summaryview); + } + } else { + gtk_ctree_pre_recursive(GTK_CTREE(summaryview->ctree), NULL, + GTK_CTREE_FUNC(summary_filter_func), + summaryview); + } gtk_clist_thaw(GTK_CLIST(summaryview->ctree)); } diff --git a/src/summaryview.h b/src/summaryview.h index a2ff08af7..e9b6832d9 100644 --- a/src/summaryview.h +++ b/src/summaryview.h @@ -1,6 +1,6 @@ /* * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999-2003 Hiroyuki Yamamoto + * Copyright (C) 1999-2004 Hiroyuki Yamamoto * * 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 @@ -204,7 +204,8 @@ void summary_expand_threads (SummaryView *summaryview); void summary_collapse_threads (SummaryView *summaryview); void summary_toggle_ignore_thread (SummaryView *summaryview); -void summary_filter (SummaryView *summaryview); +void summary_filter (SummaryView *summaryview, + gboolean selected_only); void summary_filter_open (SummaryView *summaryview, PrefsFilterType type, gint processing_rule);