[evolution-patches] [addressbook][ui] Folder Menu for addressbook



Hi,

Added context sensitive folder menu for addressbook.
So now all the folder operations (new, delete, copy, move, save etc.)
can also be invoked from the folder menu.

Thanks
Devashish Sharma
Index: ui/ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/ui/ChangeLog,v
retrieving revision 1.438
diff -u -p -r1.438 ChangeLog
--- ui/ChangeLog	7 Dec 2005 08:30:00 -0000	1.438
+++ ui/ChangeLog	12 Dec 2005 14:10:07 -0000
@@ -1,3 +1,8 @@
+2005-12-12  Devashish Sharma <sdevashish novell com>
+
+	* evolution-addressbook.xml : Added folder menu to addressbook and
+	corresponding menu items.
+
 2005-12-07  Parthasarathi Susarla <sparthasarathi novell com>
 	
 	* evolution-message-composer.xml: Add menu item for prioritising
Index: ui/evolution-addressbook.xml
===================================================================
RCS file: /cvs/gnome/evolution/ui/evolution-addressbook.xml,v
retrieving revision 1.70
diff -u -p -r1.70 evolution-addressbook.xml
--- ui/evolution-addressbook.xml	6 Oct 2005 18:21:50 -0000	1.70
+++ ui/evolution-addressbook.xml	12 Dec 2005 13:58:00 -0000
@@ -63,6 +63,31 @@
 	 _tip="Show contact preview window"
 	 accel="*Control**Alt*v"
 	 type="toggle"/>
+ 
+    <cmd name="FolderCreate" _label="_New"
+         _tip="Create a new addressbook folder"
+	 accel="*Control**Shift*f"
+	 pixtype="pixbuf"/>
+
+    <cmd name="FolderCopy" _label="_Copy Folder Contacts To"
+	 _tip="Copy the contacts of the selected folder into another folder" 
+	 pixtype="pixbuf"/>  
+ 
+    <cmd name="FolderMove" _label="_Move Folder Contacts To"
+	 _tip="Move the contacts of the selected folder into another folder" 
+	 pixtype="pixbuf"/>  
+    <cmd name="FolderSave" _label="_Save Folder Contacts As VCard"
+	 _tip="Save the contacts of the selected folder as VCard"
+	 pixtype="pixbuf"/>   
+    <cmd name="FolderDelete" _label="_Delete"
+	 _tip="Delete the selected folder"
+	 pixtype="pixbuf"/>   
+    <cmd name="FolderRename" _label="_Rename"
+	 _tip="Rename the selected folder"
+	 pixtype="pixbuf"/>   
+    <cmd name="ChangeFolderProperties" _label="_Properties"
+	 _tip="Change the properties of the selected folder"
+	 pixtype="pixbuf"/>   
   </commands>
 
   <menu>
@@ -105,8 +130,32 @@
       </placeholder>
     </submenu>
 
+    <placeholder name="FolderPlaceholder">
+      <submenu name="Folder" _label="F_older">
+        <menuitem name="FolderCreate" verb="" _label="_New..." pixtype="pixbuf"/>
+	
+	<separator f="" name="Folder1"/>
+	
+	<menuitem name="FolderCopy" verb="" _label="_Copy Contacts To..." pixtype="pixbuf"/>
+
+	<menuitem name="FolderMove" verb="" _label="_Move Contacts To..." pixtype="pixbuf"/>
+	
+	<menuitem name="FolderSave" verb="" _label="_Save Contacts As VCard" pixtype="pixbuf"/>
+	
+	<separator f="" name="Folder2"/>
+
+	<menuitem name="FolderDelete" verb="" _label="_Delete" pixtype="stock" pixname="gtk-delete"/>
+
+	<menuitem name="FolderRename" verb="" _label="_Rename" pixtype="pixbuf"/>
+
+	<separator f="" name="Folder4"/>
+
+	<menuitem name="ChangeFolderProperties" verb="" _label="_Properties" pixtype="pixbuf"/>
+      </submenu>
+    </placeholder>      
+
     <placeholder name="ActionsPlaceholder">
-    <submenu name="Actions" _label="_Actions">
+      <submenu name="Actions" _label="_Actions">
 	<menuitem name="ContactsSendContactToOther"
 		  _label="_Forward Contact..." verb=""/>
 
@@ -118,7 +167,7 @@
 
 	<menuitem name="ContactsCopyToFolder" _label="_Copy to Folder..." verb=""/>
 	<menuitem name="ContactsMoveToFolder" _label="_Move to Folder..." verb=""/>
-    </submenu>
+      </submenu>
     </placeholder>
 
   </menu>
Index: addressbook/ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/ChangeLog,v
retrieving revision 1.2016
diff -u -p -r1.2016 ChangeLog
--- addressbook/ChangeLog	10 Dec 2005 09:52:22 -0000	1.2016
+++ addressbook/ChangeLog	12 Dec 2005 14:06:58 -0000
@@ -1,3 +1,10 @@
+2005-12-12  Devashish Sharma <sdevashish novell com>
+
+	* gui/component/addressbook-view.c : 
+	* gui/widgets/e-addressbook-view.[ch] :
+	Added functions for handling callbacks from the folder menu items and
+	modified some existing functions.
+
 2005-12-10  Sushma Rai  <rsushma novell com>
 
 	* gui/contact-editor/e-contact-editor.c (fill_in_address_textview):
Index: addressbook/gui/component/addressbook-view.c
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/gui/component/addressbook-view.c,v
retrieving revision 1.39
diff -u -p -r1.39 addressbook-view.c
--- addressbook/gui/component/addressbook-view.c	28 Sep 2005 10:55:41 -0000	1.39
+++ addressbook/gui/component/addressbook-view.c	12 Dec 2005 13:49:26 -0000
@@ -43,6 +43,7 @@
 #include <libedataserverui/e-passwords.h>
 
 #include "e-util/e-error.h"
+#include "e-util/e-request.h"
 #include "misc/e-task-bar.h"
 #include "misc/e-info-label.h"
 
@@ -150,12 +151,22 @@ get_current_view (AddressbookView *view)
 }
 
 static void
+save_all_contacts_cb (BonoboUIComponent *uih, void *user_data, const char *path)
+{
+	AddressbookView *view = (AddressbookView *) user_data;
+	EABView *v = get_current_view (view);
+	
+	if (v)
+		eab_view_save_as (v, TRUE);
+}
+	
+static void
 save_contact_cb (BonoboUIComponent *uih, void *user_data, const char *path)
 {
 	AddressbookView *view = (AddressbookView *) user_data;
 	EABView *v = get_current_view (view);
 	if (v)
-		eab_view_save_as(v);
+		eab_view_save_as(v, FALSE);
 }
 
 static void
@@ -267,12 +278,31 @@ send_contact_to_cb (BonoboUIComponent *u
 }
 
 static void
+copy_all_contacts_to_cb (BonoboUIComponent *uih, void *user_data, const char *path)
+{
+	AddressbookView *view = (AddressbookView *) user_data;
+	EABView *v = get_current_view (view);
+
+       	if (v) 
+		eab_view_copy_to_folder (v, TRUE);
+}
+
+static void
 copy_contact_to_cb (BonoboUIComponent *uih, void *user_data, const char *path)
 {
 	AddressbookView *view = (AddressbookView *) user_data;
 	EABView *v = get_current_view (view);
 	if (v)
-		eab_view_copy_to_folder (v);
+		eab_view_copy_to_folder (v, FALSE);
+}
+
+static void
+move_all_contacts_to_cb (BonoboUIComponent *uih, void *user_data, const char *path)
+{
+	AddressbookView *view = (AddressbookView *) user_data;
+	EABView *v = get_current_view (view);
+	if (v) 
+		eab_view_move_to_folder (v, TRUE);
 }
 
 static void
@@ -281,7 +311,7 @@ move_contact_to_cb (BonoboUIComponent *u
 	AddressbookView *view = (AddressbookView *) user_data;
 	EABView *v = get_current_view (view);
 	if (v)
-		eab_view_move_to_folder (v);
+		eab_view_move_to_folder (v, FALSE);
 }
 
 static void
@@ -291,6 +321,174 @@ forget_passwords_cb (BonoboUIComponent *
 }
 
 static void
+new_addressbook_folder (AddressbookView *view)
+{
+	AddressbookViewPrivate *priv = view->priv;
+	addressbook_config_create_new_source (gtk_widget_get_toplevel(priv->notebook));
+}
+
+static void
+new_folder_cb (BonoboUIComponent *uih, void *user_data, const char *path)
+{
+	AddressbookView *view = (AddressbookView *) user_data;
+	new_addressbook_folder (view);
+}
+
+static void
+delete_addressbook_folder (AddressbookView *view)
+{
+	AddressbookViewPrivate *priv = view->priv;
+	ESource *selected_source;
+	EBook  *book;
+	GError *error = NULL;
+	GtkWindow *toplevel;
+
+	selected_source = e_source_selector_peek_primary_selection (E_SOURCE_SELECTOR (priv->selector));
+	if (!selected_source) 
+		return;
+	toplevel = (GtkWindow *) gtk_widget_get_toplevel (priv->notebook);
+
+	if (e_error_run (toplevel, "addressbook:ask-delete-addressbook", 
+			e_source_peek_name(selected_source)) != GTK_RESPONSE_YES)
+	return;
+
+	/* Remove local data */
+	book = e_book_new (selected_source, &error);
+	if (book) {
+		if (e_book_remove (book, NULL)) {
+			if (e_source_selector_source_is_selected (E_SOURCE_SELECTOR (priv->selector),
+								  selected_source))
+				e_source_selector_unselect_source (E_SOURCE_SELECTOR (priv->selector),
+								   selected_source);
+		
+			e_source_group_remove_source (e_source_peek_group (selected_source), selected_source);
+			
+			e_source_list_sync (priv->source_list, NULL);
+		}
+		else {
+			e_error_run (toplevel, "addressbook:remove-addressbook", NULL);
+		}
+	g_object_unref (book);
+	}
+	else {
+		g_warning ("error removing addressbook : %s", error->message);
+		g_error_free (error);
+	}
+}
+
+static void
+delete_folder_cb (BonoboUIComponent *uih, void *user_data, const char *path)
+{
+	AddressbookView *view = (AddressbookView *) user_data;
+	if (view)
+		delete_addressbook_folder (view);
+
+}
+
+static void
+edit_addressbook_folder (AddressbookView *view)
+{
+	AddressbookViewPrivate *priv = view->priv;
+	ESource *selected_source;
+	const char *uid;
+	EditorUidClosure *closure;
+
+	selected_source = e_source_selector_peek_primary_selection (E_SOURCE_SELECTOR (priv->selector));
+	if (!selected_source)
+		return;
+
+	uid = e_source_peek_uid (selected_source);
+
+	closure = g_hash_table_lookup (priv->uid_to_editor, uid);
+	if (!closure) {
+		char *uid_copy = g_strdup (uid);
+
+		closure = g_new (EditorUidClosure, 1);
+		closure->editor = addressbook_config_edit_source (gtk_widget_get_toplevel(priv->notebook), selected_source);
+		closure->uid = uid_copy;
+		closure->view = view;
+
+		g_hash_table_insert (priv->uid_to_editor,
+				     uid_copy,
+				     closure);
+
+		g_object_weak_ref (G_OBJECT (closure->editor),
+				   editor_weak_notify, closure);
+	}
+
+	gtk_window_present (GTK_WINDOW (closure->editor));
+	
+}
+
+static void
+edit_folder_cb (BonoboUIComponent *uih, void *user_data, const char *path)
+{
+	AddressbookView *view = (AddressbookView *) user_data;
+	if (view)
+		edit_addressbook_folder (view);
+
+}
+
+static void
+rename_addressbook_folder (AddressbookView *view)
+{
+	AddressbookViewPrivate *priv = view->priv;
+	ESource *source;
+	const char *old_name; 
+	char *prompt, *new_name;
+	gboolean done = FALSE;
+	
+	source = e_source_selector_peek_primary_selection (E_SOURCE_SELECTOR (priv->selector));
+	old_name = e_source_peek_name(source);
+     	prompt = g_strdup_printf (_("Rename the \"%s\" folder to:"), old_name);
+
+	while (!done) {
+		new_name = e_request_string (NULL, _("Rename Folder"), prompt, old_name);
+		if (new_name == NULL || !strcmp (old_name, new_name)) {
+			done = TRUE;
+		} else if (strchr(new_name, '/') != NULL) {
+			e_error_run (NULL,
+					"addressbook:no-rename-folder", old_name, new_name, _("Folder names cannot contain '/'"), NULL);
+			done = TRUE;
+		} else if (e_source_group_peek_source_by_name(e_source_peek_group(source), new_name)) {
+			e_error_run (NULL, "addressbook:no-rename-folder", old_name, new_name, _("A Folder with this name already exists"), NULL);
+		} else {
+			e_source_set_name (source, new_name);
+			done = TRUE;
+		}
+	}
+	g_free (new_name);
+	
+}
+
+static void
+rename_folder_cb (BonoboUIComponent *uih, void *user_data, const char *path)
+{
+	AddressbookView *view = (AddressbookView *) user_data;
+	if (view)
+		rename_addressbook_folder (view);
+}
+
+static gboolean
+folder_can_delete (AddressbookView *view)
+{
+	AddressbookViewPrivate *priv = view->priv;
+	ESource *source ;
+	const char *source_uri;
+	
+	source = e_source_selector_peek_primary_selection (E_SOURCE_SELECTOR (priv->selector));
+	if(source) {
+		source_uri = e_source_peek_relative_uri (source);
+		if (source_uri && !strcmp("system", source_uri))
+			return 0;
+		else
+			return 1;
+	}
+	else
+		return 0;
+}
+
+static void
 set_status_message (EABView *eav, const char *message, AddressbookView *view)
 {
 	AddressbookViewPrivate *priv = view->priv;
@@ -382,6 +580,8 @@ update_command_state (EABView *eav, Addr
 		SET_SENSITIVE ("/commands/ContactsMoveToFolder", eab_view_can_move_to_folder);
 		SET_SENSITIVE ("/commands/ContactsCopyToFolder", eab_view_can_copy_to_folder);
 
+		bonobo_ui_component_set_prop (uic, ("/commands/FolderDelete"), "sensitive", folder_can_delete(view) ? "1" : "0", NULL);
+
 		/* Stop */
 		SET_SENSITIVE ("/commands/ContactStop", eab_view_can_stop);
 #undef SET_SENSITIVE
@@ -411,6 +611,14 @@ static BonoboUIVerb verbs [] = {
 	BONOBO_UI_UNSAFE_VERB ("ContactsForgetPasswords", forget_passwords_cb),
 	/* ContactsViewPreview is a toggle */
 
+	BONOBO_UI_UNSAFE_VERB ("FolderCreate", new_folder_cb),
+	BONOBO_UI_UNSAFE_VERB ("FolderCopy", copy_all_contacts_to_cb),
+	BONOBO_UI_UNSAFE_VERB ("FolderMove", move_all_contacts_to_cb),
+	BONOBO_UI_UNSAFE_VERB ("FolderSave", save_all_contacts_cb),
+	BONOBO_UI_UNSAFE_VERB ("FolderDelete", delete_folder_cb),
+	BONOBO_UI_UNSAFE_VERB ("FolderRename", rename_folder_cb),
+	BONOBO_UI_UNSAFE_VERB ("ChangeFolderProperties", edit_folder_cb),
+
 	BONOBO_UI_VERB_END
 };
 
@@ -426,6 +634,11 @@ static EPixmap pixmaps [] = {
 
 	E_PIXMAP ("/Toolbar/ContactsPrint", "stock_print", E_ICON_SIZE_LARGE_TOOLBAR),
 	E_PIXMAP ("/Toolbar/ContactDelete", "stock_delete", E_ICON_SIZE_LARGE_TOOLBAR),
+	
+	E_PIXMAP ("/menu/FolderPlaceholder/Folder/FolderCopy", "stock_folder-copy", E_ICON_SIZE_MENU),
+	E_PIXMAP ("/menu/FolderPlaceholder/Folder/FolderMove", "stock_folder-move", E_ICON_SIZE_MENU),
+	E_PIXMAP ("/menu/FolderPlaceholder/Folder/ChangeFolderProperties", "stock_folder-properties", E_ICON_SIZE_MENU),
+	E_PIXMAP ("/menu/FolderPlaceholder/Folder/FolderSave", "stock_save-as", E_ICON_SIZE_MENU),
 
 	E_PIXMAP_END
 };
@@ -714,39 +927,20 @@ new_addressbook_cb(EPopup *ep, EPopupIte
 }
 
 static void
-edit_addressbook_cb(EPopup *ep, EPopupItem *pitem, void *data)
+save_addressbook_cb(EPopup *ep, EPopupItem *pitem, void *data)
 {
 	AddressbookView *view = data;
-	AddressbookViewPrivate *priv = view->priv;
-	ESource *selected_source;
-	const char *uid;
-	EditorUidClosure *closure;
-
-	selected_source =
-		e_source_selector_peek_primary_selection (E_SOURCE_SELECTOR (priv->selector));
-	if (!selected_source)
-		return;
-
-	uid = e_source_peek_uid (selected_source);
-
-	closure = g_hash_table_lookup (priv->uid_to_editor, uid);
-	if (!closure) {
-		char *uid_copy = g_strdup (uid);
-
-		closure = g_new (EditorUidClosure, 1);
-		closure->editor = addressbook_config_edit_source (gtk_widget_get_toplevel(ep->target->widget), selected_source);
-		closure->uid = uid_copy;
-		closure->view = view;
-
-		g_hash_table_insert (priv->uid_to_editor,
-				     uid_copy,
-				     closure);
-
-		g_object_weak_ref (G_OBJECT (closure->editor),
-				   editor_weak_notify, closure);
-	}
+	EABView *v = get_current_view (view);
+       	if (v) 
+		eab_view_save_as (v, TRUE);
+}
 
-	gtk_window_present (GTK_WINDOW (closure->editor));
+static void
+edit_addressbook_cb(EPopup *ep, EPopupItem *pitem, void *data)
+{
+	AddressbookView *view = data;
+	if (view)
+		edit_addressbook_folder (view);
 }
 
 /* Callbacks.  */
@@ -762,6 +956,8 @@ primary_source_selection_changed_callbac
 static EPopupItem abv_source_popups[] = {
 	{ E_POPUP_ITEM, "10.new", N_("New Address Book"), new_addressbook_cb, NULL, "stock_contact", 0, 0 },
 	{ E_POPUP_ITEM, "20.delete", N_("Delete"), delete_addressbook_cb, NULL, "stock_delete", 0, EAB_POPUP_SOURCE_USER|EAB_POPUP_SOURCE_PRIMARY },
+	{ E_POPUP_BAR,  "40.bar"},
+	{ E_POPUP_ITEM, "40.saveasvcard", N_("Save As Vcard..."), save_addressbook_cb, NULL,"stock_save-as", 0, EAB_POPUP_SOURCE_PRIMARY },
 	{ E_POPUP_BAR,  "30.bar"},
 	{ E_POPUP_ITEM, "30.properties", N_("Properties..."), edit_addressbook_cb, NULL,"stock_folder-properties", 0, EAB_POPUP_SOURCE_PRIMARY },
 };
@@ -1088,45 +1284,7 @@ static void
 source_selector_key_press_event_callback (GtkWidget *widget, GdkEventKey *event, AddressbookView *view)
 {
 	if (event->keyval == GDK_Delete) {
-		AddressbookViewPrivate *priv = view->priv;
-		ESource *selected_source;
-		EBook  *book;
-		GError *error = NULL;
-		GtkWindow *toplevel;
-
-		selected_source = e_source_selector_peek_primary_selection (E_SOURCE_SELECTOR (priv->selector));
-		if (!selected_source) 
-			return;
-
-		toplevel = (GtkWindow *) gtk_widget_get_toplevel (priv->notebook);
-
-		if (e_error_run (toplevel, "addressbook:ask-delete-addressbook", 
-				e_source_peek_name(selected_source)) != GTK_RESPONSE_YES)
-			return;
-
-		/* Remove local data */
-		book = e_book_new (selected_source, &error);
-		if (book) {
-			if (e_book_remove (book, NULL)) {
-				if (e_source_selector_source_is_selected (E_SOURCE_SELECTOR (priv->selector),
-									  selected_source))
-					e_source_selector_unselect_source (E_SOURCE_SELECTOR (priv->selector),
-									   selected_source);
-		
-				e_source_group_remove_source (e_source_peek_group (selected_source), selected_source);
-			
-				e_source_list_sync (priv->source_list, NULL);
-			}
-			else {
-				e_error_run (toplevel, "addressbook:remove-addressbook", NULL);
-			}
-
-			g_object_unref (book);
-		}
-		else {
-			g_warning ("error removing addressbook : %s", error->message);
-			g_error_free (error);
-		}
+		delete_addressbook_folder (view);		
 	}
 	return;
 }
@@ -1366,7 +1524,7 @@ activate_source (AddressbookView *view,
 
 		gtk_widget_show (uid_view);
 		gtk_widget_show (label);
-
+		
 		g_object_set (uid_view, "type", EAB_VIEW_TABLE, NULL);
 
 		gtk_notebook_append_page (GTK_NOTEBOOK (priv->notebook),
Index: addressbook/gui/widgets/e-addressbook-view.c
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/gui/widgets/e-addressbook-view.c,v
retrieving revision 1.174
diff -u -p -r1.174 e-addressbook-view.c
--- addressbook/gui/widgets/e-addressbook-view.c	26 Nov 2005 01:51:38 -0000	1.174
+++ addressbook/gui/widgets/e-addressbook-view.c	12 Dec 2005 13:55:25 -0000
@@ -900,7 +900,7 @@ copy_to_folder (EPopup *ep, EPopupItem *
 {
 	ContactAndBook *contact_and_book = data;
 
-	eab_view_copy_to_folder (contact_and_book->view);
+	eab_view_copy_to_folder (contact_and_book->view, FALSE);
 }
 
 static void
@@ -908,7 +908,7 @@ move_to_folder (EPopup *ep, EPopupItem *
 {
 	ContactAndBook *contact_and_book = data;
 
-	eab_view_move_to_folder (contact_and_book->view);
+	eab_view_move_to_folder (contact_and_book->view, FALSE);
 }
 
 static void
@@ -2030,9 +2030,23 @@ get_selected_contacts (EABView *view)
 }
 
 void
-eab_view_save_as (EABView *view)
+eab_view_save_as (EABView *view, gboolean all)
 {
-	GList *list = get_selected_contacts (view);
+	GList *list = NULL;
+	EBook *book ;
+	
+	g_object_get(view->model, 
+		     "book", &book,
+		     NULL);
+
+	if (all) {
+		EBookQuery *query = e_book_query_any_field_contains("");
+		e_book_get_contacts(book, query, &list, NULL);
+	        e_book_query_unref(query);	
+	}
+	else {
+		list = get_selected_contacts(view);
+	}
 	if (list)
 		eab_contact_list_save (_("Save as VCard..."), list, NULL);
 	e_free_object_list(list);
@@ -2113,16 +2127,24 @@ eab_view_stop(EABView *view)
 }
 
 static void
-view_transfer_contacts (EABView *view, gboolean delete_from_source)
+view_transfer_contacts (EABView *view, gboolean delete_from_source, gboolean all)
 {
 	EBook *book;
-	GList *contacts;
+	GList *contacts = NULL;
 	GtkWindow *parent_window;
 
 	g_object_get(view->model, 
 		     "book", &book,
 		     NULL);
-	contacts = get_selected_contacts (view);
+
+	if (all) {
+		EBookQuery *query = e_book_query_any_field_contains("");
+		e_book_get_contacts(book, query, &contacts, NULL);
+	        e_book_query_unref(query);	
+	}
+	else {
+		contacts = get_selected_contacts (view);
+	}
 	parent_window = GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (view)));
 
 	eab_transfer_contacts (book, contacts, delete_from_source, parent_window);
@@ -2130,15 +2152,15 @@ view_transfer_contacts (EABView *view, g
 }
 
 void
-eab_view_copy_to_folder (EABView *view)
+eab_view_copy_to_folder (EABView *view, gboolean all)
 {
-	view_transfer_contacts (view, FALSE);
+	view_transfer_contacts (view, FALSE, all);
 }
 
 void
-eab_view_move_to_folder (EABView *view)
+eab_view_move_to_folder (EABView *view, gboolean all)
 {
-	view_transfer_contacts (view, TRUE);
+	view_transfer_contacts (view, TRUE, all);
 }
 
 
Index: addressbook/gui/widgets/e-addressbook-view.h
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/gui/widgets/e-addressbook-view.h,v
retrieving revision 1.37
diff -u -p -r1.37 e-addressbook-view.h
--- addressbook/gui/widgets/e-addressbook-view.h	21 Jul 2005 13:27:36 -0000	1.37
+++ addressbook/gui/widgets/e-addressbook-view.h	12 Dec 2005 13:55:25 -0000
@@ -126,7 +126,7 @@ void       eab_view_discard_menus       
 RuleContext *eab_view_peek_search_context (EABView *view);
 FilterRule  *eab_view_peek_search_rule    (EABView *view);
 
-void       eab_view_save_as             (EABView  *view);
+void       eab_view_save_as             (EABView  *view, gboolean all);
 void       eab_view_view                (EABView  *view);
 void       eab_view_send                (EABView  *view);
 void       eab_view_send_to             (EABView  *view);
@@ -139,8 +139,8 @@ void       eab_view_paste               
 void       eab_view_select_all          (EABView  *view);
 void       eab_view_show_all            (EABView  *view);
 void       eab_view_stop                (EABView  *view);
-void       eab_view_copy_to_folder      (EABView  *view);
-void       eab_view_move_to_folder      (EABView  *view);
+void       eab_view_copy_to_folder      (EABView  *view, gboolean all);
+void       eab_view_move_to_folder      (EABView  *view, gboolean all);
 
 gboolean   eab_view_can_create          (EABView  *view);
 gboolean   eab_view_can_print           (EABView  *view);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]