aboutsummaryrefslogtreecommitdiffstats
path: root/shell/e-shell.h
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2000-12-05 00:09:27 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2000-12-05 00:09:27 +0800
commited458bfc2a20b5de9b95834dcf4a2e764f0f270e (patch)
tree04e5fa0d9f685bf3b233497a28b184926f02a9d9 /shell/e-shell.h
parent32d142ec2ea20842431397486c9e3fa92e952db4 (diff)
downloadgsoc2013-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.h29
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);