Example #1
0
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;
}
Example #2
0
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);
}
Example #3
0
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);
}
Example #4
0
/* 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;
}