diff options
author | Jeffrey Stedfast <fejj@ximian.com> | 2002-02-20 11:51:20 +0800 |
---|---|---|
committer | Jeffrey Stedfast <fejj@src.gnome.org> | 2002-02-20 11:51:20 +0800 |
commit | cf945fcde2d0ee22a0d63e8ba73f7f198eeeb549 (patch) | |
tree | 5d994601dbf63d28b237f999578a077fb2ad0756 /mail/message-list.c | |
parent | 7f2dde8abdfe9db2726d4ed1302879640208ce03 (diff) | |
download | gsoc2013-evolution-cf945fcde2d0ee22a0d63e8ba73f7f198eeeb549.tar.gz gsoc2013-evolution-cf945fcde2d0ee22a0d63e8ba73f7f198eeeb549.tar.zst gsoc2013-evolution-cf945fcde2d0ee22a0d63e8ba73f7f198eeeb549.zip |
Prompt the user to find out if he/she wants to go to the next folder with
2002-02-19 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (confirm_goto_next_folder): Prompt the user to
find out if he/she wants to go to the next folder with unread mail
in it.
(find_current_folder): Find a given CamelFolderInfo node based on
a given uri.
(find_next_folder_r): Recursively look for a CamelFOlderInfo node
which has unread messages.
(find_next_folder): Given a currently selected CamelFolderInfo
node, look for the next node containing unread messages.
(do_evil_kludgy_goto_next_folder_hack): Find the currently
selected folder and then find the very next folder after it that
contains unread messages and then select it via a CORBA call to
the shell.
(next_unread_msg): If we fail to find an unread message in the
message-list, prompt the user to find out if we should jump to the
next fodler containing unread messages. If so, call
do_evil_kludgy_goto_next_folder_hack().
* message-list.c (message_list_select): Return a boolean value
based on whether the call was successfull or not.
* mail-config.c (mail_config_get_confirm_goto_next_folder):
(mail_config_set_confirm_goto_next_folder):
(mail_config_get_goto_next_folder):
(mail_config_set_goto_next_folder): All new functions, yay.
(config_read): Read in the confirm_goto_next_folder and
goto_next_folder config options.
(mail_config_write_on_exit): Same the options here.
svn path=/trunk/; revision=15770
Diffstat (limited to 'mail/message-list.c')
-rw-r--r-- | mail/message-list.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/mail/message-list.c b/mail/message-list.c index f2dfcf1918..030791faa8 100644 --- a/mail/message-list.c +++ b/mail/message-list.c @@ -403,8 +403,10 @@ search_func (ETreeModel *model, ETreePath path, struct search_func_data *data) * message, or %MESSAGE_LIST_SELECT_PREVIOUS if it should find the * previous. If no suitable row is found, the selection will be * unchanged. + * + * Returns %TRUE if a new message has been selected or %FALSE otherwise. **/ -void +gboolean message_list_select (MessageList *message_list, MessageListSelectDirection direction, guint32 flags, @@ -413,23 +415,23 @@ message_list_select (MessageList *message_list, { struct search_func_data data; ETreeFindNextParams params = 0; - + if (!GTK_WIDGET_HAS_FOCUS (message_list)) gtk_widget_grab_focus (GTK_WIDGET (message_list)); - + data.message_list = message_list; data.flags = flags; data.mask = mask; - + if (direction == MESSAGE_LIST_SELECT_NEXT) params |= E_TREE_FIND_NEXT_FORWARD; else params |= E_TREE_FIND_NEXT_BACKWARD; - + if (wraparound) params |= E_TREE_FIND_NEXT_WRAP; - - e_tree_find_next (message_list->tree, params, (ETreePathFunc) search_func, &data); + + return e_tree_find_next (message_list->tree, params, (ETreePathFunc) search_func, &data); } |