diff options
author | Ettore Perazzoli <ettore@src.gnome.org> | 2000-12-05 00:09:27 +0800 |
---|---|---|
committer | Ettore Perazzoli <ettore@src.gnome.org> | 2000-12-05 00:09:27 +0800 |
commit | ed458bfc2a20b5de9b95834dcf4a2e764f0f270e (patch) | |
tree | 04e5fa0d9f685bf3b233497a28b184926f02a9d9 /shell/e-shell.h | |
parent | 32d142ec2ea20842431397486c9e3fa92e952db4 (diff) | |
download | gsoc2013-evolution-ed458bfc2a20b5de9b95834dcf4a2e764f0f270e.tar.gz gsoc2013-evolution-ed458bfc2a20b5de9b95834dcf4a2e764f0f270e.tar.zst gsoc2013-evolution-ed458bfc2a20b5de9b95834dcf4a2e764f0f270e.zip |
New `createNewView' method in `Evolution::Shell'. Register the shell
at startup; if a shell is already registered, use this CORBA method to
make it open a new view and exit. Also, fixed a missing ref problem
with EShortcut (it used to crash on exit when more than one view was
open).
svn path=/trunk/; revision=6774
Diffstat (limited to 'shell/e-shell.h')
-rw-r--r-- | shell/e-shell.h | 29 |
1 files changed, 18 insertions, 11 deletions
diff --git a/shell/e-shell.h b/shell/e-shell.h index 4eb5c2c462..3548de03c7 100644 --- a/shell/e-shell.h +++ b/shell/e-shell.h @@ -30,6 +30,8 @@ #include <bonobo/bonobo-object.h> +#include <liboaf/liboaf.h> /* For the registration stuff. */ + #ifdef __cplusplus extern "C" { #pragma } @@ -43,6 +45,7 @@ typedef struct _EShellClass EShellClass; #include "e-shortcuts.h" #include "e-shell-view.h" + #define E_TYPE_SHELL (e_shell_get_type ()) #define E_SHELL(obj) (GTK_CHECK_CAST ((obj), E_TYPE_SHELL, EShell)) #define E_SHELL_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), E_TYPE_SHELL, EShellClass)) @@ -50,7 +53,6 @@ typedef struct _EShellClass EShellClass; #define E_IS_SHELL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((obj), E_TYPE_SHELL)) - struct _EShell { BonoboObject parent; @@ -64,16 +66,21 @@ struct _EShellClass { }; -GtkType e_shell_get_type (void); -void e_shell_construct (EShell *shell, - GNOME_Evolution_Shell corba_object, - const char *local_directory, - gboolean show_splash); - -EShell *e_shell_new (const char *local_directory, - gboolean show_splash); -EShellView *e_shell_new_view (EShell *shell, - const char *uri); +/* ID for registering the shell in the OAF name service. */ +#define E_SHELL_OAFIID "OAFIID:evolution:584cc84c-27d4-42c8-ae4d-39a64bdefbd2" + + +GtkType e_shell_get_type (void); +gboolean e_shell_construct (EShell *shell, + GNOME_Evolution_Shell corba_object, + const char *iid, + const char *local_directory, + gboolean show_splash); +EShell *e_shell_new (const char *local_directory, + gboolean show_splash); + +EShellView *e_shell_new_view (EShell *shell, + const char *uri); const char *e_shell_get_local_directory (EShell *shell); EShortcuts *e_shell_get_shortcuts (EShell *shell); |