diff options
-rw-r--r-- | my-evolution/ChangeLog | 14 | ||||
-rw-r--r-- | my-evolution/GNOME_Evolution_Summary.oaf.in | 13 | ||||
-rw-r--r-- | my-evolution/component-factory.c | 16 |
3 files changed, 22 insertions, 21 deletions
diff --git a/my-evolution/ChangeLog b/my-evolution/ChangeLog index 0877a244fe..7bbb00c4d8 100644 --- a/my-evolution/ChangeLog +++ b/my-evolution/ChangeLog @@ -1,3 +1,17 @@ +2001-09-05 Ettore Perazzoli <ettore@ximian.com> + + [Fix #958, ShellComponents should not be created by factories, for + the Summary.] + + * component-factory.c (COMPONENT_FACTORY_IID): Removed. + (COMPONENT_ID): New. + (create_component): Renamed from `factory_fn'. No args. + (component_factory_init): Create the BonoboObject with + `create_component' and register it on OAF. + + * GNOME_Evolution_Summary.oaf.in: Remove the + ShellComponentFactory. + 2001-09-05 Iain Holmes <iain@ximian.com> * Locations: Added some Caracas fixes from Mayly Sanchez. diff --git a/my-evolution/GNOME_Evolution_Summary.oaf.in b/my-evolution/GNOME_Evolution_Summary.oaf.in index eeffbe28c0..4c4e42e2b8 100644 --- a/my-evolution/GNOME_Evolution_Summary.oaf.in +++ b/my-evolution/GNOME_Evolution_Summary.oaf.in @@ -1,19 +1,8 @@ <oaf_info> -<oaf_server iid="OAFIID:GNOME_Evolution_Summary_ShellComponentFactory" +<oaf_server iid="OAFIID:GNOME_Evolution_Summary_ShellComponent" type="exe" location="evolution-executive-summary"> - <oaf_attribute name="repo_ids" type="stringv"> - <item value="IDL:GNOME/ObjectFactory:1.0"/> - </oaf_attribute> - - <oaf_attribute name="description" type="string" - _value="Factory for the Evolution executive summary component."/> -</oaf_server> - -<oaf_server iid="OAFIID:GNOME_Evolution_Summary_ShellComponent" - type="factory" - location="OAFIID:GNOME_Evolution_Summary_ShellComponentFactory"> <oaf_attribute name="repo_ids" type="stringv"> <item value="IDL:GNOME/Evolution/ShellComponent:1.0"/> diff --git a/my-evolution/component-factory.c b/my-evolution/component-factory.c index bcb1f69df4..1287ff0ea0 100644 --- a/my-evolution/component-factory.c +++ b/my-evolution/component-factory.c @@ -22,7 +22,7 @@ #include "component-factory.h" #include <gal/widgets/e-gui-utils.h> -#define COMPONENT_FACTORY_IID "OAFIID:GNOME_Evolution_Summary_ShellComponentFactory" +#define COMPONENT_ID "OAFIID:GNOME_Evolution_Summary_ShellComponent" static gint running_objects = 0; @@ -99,8 +99,7 @@ component_destroy (BonoboObject *factory, } static BonoboObject * -factory_fn (BonoboGenericFactory *factory, - void *closure) +create_component (void) { EvolutionShellComponent *shell_component; ESummaryOfflineHandler *offline_handler; @@ -131,16 +130,15 @@ factory_fn (BonoboGenericFactory *factory, void component_factory_init (void) { - BonoboGenericFactory *object; + BonoboObject *object; + int result; - object = bonobo_generic_factory_new (COMPONENT_FACTORY_IID, - factory_fn, NULL); + object = create_component (); - if (object == NULL) { + result = oaf_active_server_register (COMPONENT_ID, bonobo_object_corba_objref (object)); + if (result == OAF_REG_ERROR) { e_notice (NULL, GNOME_MESSAGE_BOX_ERROR, _("Cannot initialize Evolution's Executive Summary component.")); exit (1); } - - bonobo_running_context_auto_exit_unref (BONOBO_OBJECT (object)); } |