static char * simple_prop_to_string (BonoboArg *arg) { static char s [1024]; if (!arg) { g_snprintf (s, sizeof (s), "NULL"); return g_strdup (s); } g_assert (arg->_type != NULL); switch (arg->_type->kind) { case CORBA_tk_boolean: g_snprintf (s, sizeof (s), "boolean: %s", BONOBO_ARG_GET_BOOLEAN (arg) ? "True" : "False"); break; case CORBA_tk_long: g_snprintf (s, sizeof (s), "integer: %d", BONOBO_ARG_GET_INT (arg)); break; case CORBA_tk_float: g_snprintf (s, sizeof (s), "float: %f", BONOBO_ARG_GET_FLOAT (arg)); break; case CORBA_tk_double: g_snprintf (s, sizeof (s), "double: %g", BONOBO_ARG_GET_DOUBLE (arg)); break; case CORBA_tk_string: { g_snprintf (s, sizeof (s), "string: '%s'", BONOBO_ARG_GET_STRING (arg)); break; } default: g_error ("Unhandled type: %u", arg->_type->kind); break; } return g_strdup (s); }
static void set_prop ( BonoboPropertyBag *bag, const BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data) { EItipControl *itip = user_data; switch (arg_id) { case FROM_ADDRESS_ARG_ID: e_itip_control_set_from_address (itip, BONOBO_ARG_GET_STRING (arg)); break; case VIEW_ONLY_ARG_ID: e_itip_control_set_view_only (itip, BONOBO_ARG_GET_INT (arg)); break; } }
static void set_prop (BonoboPropertyBag *bag, const BonoboArg *arg, guint arg_id, CORBA_Environment *ev, gpointer user_data) { PropData *pd = user_data; switch (arg_id) { case PROP_BOOLEAN_TEST: pd->b = BONOBO_ARG_GET_BOOLEAN (arg); break; case PROP_INTEGER_TEST: pd->i = BONOBO_ARG_GET_INT (arg); break; case PROP_LONG_TEST: pd->l = BONOBO_ARG_GET_LONG (arg); break; case PROP_FLOAT_TEST: pd->f = BONOBO_ARG_GET_FLOAT (arg); break; case PROP_DOUBLE_TEST: pd->d = BONOBO_ARG_GET_DOUBLE (arg); break; case PROP_STRING_TEST: pd->s = BONOBO_ARG_GET_STRING (arg); break; default: bonobo_exception_set (ev, ex_Bonobo_PropertyBag_NotFound); }; }