summaryrefslogtreecommitdiff
path: root/gtk/gtkbindings.c
diff options
context:
space:
mode:
authorTim Janik <timj@gtk.org>1998-07-14 07:40:15 +0000
committerTim Janik <timj@src.gnome.org>1998-07-14 07:40:15 +0000
commitda355feec6ec673ac09f1b29f618bd9b444a3f47 (patch)
treea2e17e607d6d9ef2d62ac16da69d06bcda2c64e6 /gtk/gtkbindings.c
parentf38374c160d1fed2a4aab86a0674a7ea52b81639 (diff)
downloadgdk-pixbuf-da355feec6ec673ac09f1b29f618bd9b444a3f47.tar.gz
display the current cursor name.
Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org> * gtk/testgtk.c (create_cursors): display the current cursor name. * gtk/gtktypeutils.h: * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to the fundamental type definition. the GtkArg union now only covers the required storage types for argument values. adapted the GTK_VALUE_* macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros. * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the code, fixed int/float collection. fixed a bug in the sanity checking code for GtkObjects. * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the argument collection code. * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds macros when distinguishing the return type.
Diffstat (limited to 'gtk/gtkbindings.c')
-rw-r--r--gtk/gtkbindings.c22
1 files changed, 7 insertions, 15 deletions
diff --git a/gtk/gtkbindings.c b/gtk/gtkbindings.c
index a7193d803..12ed21c49 100644
--- a/gtk/gtkbindings.c
+++ b/gtk/gtkbindings.c
@@ -643,16 +643,16 @@ gtk_binding_entry_add_signal (GtkBindingSet *binding_set,
arg->arg_type = va_arg (args, GtkType);
switch (GTK_FUNDAMENTAL_TYPE (arg->arg_type))
{
+ /* for elaborated commenting about var args collection, take a look
+ * at gtk_arg_collect_value() in gtkargcollector.c
+ */
case GTK_TYPE_CHAR:
- arg->arg_type = GTK_TYPE_LONG;
- arg->d.long_data = va_arg (args, gchar);
- break;
- case GTK_TYPE_BOOL:
- arg->arg_type = GTK_TYPE_LONG;
- arg->d.long_data = va_arg (args, gboolean) != 0;
- break;
+ case GTK_TYPE_UCHAR:
case GTK_TYPE_INT:
case GTK_TYPE_UINT:
+ case GTK_TYPE_BOOL:
+ case GTK_TYPE_ENUM:
+ case GTK_TYPE_FLAGS:
arg->arg_type = GTK_TYPE_LONG;
arg->d.long_data = va_arg (args, gint);
break;
@@ -662,9 +662,6 @@ gtk_binding_entry_add_signal (GtkBindingSet *binding_set,
arg->d.long_data = va_arg (args, glong);
break;
case GTK_TYPE_FLOAT:
- arg->arg_type = GTK_TYPE_DOUBLE;
- arg->d.double_data = va_arg (args, gfloat);
- break;
case GTK_TYPE_DOUBLE:
arg->arg_type = GTK_TYPE_DOUBLE;
arg->d.double_data = va_arg (args, gdouble);
@@ -681,11 +678,6 @@ gtk_binding_entry_add_signal (GtkBindingSet *binding_set,
i += n_args + 1;
}
break;
- case GTK_TYPE_ENUM:
- case GTK_TYPE_FLAGS:
- arg->arg_type = GTK_TYPE_LONG;
- arg->d.long_data = va_arg (args, gint);
- break;
default:
g_warning ("gtk_binding_entry_add_signal(): unsupported type `%s' for arg[%u]",
gtk_type_name (arg->arg_type), i);