From 032df17d2c5de60b50d1419e2696b62785dae88c Mon Sep 17 00:00:00 2001
From: Jeffrey Stedfast <fejj@helixcode.com>
Date: Mon, 25 Sep 2000 23:20:34 +0000
Subject: Added new menu items

2000-09-25  Jeffrey Stedfast  <fejj@helixcode.com>

	* folder-browser-factory.c: Added new menu items

	* mail-callbacks.c (mark_as_seen): New callback to mark all
	selected messages as Seen.
	(mark_as_unseen): New callback to mark all selected messages as
	Unseen.
	(select_all): New callback to select all messages (not yet
	finished)
	(unselect_all): New callback to unselect all messages (not yet
	finished)

svn path=/trunk/; revision=5585
---
 mail/mail-callbacks.c | 48 ++++++++++++++++++++++++++++++++++++++++--------
 1 file changed, 40 insertions(+), 8 deletions(-)

(limited to 'mail/mail-callbacks.c')

diff --git a/mail/mail-callbacks.c b/mail/mail-callbacks.c
index c0aca477ec..c251f73ac2 100644
--- a/mail/mail-callbacks.c
+++ b/mail/mail-callbacks.c
@@ -524,31 +524,63 @@ copy_msg (GtkWidget *widget, gpointer user_data)
 }
 
 void
-mark_all_seen (BonoboUIHandler *uih, void *user_data, const char *path)
+select_all (BonoboUIHandler *uih, void *user_data, const char *path)
 {
-        FolderBrowser *fb = FOLDER_BROWSER(user_data);
+	FolderBrowser *fb = FOLDER_BROWSER (user_data);
         MessageList *ml = fb->message_list;
 	
 	if (ml->folder == NULL)
 		return;
 	
-	mail_do_flag_all_messages (ml->folder, FALSE,
-				   CAMEL_MESSAGE_SEEN, CAMEL_MESSAGE_SEEN);
+	message_list_select (ml, -1, MESSAGE_LIST_SELECT_NEXT, 0, 0);
+	/* FIXME: when clahey codes select all for e-table, finish this */
+	/* e_table_select_all (); */
 }
 
 void
-mark_all_deleted (BonoboUIHandler *uih, void *user_data, const char *path)
+unselect_all (BonoboUIHandler *uih, void *user_data, const char *path)
 {
 	FolderBrowser *fb = FOLDER_BROWSER (user_data);
-	MessageList *ml = fb->message_list;
+        MessageList *ml = fb->message_list;
 	
 	if (ml->folder == NULL)
 		return;
 	
-	mail_do_flag_all_messages (ml->folder, FALSE,
-				   CAMEL_MESSAGE_DELETED, CAMEL_MESSAGE_DELETED);
+	/* FIXME: when clahey codes select all for e-table, finish this */
+	/* e_table_unselect_all (); */
 }
 
+void
+mark_as_seen (BonoboUIHandler *uih, void *user_data, const char *path)
+{
+        FolderBrowser *fb = FOLDER_BROWSER(user_data);
+        MessageList *ml = fb->message_list;
+	GPtrArray *uids;
+	
+	if (ml->folder == NULL)
+		return;
+	
+	uids = g_ptr_array_new ();
+	message_list_foreach (ml, enumerate_msg, uids);
+	mail_do_flag_messages (ml->folder, uids, FALSE,
+			       CAMEL_MESSAGE_SEEN, CAMEL_MESSAGE_SEEN);
+}
+
+void
+mark_as_unseen (BonoboUIHandler *uih, void *user_data, const char *path)
+{
+        FolderBrowser *fb = FOLDER_BROWSER(user_data);
+        MessageList *ml = fb->message_list;
+	GPtrArray *uids;
+	
+	if (ml->folder == NULL)
+		return;
+	
+	uids = g_ptr_array_new ();
+	message_list_foreach (ml, enumerate_msg, uids);
+	mail_do_flag_messages (ml->folder, uids, FALSE,
+			       CAMEL_MESSAGE_SEEN, 0);
+}
 				   
 void
 edit_msg (GtkWidget *widget, gpointer user_data)
-- 
cgit