diff options
author | Matthew Barnes <mbarnes@src.gnome.org> | 2009-01-20 08:05:40 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@src.gnome.org> | 2009-01-20 08:05:40 +0800 |
commit | 22d41a51fae2d18315887b05000cf7facc36e887 (patch) | |
tree | 044eaaa852ca31a11ea70ec8bfa33c6df8c01891 /mail/e-mail-shell-view.c | |
parent | 8e546420df08f5fe243aa4227be44915fd79b86b (diff) | |
download | gsoc2013-evolution-22d41a51fae2d18315887b05000cf7facc36e887.tar.gz gsoc2013-evolution-22d41a51fae2d18315887b05000cf7facc36e887.tar.zst gsoc2013-evolution-22d41a51fae2d18315887b05000cf7facc36e887.zip |
Formalize the "no disabled items in popup menus" policy in the form of a
GtkAction subclass called EPopupAction. Migrate all the modules over to
using EPopupActions in their popup menus.
Add sensitivity management of GtkActions to EMailReader. Not finished.
svn path=/branches/kill-bonobo/; revision=37106
Diffstat (limited to 'mail/e-mail-shell-view.c')
-rw-r--r-- | mail/e-mail-shell-view.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/mail/e-mail-shell-view.c b/mail/e-mail-shell-view.c index f93e72c043..5a338ab011 100644 --- a/mail/e-mail-shell-view.c +++ b/mail/e-mail-shell-view.c @@ -88,6 +88,7 @@ mail_shell_view_update_actions (EShellView *shell_view) { EMailShellViewPrivate *priv; EMailShellSidebar *mail_shell_sidebar; + EShellContent *shell_content; EShellSidebar *shell_sidebar; EShellWindow *shell_window; EMFolderTree *folder_tree; @@ -96,7 +97,6 @@ mail_shell_view_update_actions (EShellView *shell_view) const gchar *label; gchar *uri; gboolean sensitive; - gboolean visible; guint32 state; /* Be descriptive. */ @@ -112,6 +112,9 @@ mail_shell_view_update_actions (EShellView *shell_view) shell_window = e_shell_view_get_shell_window (shell_view); + shell_content = e_shell_view_get_shell_content (shell_view); + e_mail_reader_update_actions (E_MAIL_READER (shell_content)); + mail_shell_sidebar = priv->mail_shell_sidebar; folder_tree = e_mail_shell_sidebar_get_folder_tree (mail_shell_sidebar); @@ -144,21 +147,21 @@ mail_shell_view_update_actions (EShellView *shell_view) } action = ACTION (MAIL_ACCOUNT_DISABLE); - visible = (account != NULL) && folder_is_store; + sensitive = (account != NULL) && folder_is_store; if (account_is_groupwise) label = _("Proxy _Logout"); else label = _("_Disable Account"); - gtk_action_set_visible (action, visible); + gtk_action_set_sensitive (action, sensitive); g_object_set (action, "label", label, NULL); action = ACTION (MAIL_EMPTY_TRASH); - visible = folder_is_trash; - gtk_action_set_visible (action, visible); + sensitive = folder_is_trash; + gtk_action_set_sensitive (action, sensitive); action = ACTION (MAIL_FLUSH_OUTBOX); - visible = folder_is_outbox; - gtk_action_set_visible (action, visible); + sensitive = folder_is_outbox; + gtk_action_set_sensitive (action, sensitive); action = ACTION (MAIL_FOLDER_COPY); sensitive = !folder_is_store; @@ -182,9 +185,7 @@ mail_shell_view_update_actions (EShellView *shell_view) action = ACTION (MAIL_FOLDER_REFRESH); sensitive = !folder_is_store; - visible = !folder_is_outbox; gtk_action_set_sensitive (action, sensitive); - gtk_action_set_visible (action, visible); action = ACTION (MAIL_FOLDER_RENAME); sensitive = !folder_is_store && folder_can_be_deleted; |