diff options
author | bertrand <bertrand@helixcode.com> | 2000-03-13 13:04:31 +0800 |
---|---|---|
committer | Bertrand Guiheneuf <bertrand@src.gnome.org> | 2000-03-13 13:04:31 +0800 |
commit | b3800945679e14f8bc6ca2b8f08915e0bd5dd7af (patch) | |
tree | f4ffa4ff7a9e7978503722127160647982058eb7 /shell/e-shell-view.c | |
parent | b21cd06a462253b43a261e6d91d89edb7ce19cf2 (diff) | |
download | gsoc2013-evolution-b3800945679e14f8bc6ca2b8f08915e0bd5dd7af.tar.gz gsoc2013-evolution-b3800945679e14f8bc6ca2b8f08915e0bd5dd7af.tar.zst gsoc2013-evolution-b3800945679e14f8bc6ca2b8f08915e0bd5dd7af.zip |
once we have the bonobo control widget, disable the autoactivation and
2000-03-13 bertrand <bertrand@helixcode.com>
* shell/e-shell-view.c (get_view):
once we have the bonobo control widget,
disable the autoactivation and activate
the control frame.
2000-03-12 bertrand <bertrand@helixcode.com>
* folder-browser-factory.c (folder_browser_factory_init):
name change.
(control_activate_cb): when the control is activated,
it merges its own UI with the remote UIHandler.
(control_add_menu): sample menu merging.
(folder_browser_factory): connect the control "activate" signal.
(Bonobo control / shell view) UIMenu merging.
svn path=/trunk/; revision=2110
Diffstat (limited to 'shell/e-shell-view.c')
-rw-r--r-- | shell/e-shell-view.c | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/shell/e-shell-view.c b/shell/e-shell-view.c index caea4bb6d6..5a75ad74c2 100644 --- a/shell/e-shell-view.c +++ b/shell/e-shell-view.c @@ -71,12 +71,11 @@ e_shell_view_setup_shortcut_display (EShellView *eshell_view) } static GtkWidget * -get_view (EFolder *efolder) +get_view (EFolder *efolder, Bonobo_UIHandler uih) { GtkWidget *w = NULL; - BonoboControl control; EFolderType e_folder_type; - + BonoboControlFrame *control_frame; @@ -95,7 +94,7 @@ get_view (EFolder *efolder) case E_FOLDER_MAIL : w = bonobo_widget_new_control ("control:evolution-mail", - NULL); + uih ); break; default : @@ -103,6 +102,10 @@ get_view (EFolder *efolder) e_folder_get_description (efolder)); } + control_frame = bonobo_widget_get_control_frame (w); + bonobo_control_frame_set_autoactivate (control_frame, FALSE); + bonobo_control_frame_control_activate (control_frame); + if (w) gtk_widget_show (w); return w; @@ -112,7 +115,12 @@ get_view (EFolder *efolder) void e_shell_view_set_view (EShellView *eshell_view, EFolder *efolder) { - GtkWidget *w = get_view (efolder); + GtkWidget *w; + Bonobo_UIHandler uih; + + uih = bonobo_object_corba_objref (BONOBO_OBJECT (eshell_view->uih)); + + w = get_view (efolder, uih); if (eshell_view->contents){ gtk_widget_destroy (eshell_view->contents); @@ -120,6 +128,9 @@ e_shell_view_set_view (EShellView *eshell_view, EFolder *efolder) eshell_view->contents = w; + if (!w) + return; + if (eshell_view->shortcut_displayed){ gtk_paned_pack2 (GTK_PANED (eshell_view->shortcut_hpaned), eshell_view->contents, FALSE, TRUE); |