diff options
Diffstat (limited to 'composer/evolution-composer.c')
-rw-r--r-- | composer/evolution-composer.c | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/composer/evolution-composer.c b/composer/evolution-composer.c index 45a6949eb3..80311f3eff 100644 --- a/composer/evolution-composer.c +++ b/composer/evolution-composer.c @@ -258,12 +258,26 @@ get_object (BonoboItemHandler *h, const char *item_name, gboolean only_if_exists gpointer data, CORBA_Environment *ev) { EvolutionComposer *composer = data; + GSList *options, *l; - if (strcmp (item_name, "composer_window") == 0) - return bonobo_object_dup_ref ( - BONOBO_OBJECT (composer->composer)->corba_objref, ev); - - return CORBA_OBJECT_NIL; + options = bonobo_item_option_parse (item_name); + for (l = options; l; l = l->next){ + BonoboItemOption *option = l->data; + + if (strcmp (option->key, "visible")){ + gboolean show = 1; + + if (option->value) + show = atoi (option->value); + + if (show) + gtk_widget_show (GTK_WIDGET (composer->composer)); + else + gtk_widget_hide (GTK_WIDGET (composer->composer)); + } + } + return bonobo_object_dup_ref ( + BONOBO_OBJECT (composer)->corba_objref, ev); } void |