From 56ed3ed3b9fd94ed34c92aa6bbcd26bb56208595 Mon Sep 17 00:00:00 2001 From: Ettore Perazzoli Date: Wed, 5 Sep 2001 22:58:45 +0000 Subject: [Fix #958, ShellComponents should not be created by factories, for the test component.] * GNOME_Evolution_TestComponent.oaf: Remove the factory. * evolution-test-component.c (COMPONENT_FACTORY_ID): Removed. (component_factory_init): Removed. (register_component): Rename from `component_fn'. No args, no return value. Register the thing on OAF by yourself instead of using a factory. svn path=/trunk/; revision=12639 --- shell/ChangeLog | 13 +++++++++++++ shell/GNOME_Evolution_TestComponent.oaf | 14 +------------- shell/evolution-test-component.c | 26 +++++++++----------------- 3 files changed, 23 insertions(+), 30 deletions(-) diff --git a/shell/ChangeLog b/shell/ChangeLog index 940f2ed41c..b4e60fffb3 100644 --- a/shell/ChangeLog +++ b/shell/ChangeLog @@ -1,3 +1,16 @@ +2001-09-05 Ettore Perazzoli + + [Fix #958, ShellComponents should not be created by factories, for + the test component.] + + * GNOME_Evolution_TestComponent.oaf: Remove the factory. + + * evolution-test-component.c (COMPONENT_FACTORY_ID): Removed. + (component_factory_init): Removed. + (register_component): Rename from `component_fn'. No args, no + return value. Register the thing on OAF by yourself instead of + using a factory. + 2001-09-05 Ettore Perazzoli * e-shortcuts-view.c (get_shortcut_info): New. diff --git a/shell/GNOME_Evolution_TestComponent.oaf b/shell/GNOME_Evolution_TestComponent.oaf index 5a203b51b4..d5ef5333be 100644 --- a/shell/GNOME_Evolution_TestComponent.oaf +++ b/shell/GNOME_Evolution_TestComponent.oaf @@ -1,21 +1,9 @@ - - - - - - - - - - diff --git a/shell/evolution-test-component.c b/shell/evolution-test-component.c index e29773e4dd..3e64464cbb 100644 --- a/shell/evolution-test-component.c +++ b/shell/evolution-test-component.c @@ -36,8 +36,7 @@ #include -#define COMPONENT_FACTORY_ID "OAFIID:GNOME_Evolution_TestComponent_ShellComponentFactory" -#define COMPONENT_ID "OAFIID:GNOME_Evolution_TestComponent_ShellComponent" +#define COMPONENT_ID "OAFIID:GNOME_Evolution_TestComponent_ShellComponent" static const EvolutionShellComponentFolderType folder_types[] = { { "test", "/usr/share/pixmaps/gnome-money.png", N_("Test"), N_("Test type"), FALSE, NULL, NULL }, @@ -279,11 +278,11 @@ user_create_new_item_callback (EvolutionShellComponent *shell_component, } -static BonoboObject * -factory_fn (BonoboGenericFactory *factory, - void *closure) +static void +register_component (void) { EvolutionShellComponent *shell_component; + int result; shell_component = evolution_shell_component_new (folder_types, NULL, @@ -301,18 +300,11 @@ factory_fn (BonoboGenericFactory *factory, gtk_signal_connect (GTK_OBJECT (shell_component), "user_create_new_item", GTK_SIGNAL_FUNC (user_create_new_item_callback), NULL); - return BONOBO_OBJECT (shell_component); -} - -static void -component_factory_init (void) -{ - BonoboGenericFactory *factory; - - factory = bonobo_generic_factory_new (COMPONENT_FACTORY_ID, factory_fn, NULL); + result = oaf_active_server_register (COMPONENT_ID, + bonobo_object_corba_objref (BONOBO_OBJECT (shell_component))); - if (factory == NULL) - g_error ("Cannot initialize test component."); + if (result == OAF_REG_ERROR) + g_error ("Cannot register active server into OAF"); } @@ -332,7 +324,7 @@ main (int argc, char **argv) if (bonobo_init (orb, CORBA_OBJECT_NIL, CORBA_OBJECT_NIL) == FALSE) g_error ("Cannot initialize the test component."); - component_factory_init (); + register_component (); bonobo_main (); -- cgit