diff options
author | Ettore Perazzoli <ettore@src.gnome.org> | 2001-10-23 03:09:24 +0800 |
---|---|---|
committer | Ettore Perazzoli <ettore@src.gnome.org> | 2001-10-23 03:09:24 +0800 |
commit | 367221fa5e99f7cd2b687b18b367ddf167f2377f (patch) | |
tree | 606c13d3fb66c3370728223a400c21bb24d50e5a /shell/evolution-shell-component.c | |
parent | fd9cceb0d77c9d5e6a53cdf08f42cf44008246d5 (diff) | |
download | gsoc2013-evolution-367221fa5e99f7cd2b687b18b367ddf167f2377f.tar.gz gsoc2013-evolution-367221fa5e99f7cd2b687b18b367ddf167f2377f.tar.zst gsoc2013-evolution-367221fa5e99f7cd2b687b18b367ddf167f2377f.zip |
New member `is_interactive' in `EShellPrivate'. (init): Init to %FALSE.
* e-shell.c: New member `is_interactive' in `EShellPrivate'.
(init): Init to %FALSE.
(set_interactive): New.
(e_shell_create_view): Make interactive.
(view_destroy_cb): If no views are left, make non-interactive.
* evolution-shell-component.c (class_init): Set up the
"interactive" signal.
(impl_interactive): New implementation for the ::interactive
method.
(class_init): Install.
* evolution-shell-component.h: New signal `interactive'.
* Evolution-ShellComponent.idl: New method ::interactive.
svn path=/trunk/; revision=13890
Diffstat (limited to 'shell/evolution-shell-component.c')
-rw-r--r-- | shell/evolution-shell-component.c | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/shell/evolution-shell-component.c b/shell/evolution-shell-component.c index 793e579732..2526ba61b6 100644 --- a/shell/evolution-shell-component.c +++ b/shell/evolution-shell-component.c @@ -79,6 +79,7 @@ enum { OWNER_UNSET, OWNER_DIED, DEBUG, + INTERACTIVE, HANDLE_EXTERNAL_URI, USER_CREATE_NEW_ITEM, LAST_SIGNAL @@ -436,6 +437,20 @@ impl_debug (PortableServer_Servant servant, gtk_signal_emit (GTK_OBJECT (shell_component), signals[DEBUG]); } +static void +impl_interactive (PortableServer_Servant servant, + CORBA_boolean interactive, + CORBA_Environment *ev) +{ + BonoboObject *bonobo_object; + EvolutionShellComponent *shell_component; + + bonobo_object = bonobo_object_from_servant (servant); + shell_component = EVOLUTION_SHELL_COMPONENT (bonobo_object); + + gtk_signal_emit (GTK_OBJECT (shell_component), signals[INTERACTIVE], interactive); +} + static Bonobo_Control impl_createView (PortableServer_Servant servant, const CORBA_char *physical_uri, @@ -738,6 +753,15 @@ class_init (EvolutionShellComponentClass *klass) gtk_marshal_NONE__NONE, GTK_TYPE_NONE, 0); + signals[INTERACTIVE] + = gtk_signal_new ("interactive", + GTK_RUN_FIRST, + object_class->type, + GTK_SIGNAL_OFFSET (EvolutionShellComponentClass, interactive), + gtk_marshal_NONE__BOOL, + GTK_TYPE_NONE, 1, + GTK_TYPE_BOOL); + signals[HANDLE_EXTERNAL_URI] = gtk_signal_new ("handle_external_uri", GTK_RUN_FIRST, @@ -767,7 +791,8 @@ class_init (EvolutionShellComponentClass *klass) epv->_get_userCreatableItemTypes = impl__get_userCreatableItemTypes; epv->setOwner = impl_setOwner; epv->unsetOwner = impl_unsetOwner; - epv->debug = impl_debug; + epv->debug = impl_debug; + epv->interactive = impl_interactive; epv->createView = impl_createView; epv->handleExternalURI = impl_handleExternalURI; epv->createFolderAsync = impl_createFolderAsync; |