guint action,
GtkWidget *widget );
+static void addr_gather_msg_cb ( MainWindow *mainwin,
+ guint action,
+ GtkWidget *widget );
+
#define SEPARATE_ACTION 667
static GtkItemFactoryEntry mainwin_entries[] =
{N_("/_View/Th_read view"), "<control>T", thread_cb, 0, "<ToggleItem>"},
{N_("/_View/_Hide read messages"), NULL, hide_read_messages, 0, "<ToggleItem>"},
{N_("/_View/Set display _item..."), NULL, set_display_item_cb, 0, NULL},
+
+ {N_("/_View/---"), NULL, NULL, 0, "<Separator>"},
+ {N_("/_View/_Go to"), NULL, NULL, 0, "<Branch>"},
+ {N_("/_View/_Go to/_Prev message"), "P", prev_cb, 0, NULL},
+ {N_("/_View/_Go to/_Next message"), "N", next_cb, 0, NULL},
+ {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
+ {N_("/_View/_Go to/P_rev unread message"),
+ "<shift>P", prev_unread_cb, 0, NULL},
+ {N_("/_View/_Go to/N_ext unread message"),
+ "<shift>N", next_unread_cb, 0, NULL},
+ {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
+ {N_("/_View/_Go to/Prev _marked message"),
+ NULL, prev_marked_cb, 0, NULL},
+ {N_("/_View/_Go to/Next m_arked message"),
+ NULL, next_marked_cb, 0, NULL},
+ {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
+ {N_("/_View/_Go to/Prev _labeled message"),
+ NULL, prev_labeled_cb, 0, NULL},
+ {N_("/_View/_Go to/Next la_beled message"),
+ NULL, next_labeled_cb, 0, NULL},
+ {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
+ {N_("/_View/_Go to/Other _folder..."), "G", goto_folder_cb, 0, NULL},
{N_("/_View/---"), NULL, NULL, 0, "<Separator>"},
#define CODESET_SEPARATOR \
#undef CODESET_SEPARATOR
#undef CODESET_ACTION
- {N_("/_View/---"), NULL, NULL, 0, "<Separator>"},
- {N_("/_View/_Go to"), NULL, NULL, 0, "<Branch>"},
- {N_("/_View/_Go to/_Prev message"), "P", prev_cb, 0, NULL},
- {N_("/_View/_Go to/_Next message"), "N", next_cb, 0, NULL},
- {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
- {N_("/_View/_Go to/P_rev unread message"),
- "<shift>P", prev_unread_cb, 0, NULL},
- {N_("/_View/_Go to/N_ext unread message"),
- "<shift>N", next_unread_cb, 0, NULL},
- {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
- {N_("/_View/_Go to/Prev _marked message"),
- NULL, prev_marked_cb, 0, NULL},
- {N_("/_View/_Go to/Next m_arked message"),
- NULL, next_marked_cb, 0, NULL},
- {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
- {N_("/_View/_Go to/Prev _labeled message"),
- NULL, prev_labeled_cb, 0, NULL},
- {N_("/_View/_Go to/Next la_beled message"),
- NULL, next_labeled_cb, 0, NULL},
- {N_("/_View/_Go to/---"), NULL, NULL, 0, "<Separator>"},
- {N_("/_View/_Go to/Other _folder..."), "G", goto_folder_cb, 0, NULL},
{N_("/_View/---"), NULL, NULL, 0, "<Separator>"},
{N_("/_View/Open in new _window"), "<control><alt>N", open_msg_cb, 0, NULL},
{N_("/_View/Mess_age source"), "<control>U", view_source_cb, 0, NULL},
{N_("/_Tools/_Address book..."), "<shift><control>A", addressbook_open_cb, 0, NULL},
{N_("/_Tools/Add sender to address boo_k"),
NULL, add_address_cb, 0, NULL},
- {N_("/_Tools/_Gather addresses..."), NULL, addr_gather_cb, 0, NULL},
+ {N_("/_Tools/_Gather addresses"), NULL, NULL, 0, "<Branch>"},
+ {N_("/_Tools/_Gather addresses/from _Folder..."), NULL, addr_gather_cb, 0, NULL},
+ {N_("/_Tools/_Gather addresses/from _Messages..."), NULL, addr_gather_msg_cb, 0, NULL},
{N_("/_Tools/---"), NULL, NULL, 0, "<Separator>"},
{N_("/_Tools/_Filter messages"), NULL, filter_cb, 0, NULL},
{N_("/_Tools/_Create filter rule"), NULL, NULL, 0, "<Branch>"},
{"/Tools/Selective download..." , M_HAVE_ACCOUNT|M_UNLOCKED},
{"/Tools/Add sender to address book", M_SINGLE_TARGET_EXIST},
- {"/Tools/Gather addresses..." , M_SINGLE_TARGET_EXIST|M_UNLOCKED},
+ {"/Tools/Gather addresses" , M_TARGET_EXIST|M_UNLOCKED},
{"/Tools/Filter messages" , M_MSG_EXIST|M_EXEC|M_UNLOCKED},
{"/Tools/Create filter rule" , M_SINGLE_TARGET_EXIST|M_UNLOCKED},
{"/Tools/Execute" , M_MSG_EXIST|M_EXEC|M_UNLOCKED},
}
}
+/*
+ * Gather addresses for selected folder.
+ */
static void addr_gather_cb( MainWindow *mainwin,
guint action,
GtkWidget *widget )
{
- addressbook_gather( mainwin->summaryview->folder_item );
+ addressbook_gather( mainwin->summaryview->folder_item, NULL );
+}
+
+/*
+ * Gather addresses for selected messages in summary view.
+ */
+static void addr_gather_msg_cb( MainWindow *mainwin,
+ guint action,
+ GtkWidget *widget )
+{
+ summary_gather_address( mainwin->summaryview );
}
/*