diff options
author | Ettore Perazzoli <ettore@src.gnome.org> | 2001-08-03 22:27:44 +0800 |
---|---|---|
committer | Ettore Perazzoli <ettore@src.gnome.org> | 2001-08-03 22:27:44 +0800 |
commit | 0039ef5422e980484c47d2fe97c3edbf63edd5b8 (patch) | |
tree | bdc0ba031ab17a176fe758f43c7a12f508fdced5 /shell/e-shell.h | |
parent | b5c3ca3079407391e099eea277f37ad45e5866d7 (diff) | |
download | gsoc2013-evolution-0039ef5422e980484c47d2fe97c3edbf63edd5b8.tar.gz gsoc2013-evolution-0039ef5422e980484c47d2fe97c3edbf63edd5b8.tar.zst gsoc2013-evolution-0039ef5422e980484c47d2fe97c3edbf63edd5b8.zip |
[Fix #6232, the thirty-four-splash-screens-at-startup bug.]
* e-shell.c (setup_local_storage): Add an E_STORAGE() cast to
prevent a warning.
* main.c (idle_cb): Only try to activate from the shell ID if the
result is `E_SHELL_CONSTRUCT_RESULT_CANNOTREGISTER'; if there is a
different error, spit out a dialog box with a description of it
and exit instead.
* e-shell.c (e_shell_construct): Return an `EShellConstructResult'
describing what kind of result we had. Show the splash after the
DB has been reached, not before.
(e_shell_construct_result_to_string): New function to get a
descriptive string out of an `EShellConstructResult'.
(e_shell_new): New arg @construct_result_return to return a
description of the result of the operation.
* e-shell.h: New enum `EShellConstructResult'.
* e-shell.c (impl_Shell_createNewView): Raise `InternalError'
instead of crashing if the shell_view returns a CORBA_OBJECT_NIL.
* Evolution-Shell.idl: New exception `InternalError'.
`createNewView' and `handleURI' can raise it.
svn path=/trunk/; revision=11611
Diffstat (limited to 'shell/e-shell.h')
-rw-r--r-- | shell/e-shell.h | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/shell/e-shell.h b/shell/e-shell.h index 1f9406bd83..8aaa2d5060 100644 --- a/shell/e-shell.h +++ b/shell/e-shell.h @@ -78,14 +78,25 @@ struct _EShellClass { /* ID for registering the shell in the OAF name service. */ #define E_SHELL_OAFIID "OAFIID:GNOME_Evolution_Shell" +enum _EShellConstructResult { + E_SHELL_CONSTRUCT_RESULT_OK, + E_SHELL_CONSTRUCT_RESULT_INVALIDARG, + E_SHELL_CONSTRUCT_RESULT_CANNOTREGISTER, + E_SHELL_CONSTRUCT_RESULT_NOCONFIGDB, + E_SHELL_CONSTRUCT_RESULT_GENERICERROR +}; +typedef enum _EShellConstructResult EShellConstructResult; + + -GtkType e_shell_get_type (void); -gboolean e_shell_construct (EShell *shell, - const char *iid, - const char *local_directory, - gboolean show_splash); -EShell *e_shell_new (const char *local_directory, - gboolean show_splash); +GtkType e_shell_get_type (void); +EShellConstructResult e_shell_construct (EShell *shell, + const char *iid, + const char *local_directory, + gboolean show_splash); +EShell *e_shell_new (const char *local_directory, + gboolean show_splash, + EShellConstructResult *construct_result_return); EShellView *e_shell_create_view (EShell *shell, const char *uri); @@ -117,6 +128,9 @@ void e_shell_go_online (EShell *shell, Bonobo_ConfigDatabase e_shell_get_config_db (EShell *shell); + +const char *e_shell_construct_result_to_string (EShellConstructResult result); + #ifdef __cplusplus } #endif /* __cplusplus */ |