diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2010-03-05 04:26:59 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2010-03-14 09:53:17 +0800 |
commit | d7494c8f160b12e1199b06dcafdc8ff01b24b796 (patch) | |
tree | 28e4c85c915c770a4e7bfb48ede7f686d18da206 /shell/e-shell-view.c | |
parent | 51cbd483d163138c3b570b01f0921f767ca64a7e (diff) | |
download | gsoc2013-evolution-d7494c8f160b12e1199b06dcafdc8ff01b24b796.tar.gz gsoc2013-evolution-d7494c8f160b12e1199b06dcafdc8ff01b24b796.tar.zst gsoc2013-evolution-d7494c8f160b12e1199b06dcafdc8ff01b24b796.zip |
Shell and UI manager cleanups.
Replace the EVO_EXPRESS environment variable with an --express command
line option. (Note, this adds a new translatable string for --help.)
Add an EUIManager class with an "express-mode" property and custom load
functions that use our new "express" preprocessor. This replaces the UI
manager functions in e-utils.c.
(Also going to see if I can get GTK+ to add an "add_ui_from_string"
method to GtkUIManagerClass that we can override. Then we could just
call gtk_ui_manager_add_ui_from_string() and the preprocessor would
automatically do its thing and chain up.)
Add an "express-mode" read-only GObject property to EShell.
Add e_shell_configure_ui_manager() to e-shell-utils.c. For now this
just creates a one-way property binding:
EShell:express-mode -> EUIManager:express-mode
Call this immediately after e_ui_manager_new(). (EUIManager can't do
this itself because it lives too low in the dependency hierarchy and
doesn't know about EShell.)
Diffstat (limited to 'shell/e-shell-view.c')
-rw-r--r-- | shell/e-shell-view.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/shell/e-shell-view.c b/shell/e-shell-view.c index b23966b627..33f7fe8d7c 100644 --- a/shell/e-shell-view.c +++ b/shell/e-shell-view.c @@ -594,11 +594,12 @@ shell_view_toggled (EShellView *shell_view) id = shell_view_class->ui_manager_id; if (view_is_active && priv->merge_id == 0) { - priv->merge_id = e_load_ui_manager_definition (ui_manager, basename); - e_plugin_ui_enable_manager (ui_manager, id); + priv->merge_id = e_ui_manager_add_ui_from_file ( + E_UI_MANAGER (ui_manager), basename); + e_plugin_ui_enable_manager (E_UI_MANAGER (ui_manager), id); } else if (!view_is_active && priv->merge_id != 0) { - e_plugin_ui_disable_manager (ui_manager, id); + e_plugin_ui_disable_manager (E_UI_MANAGER (ui_manager), id); gtk_ui_manager_remove_ui (ui_manager, priv->merge_id); priv->merge_id = 0; } |