From a30eed771c00ccde2cd7a32c3f0a28057f247f84 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Fri, 18 Jan 2002 15:37:09 +0000 Subject: From addressbook/ChangeLog: 2002-01-18 Christopher James Lahey * gui/component/addressbook.c (view_contact_cb): New verb to open a bunch of cards. * gui/widgets/e-addressbook-reflow-adapter.c (open_card): Call e_addressbook_show_multiple_cards instead of doing this ourselves. * gui/widgets/e-addressbook-util.c, gui/widgets/e-addressbook-util.h (e_addressbook_show_multiple_cards): Added this function to show a bunch of cards, including a dialog if lots of windows are going to appear. * gui/widgets/e-addressbook-view.c (e_addressbook_view_view, e_addressbook_view_can_view): e_addressbook_view_view calls e_addressbook_show_multiple_cards on the appropriate list of cards. From ui/ChangeLog: 2002-01-18 Christopher James Lahey * evolution-addressbook.xml: Added File->Open which calls the ContactsView command. svn path=/trunk/; revision=15355 --- .../gui/widgets/e-addressbook-reflow-adapter.c | 33 +++++++--------------- 1 file changed, 10 insertions(+), 23 deletions(-) (limited to 'addressbook/gui/widgets/e-addressbook-reflow-adapter.c') diff --git a/addressbook/gui/widgets/e-addressbook-reflow-adapter.c b/addressbook/gui/widgets/e-addressbook-reflow-adapter.c index 8c4507a5e3..06be8543c7 100644 --- a/addressbook/gui/widgets/e-addressbook-reflow-adapter.c +++ b/addressbook/gui/widgets/e-addressbook-reflow-adapter.c @@ -125,6 +125,7 @@ get_card_list (ModelAndSelection *mns) for (iterator = list; iterator; iterator = iterator->next) { iterator->data = e_addressbook_model_card_at (priv->model, GPOINTER_TO_INT (iterator->data)); + gtk_object_ref (GTK_OBJECT (iterator->data)); } list = g_list_reverse (list); return list; @@ -138,7 +139,7 @@ save_as (GtkWidget *widget, ModelAndSelection *mns) list = get_card_list (mns); if (list) e_contact_list_save_as (_("Save as VCard"), list); - g_list_free (list); + e_free_object_list (list); model_and_selection_free (mns); } @@ -150,7 +151,7 @@ send_as (GtkWidget *widget, ModelAndSelection *mns) list = get_card_list (mns); if (list) e_card_list_send (list, E_CARD_DISPOSITION_AS_ATTACHMENT); - g_list_free (list); + e_free_object_list (list); model_and_selection_free (mns); } @@ -162,7 +163,7 @@ send_to (GtkWidget *widget, ModelAndSelection *mns) list = get_card_list (mns); if (list) e_card_list_send (list, E_CARD_DISPOSITION_AS_TO); - g_list_free (list); + e_free_object_list (list); model_and_selection_free (mns); } @@ -174,7 +175,7 @@ print (GtkWidget *widget, ModelAndSelection *mns) list = get_card_list (mns); if (list) gtk_widget_show (e_contact_print_card_list_dialog_new (list)); - g_list_free (list); + e_free_object_list (list); model_and_selection_free (mns); } @@ -187,7 +188,7 @@ print_envelope (GtkWidget *widget, ModelAndSelection *mns) list = get_card_list (mns); if (list) gtk_widget_show (e_contact_print_envelope_list_dialog_new (list)); - g_list_free (list); + e_free_object_list (list); model_and_selection_free (mns); } #endif @@ -248,7 +249,7 @@ delete (GtkWidget *widget, ModelAndSelection *mns) } } - g_list_free (list); + e_free_object_list (list); model_and_selection_free (mns); } @@ -257,27 +258,13 @@ open_card (GtkWidget *widget, ModelAndSelection *mns) { EAddressbookReflowAdapterPrivate *priv = mns->adapter->priv; GList *list; + EBook *book = e_addressbook_model_get_ebook(priv->model); list = get_card_list (mns); - if (list) { - GList *iterator; - EBook *book = e_addressbook_model_get_ebook(priv->model); - - for (iterator = list; iterator; iterator = iterator->next) { - ECard *card = iterator->data; - if (e_card_evolution_list (card)) { - e_addressbook_show_contact_list_editor (book, card, - FALSE, e_addressbook_model_editable (priv->model)); - } - else { - e_addressbook_show_contact_editor (book, card, - FALSE, e_addressbook_model_editable (priv->model)); - } - } - } + e_addressbook_show_multiple_cards (book, list, e_addressbook_model_editable (priv->model)); - g_list_free (list); + e_free_object_list (list); model_and_selection_free (mns); } -- cgit v1.2.3