diff options
author | Matthew Barnes <mbarnes@src.gnome.org> | 2008-09-19 05:10:23 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@src.gnome.org> | 2008-09-19 05:10:23 +0800 |
commit | 0c27b4ab1b75a29a0ea2b2c6ae3a568663179bdf (patch) | |
tree | facfeee294e47aab5fc57c0c86aa0dea96d13f16 /addressbook/gui/component/e-book-shell-view-actions.c | |
parent | 979203663083ef89f678dc1e95bc0c9b24f55a9e (diff) | |
download | gsoc2013-evolution-0c27b4ab1b75a29a0ea2b2c6ae3a568663179bdf.tar gsoc2013-evolution-0c27b4ab1b75a29a0ea2b2c6ae3a568663179bdf.tar.gz gsoc2013-evolution-0c27b4ab1b75a29a0ea2b2c6ae3a568663179bdf.tar.bz2 gsoc2013-evolution-0c27b4ab1b75a29a0ea2b2c6ae3a568663179bdf.tar.lz gsoc2013-evolution-0c27b4ab1b75a29a0ea2b2c6ae3a568663179bdf.tar.xz gsoc2013-evolution-0c27b4ab1b75a29a0ea2b2c6ae3a568663179bdf.tar.zst gsoc2013-evolution-0c27b4ab1b75a29a0ea2b2c6ae3a568663179bdf.zip |
Finally got the "Current View" menu under control.
svn path=/branches/kill-bonobo/; revision=36380
Diffstat (limited to 'addressbook/gui/component/e-book-shell-view-actions.c')
-rw-r--r-- | addressbook/gui/component/e-book-shell-view-actions.c | 27 |
1 files changed, 25 insertions, 2 deletions
diff --git a/addressbook/gui/component/e-book-shell-view-actions.c b/addressbook/gui/component/e-book-shell-view-actions.c index 814b69d82c..9a26608d84 100644 --- a/addressbook/gui/component/e-book-shell-view-actions.c +++ b/addressbook/gui/component/e-book-shell-view-actions.c @@ -385,6 +385,23 @@ action_contact_send_message_cb (GtkAction *action, } static void +action_gal_save_custom_view_cb (GtkAction *action, + EBookShellView *book_shell_view) +{ + EShellView *shell_view; + EAddressbookView *address_view; + GalViewInstance *view_instance; + + shell_view = E_SHELL_VIEW (book_shell_view); + if (!e_shell_view_is_active (shell_view)) + return; + + address_view = e_book_shell_view_get_current_view (book_shell_view); + view_instance = e_addressbook_view_get_view_instance (address_view); + gal_view_instance_save_as (view_instance); +} + +static void action_search_execute_cb (GtkAction *action, EBookShellView *book_shell_view) { @@ -741,6 +758,10 @@ e_book_shell_view_actions_init (EBookShellView *book_shell_view) g_object_set (action, "short-label", _("Delete"), NULL); g_signal_connect ( + ACTION (GAL_SAVE_CUSTOM_VIEW), "activate", + G_CALLBACK (action_gal_save_custom_view_cb), book_shell_view); + + g_signal_connect ( ACTION (SEARCH_EXECUTE), "activate", G_CALLBACK (action_search_execute_cb), book_shell_view); } @@ -775,8 +796,10 @@ e_book_shell_view_actions_update (EBookShellView *book_shell_view) editable = e_addressbook_model_get_editable (model); selection_model = e_addressbook_view_get_selection_model (view); - n_contacts = e_selection_model_row_count (selection_model); - n_selected = e_selection_model_selected_count (selection_model); + n_contacts = (selection_model != NULL) ? + e_selection_model_row_count (selection_model) : 0; + n_selected = (selection_model != NULL) ? + e_selection_model_selected_count (selection_model) : 0; action = ACTION (ADDRESS_BOOK_STOP); sensitive = e_addressbook_model_can_stop (model); |