static inline gboolean gtk_argloc_set_from_value (GtkArg *arg, GValue *value, gboolean copy_string) { switch (G_TYPE_FUNDAMENTAL (arg->type)) { case G_TYPE_CHAR: *GTK_RETLOC_CHAR (*arg) = g_value_get_char (value); break; case G_TYPE_UCHAR: *GTK_RETLOC_UCHAR (*arg) = g_value_get_uchar (value); break; case G_TYPE_BOOLEAN: *GTK_RETLOC_BOOL (*arg) = g_value_get_boolean (value); break; case G_TYPE_INT: *GTK_RETLOC_INT (*arg) = g_value_get_int (value); break; case G_TYPE_UINT: *GTK_RETLOC_UINT (*arg) = g_value_get_uint (value); break; case G_TYPE_LONG: *GTK_RETLOC_LONG (*arg) = g_value_get_long (value); break; case G_TYPE_ULONG: *GTK_RETLOC_ULONG (*arg) = g_value_get_ulong (value); break; case G_TYPE_ENUM: *GTK_RETLOC_ENUM (*arg) = g_value_get_enum (value); break; case G_TYPE_FLAGS: *GTK_RETLOC_FLAGS (*arg) = g_value_get_flags (value); break; case G_TYPE_FLOAT: *GTK_RETLOC_FLOAT (*arg) = g_value_get_float (value); break; case G_TYPE_DOUBLE: *GTK_RETLOC_DOUBLE (*arg) = g_value_get_double (value); break; case G_TYPE_BOXED: *GTK_RETLOC_BOXED (*arg) = g_value_get_boxed (value); break; case G_TYPE_POINTER: *GTK_RETLOC_POINTER (*arg) = g_value_get_pointer (value); break; case G_TYPE_OBJECT: *GTK_RETLOC_POINTER (*arg) = g_value_get_object (value); break; case G_TYPE_STRING: if (copy_string) *GTK_RETLOC_STRING (*arg) = g_value_dup_string (value); else *GTK_RETLOC_STRING (*arg) = (char *) g_value_get_string (value); break; default: return FALSE; } return TRUE; }
void gtk_marshal_BOOL__NONE (GtkObject * object, GtkSignalFunc func, gpointer func_data, GtkArg * args) { GtkSignal_BOOL__NONE rfunc; gboolean *return_val; return_val = GTK_RETLOC_BOOL (args[0]); rfunc = (GtkSignal_BOOL__NONE) func; *return_val = (*rfunc) (object, func_data); }
void gtk_marshal_BOOL__POINTER (GtkObject * object, GtkSignalFunc func, gpointer func_data, GtkArg * args) { GtkSignal_BOOL__POINTER rfunc; gboolean *return_val; return_val = GTK_RETLOC_BOOL (args[1]); rfunc = (GtkSignal_BOOL__POINTER) func; *return_val = (*rfunc) (object, GTK_VALUE_POINTER (args[0]), func_data); }
/* Set return value for a callback */ void c_set_return_value_bool (args_data *ap, int ret_val) { if (ap->return_valuep != NULL) *GTK_RETLOC_BOOL(*(ap->return_valuep)) = ret_val; }