diff options
-rw-r--r-- | addressbook/ChangeLog | 15 | ||||
-rw-r--r-- | addressbook/gui/contact-editor/e-contact-editor.c | 6 | ||||
-rw-r--r-- | addressbook/gui/contact-list-editor/e-contact-list-editor.c | 8 |
3 files changed, 29 insertions, 0 deletions
diff --git a/addressbook/ChangeLog b/addressbook/ChangeLog index 467585c76c..a3218c3592 100644 --- a/addressbook/ChangeLog +++ b/addressbook/ChangeLog @@ -1,5 +1,20 @@ 2001-08-17 Chris Toshok <toshok@ximian.com> + * gui/contact-list-editor/e-contact-list-editor.c (list_added_cb): + call e_card_set_id on the list's card so we can continue to use + this dialog. also, call command_state_changed if we aren't + closing the dialog so the toolbar is properly sensitized. + (list_deleted_cb): always close the dialog after we successfully + delete a list. + + * gui/contact-editor/e-contact-editor.c (card_added_cb): call + e_card_set_id on the card so we can continue to use this dialog + (to modify or delete the card.) + (card_deleted_cb): always close the dialog after we successfully + delete a card. + +2001-08-17 Chris Toshok <toshok@ximian.com> + * gui/component/addressbook.c (addressbook_query_changed): call e_sexp_encode_string on the search string the user types in so it doesn't break sexp parsing in the wombat. diff --git a/addressbook/gui/contact-editor/e-contact-editor.c b/addressbook/gui/contact-editor/e-contact-editor.c index 688140f46a..cd22ee0c18 100644 --- a/addressbook/gui/contact-editor/e-contact-editor.c +++ b/addressbook/gui/contact-editor/e-contact-editor.c @@ -794,6 +794,8 @@ card_added_cb (EBook *book, EBookStatus status, const char *id, EditorCloseStruc g_free (ecs); + e_card_set_id (ce->card, id); + gtk_signal_emit (GTK_OBJECT (ce), contact_editor_signals[CARD_ADDED], status, ce->card); @@ -956,6 +958,10 @@ card_deleted_cb (EBook *book, EBookStatus status, EContactEditor *ce) { gtk_signal_emit (GTK_OBJECT (ce), contact_editor_signals[CARD_DELETED], status, ce->card); + + /* always close the dialog after we successfully delete a card */ + if (status == E_BOOK_STATUS_SUCCESS) + close_dialog (ce); } static void diff --git a/addressbook/gui/contact-list-editor/e-contact-list-editor.c b/addressbook/gui/contact-list-editor/e-contact-list-editor.c index 98845f8e8d..3647e01184 100644 --- a/addressbook/gui/contact-list-editor/e-contact-list-editor.c +++ b/addressbook/gui/contact-list-editor/e-contact-list-editor.c @@ -309,6 +309,8 @@ list_added_cb (EBook *book, EBookStatus status, const char *id, EditorCloseStruc g_free (ecs); + e_card_set_id (cle->card, id); + gtk_signal_emit (GTK_OBJECT (cle), contact_list_editor_signals[LIST_ADDED], status, cle->card); @@ -317,6 +319,8 @@ list_added_cb (EBook *book, EBookStatus status, const char *id, EditorCloseStruc if (should_close) close_dialog (cle); + else + command_state_changed (cle); } } @@ -383,6 +387,10 @@ list_deleted_cb (EBook *book, EBookStatus status, EContactListEditor *cle) { gtk_signal_emit (GTK_OBJECT (cle), contact_list_editor_signals[LIST_DELETED], status, cle->card); + + /* always close the dialog after we successfully delete a list */ + if (status == E_BOOK_STATUS_SUCCESS) + close_dialog (cle); } static void |