forked from AuroraMiddleware/gtk
begin the parameter elipsis (...) after the first argument name. this
Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org> * gtk/gtkarg.h: * gtk/gtkarg.c: * gtk/gtkwidget.h: * gtk/gtkwidget.c: * gtk/gtkobject.h: * gtk/gtkobject.c: * gtk/gtkcontainer.h: * gtk/gtkcontainer.c: (gtk_object_new): (gtk_object_set): (gtk_widget_new): (gtk_widget_set): (gtk_container_add_with_args): (gtk_container_child_set): begin the parameter elipsis (...) after the first argument name. this change is source compatible, since it was always required, even as NULL. (gtk_args_collect): (gtk_object_args_collect): (gtk_container_child_args_collect): changed prototypes to pass first_arg_name, also, pass va_list variable by value (portability concerns). callers changed. * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we can't pass va_list variables by reference for portability reasons.
This commit is contained in:
parent
db10ace6c8
commit
02a871bc31
28
ChangeLog
28
ChangeLog
@ -1,3 +1,31 @@
|
|||||||
|
Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkarg.h:
|
||||||
|
* gtk/gtkarg.c:
|
||||||
|
* gtk/gtkwidget.h:
|
||||||
|
* gtk/gtkwidget.c:
|
||||||
|
* gtk/gtkobject.h:
|
||||||
|
* gtk/gtkobject.c:
|
||||||
|
* gtk/gtkcontainer.h:
|
||||||
|
* gtk/gtkcontainer.c:
|
||||||
|
(gtk_object_new):
|
||||||
|
(gtk_object_set):
|
||||||
|
(gtk_widget_new):
|
||||||
|
(gtk_widget_set):
|
||||||
|
(gtk_container_add_with_args):
|
||||||
|
(gtk_container_child_set):
|
||||||
|
begin the parameter elipsis (...) after the first argument name. this
|
||||||
|
change is source compatible, since it was always required, even as NULL.
|
||||||
|
(gtk_args_collect):
|
||||||
|
(gtk_object_args_collect):
|
||||||
|
(gtk_container_child_args_collect):
|
||||||
|
changed prototypes to pass first_arg_name, also, pass va_list variable
|
||||||
|
by value (portability concerns). callers changed.
|
||||||
|
|
||||||
|
* gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
|
||||||
|
a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
|
||||||
|
can't pass va_list variables by reference for portability reasons.
|
||||||
|
|
||||||
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
||||||
|
|
||||||
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
||||||
|
@ -1,3 +1,31 @@
|
|||||||
|
Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkarg.h:
|
||||||
|
* gtk/gtkarg.c:
|
||||||
|
* gtk/gtkwidget.h:
|
||||||
|
* gtk/gtkwidget.c:
|
||||||
|
* gtk/gtkobject.h:
|
||||||
|
* gtk/gtkobject.c:
|
||||||
|
* gtk/gtkcontainer.h:
|
||||||
|
* gtk/gtkcontainer.c:
|
||||||
|
(gtk_object_new):
|
||||||
|
(gtk_object_set):
|
||||||
|
(gtk_widget_new):
|
||||||
|
(gtk_widget_set):
|
||||||
|
(gtk_container_add_with_args):
|
||||||
|
(gtk_container_child_set):
|
||||||
|
begin the parameter elipsis (...) after the first argument name. this
|
||||||
|
change is source compatible, since it was always required, even as NULL.
|
||||||
|
(gtk_args_collect):
|
||||||
|
(gtk_object_args_collect):
|
||||||
|
(gtk_container_child_args_collect):
|
||||||
|
changed prototypes to pass first_arg_name, also, pass va_list variable
|
||||||
|
by value (portability concerns). callers changed.
|
||||||
|
|
||||||
|
* gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
|
||||||
|
a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
|
||||||
|
can't pass va_list variables by reference for portability reasons.
|
||||||
|
|
||||||
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
||||||
|
|
||||||
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
||||||
|
@ -1,3 +1,31 @@
|
|||||||
|
Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkarg.h:
|
||||||
|
* gtk/gtkarg.c:
|
||||||
|
* gtk/gtkwidget.h:
|
||||||
|
* gtk/gtkwidget.c:
|
||||||
|
* gtk/gtkobject.h:
|
||||||
|
* gtk/gtkobject.c:
|
||||||
|
* gtk/gtkcontainer.h:
|
||||||
|
* gtk/gtkcontainer.c:
|
||||||
|
(gtk_object_new):
|
||||||
|
(gtk_object_set):
|
||||||
|
(gtk_widget_new):
|
||||||
|
(gtk_widget_set):
|
||||||
|
(gtk_container_add_with_args):
|
||||||
|
(gtk_container_child_set):
|
||||||
|
begin the parameter elipsis (...) after the first argument name. this
|
||||||
|
change is source compatible, since it was always required, even as NULL.
|
||||||
|
(gtk_args_collect):
|
||||||
|
(gtk_object_args_collect):
|
||||||
|
(gtk_container_child_args_collect):
|
||||||
|
changed prototypes to pass first_arg_name, also, pass va_list variable
|
||||||
|
by value (portability concerns). callers changed.
|
||||||
|
|
||||||
|
* gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
|
||||||
|
a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
|
||||||
|
can't pass va_list variables by reference for portability reasons.
|
||||||
|
|
||||||
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
||||||
|
|
||||||
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
||||||
|
@ -1,3 +1,31 @@
|
|||||||
|
Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkarg.h:
|
||||||
|
* gtk/gtkarg.c:
|
||||||
|
* gtk/gtkwidget.h:
|
||||||
|
* gtk/gtkwidget.c:
|
||||||
|
* gtk/gtkobject.h:
|
||||||
|
* gtk/gtkobject.c:
|
||||||
|
* gtk/gtkcontainer.h:
|
||||||
|
* gtk/gtkcontainer.c:
|
||||||
|
(gtk_object_new):
|
||||||
|
(gtk_object_set):
|
||||||
|
(gtk_widget_new):
|
||||||
|
(gtk_widget_set):
|
||||||
|
(gtk_container_add_with_args):
|
||||||
|
(gtk_container_child_set):
|
||||||
|
begin the parameter elipsis (...) after the first argument name. this
|
||||||
|
change is source compatible, since it was always required, even as NULL.
|
||||||
|
(gtk_args_collect):
|
||||||
|
(gtk_object_args_collect):
|
||||||
|
(gtk_container_child_args_collect):
|
||||||
|
changed prototypes to pass first_arg_name, also, pass va_list variable
|
||||||
|
by value (portability concerns). callers changed.
|
||||||
|
|
||||||
|
* gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
|
||||||
|
a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
|
||||||
|
can't pass va_list variables by reference for portability reasons.
|
||||||
|
|
||||||
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
||||||
|
|
||||||
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
||||||
|
@ -1,3 +1,31 @@
|
|||||||
|
Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkarg.h:
|
||||||
|
* gtk/gtkarg.c:
|
||||||
|
* gtk/gtkwidget.h:
|
||||||
|
* gtk/gtkwidget.c:
|
||||||
|
* gtk/gtkobject.h:
|
||||||
|
* gtk/gtkobject.c:
|
||||||
|
* gtk/gtkcontainer.h:
|
||||||
|
* gtk/gtkcontainer.c:
|
||||||
|
(gtk_object_new):
|
||||||
|
(gtk_object_set):
|
||||||
|
(gtk_widget_new):
|
||||||
|
(gtk_widget_set):
|
||||||
|
(gtk_container_add_with_args):
|
||||||
|
(gtk_container_child_set):
|
||||||
|
begin the parameter elipsis (...) after the first argument name. this
|
||||||
|
change is source compatible, since it was always required, even as NULL.
|
||||||
|
(gtk_args_collect):
|
||||||
|
(gtk_object_args_collect):
|
||||||
|
(gtk_container_child_args_collect):
|
||||||
|
changed prototypes to pass first_arg_name, also, pass va_list variable
|
||||||
|
by value (portability concerns). callers changed.
|
||||||
|
|
||||||
|
* gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
|
||||||
|
a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
|
||||||
|
can't pass va_list variables by reference for portability reasons.
|
||||||
|
|
||||||
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
||||||
|
|
||||||
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
||||||
|
@ -1,3 +1,31 @@
|
|||||||
|
Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkarg.h:
|
||||||
|
* gtk/gtkarg.c:
|
||||||
|
* gtk/gtkwidget.h:
|
||||||
|
* gtk/gtkwidget.c:
|
||||||
|
* gtk/gtkobject.h:
|
||||||
|
* gtk/gtkobject.c:
|
||||||
|
* gtk/gtkcontainer.h:
|
||||||
|
* gtk/gtkcontainer.c:
|
||||||
|
(gtk_object_new):
|
||||||
|
(gtk_object_set):
|
||||||
|
(gtk_widget_new):
|
||||||
|
(gtk_widget_set):
|
||||||
|
(gtk_container_add_with_args):
|
||||||
|
(gtk_container_child_set):
|
||||||
|
begin the parameter elipsis (...) after the first argument name. this
|
||||||
|
change is source compatible, since it was always required, even as NULL.
|
||||||
|
(gtk_args_collect):
|
||||||
|
(gtk_object_args_collect):
|
||||||
|
(gtk_container_child_args_collect):
|
||||||
|
changed prototypes to pass first_arg_name, also, pass va_list variable
|
||||||
|
by value (portability concerns). callers changed.
|
||||||
|
|
||||||
|
* gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
|
||||||
|
a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
|
||||||
|
can't pass va_list variables by reference for portability reasons.
|
||||||
|
|
||||||
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
||||||
|
|
||||||
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
||||||
|
@ -1,3 +1,31 @@
|
|||||||
|
Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
|
||||||
|
|
||||||
|
* gtk/gtkarg.h:
|
||||||
|
* gtk/gtkarg.c:
|
||||||
|
* gtk/gtkwidget.h:
|
||||||
|
* gtk/gtkwidget.c:
|
||||||
|
* gtk/gtkobject.h:
|
||||||
|
* gtk/gtkobject.c:
|
||||||
|
* gtk/gtkcontainer.h:
|
||||||
|
* gtk/gtkcontainer.c:
|
||||||
|
(gtk_object_new):
|
||||||
|
(gtk_object_set):
|
||||||
|
(gtk_widget_new):
|
||||||
|
(gtk_widget_set):
|
||||||
|
(gtk_container_add_with_args):
|
||||||
|
(gtk_container_child_set):
|
||||||
|
begin the parameter elipsis (...) after the first argument name. this
|
||||||
|
change is source compatible, since it was always required, even as NULL.
|
||||||
|
(gtk_args_collect):
|
||||||
|
(gtk_object_args_collect):
|
||||||
|
(gtk_container_child_args_collect):
|
||||||
|
changed prototypes to pass first_arg_name, also, pass va_list variable
|
||||||
|
by value (portability concerns). callers changed.
|
||||||
|
|
||||||
|
* gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
|
||||||
|
a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
|
||||||
|
can't pass va_list variables by reference for portability reasons.
|
||||||
|
|
||||||
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
|
||||||
|
|
||||||
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
* gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
|
||||||
|
14
gtk/gtkarg.c
14
gtk/gtkarg.c
@ -233,12 +233,12 @@ gtk_args_collect (GtkType object_type,
|
|||||||
GHashTable *arg_info_hash_table,
|
GHashTable *arg_info_hash_table,
|
||||||
GSList **arg_list_p,
|
GSList **arg_list_p,
|
||||||
GSList **info_list_p,
|
GSList **info_list_p,
|
||||||
gpointer var_args_p)
|
const gchar *first_arg_name,
|
||||||
|
va_list var_args)
|
||||||
{
|
{
|
||||||
GSList *arg_list;
|
GSList *arg_list;
|
||||||
GSList *info_list;
|
GSList *info_list;
|
||||||
gchar *arg_name;
|
const gchar *arg_name;
|
||||||
va_list *var_args = var_args_p;
|
|
||||||
|
|
||||||
g_return_val_if_fail (arg_list_p != NULL, NULL);
|
g_return_val_if_fail (arg_list_p != NULL, NULL);
|
||||||
*arg_list_p = NULL;
|
*arg_list_p = NULL;
|
||||||
@ -248,7 +248,7 @@ gtk_args_collect (GtkType object_type,
|
|||||||
|
|
||||||
arg_list = NULL;
|
arg_list = NULL;
|
||||||
info_list = NULL;
|
info_list = NULL;
|
||||||
arg_name = va_arg (*var_args, gchar*);
|
arg_name = first_arg_name;
|
||||||
while (arg_name)
|
while (arg_name)
|
||||||
{
|
{
|
||||||
GtkArgInfo *info = NULL;
|
GtkArgInfo *info = NULL;
|
||||||
@ -262,8 +262,8 @@ gtk_args_collect (GtkType object_type,
|
|||||||
info_list = g_slist_prepend (info_list, info);
|
info_list = g_slist_prepend (info_list, info);
|
||||||
|
|
||||||
arg = gtk_arg_new (info->type);
|
arg = gtk_arg_new (info->type);
|
||||||
arg->name = arg_name;
|
arg->name = (gchar*) arg_name;
|
||||||
error = gtk_arg_collect_value (GTK_FUNDAMENTAL_TYPE (arg->type), arg, var_args);
|
GTK_ARG_COLLECT_VALUE (GTK_FUNDAMENTAL_TYPE (arg->type), arg, var_args, error);
|
||||||
arg_list = g_slist_prepend (arg_list, arg);
|
arg_list = g_slist_prepend (arg_list, arg);
|
||||||
}
|
}
|
||||||
if (error)
|
if (error)
|
||||||
@ -273,7 +273,7 @@ gtk_args_collect (GtkType object_type,
|
|||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
arg_name = va_arg (*var_args, gchar*);
|
arg_name = va_arg (var_args, gchar*);
|
||||||
}
|
}
|
||||||
|
|
||||||
*arg_list_p = g_slist_reverse (arg_list);
|
*arg_list_p = g_slist_reverse (arg_list);
|
||||||
|
@ -60,7 +60,8 @@ gchar* gtk_args_collect (GtkType object_type,
|
|||||||
GHashTable *arg_info_hash_table,
|
GHashTable *arg_info_hash_table,
|
||||||
GSList **arg_list_p,
|
GSList **arg_list_p,
|
||||||
GSList **info_list_p,
|
GSList **info_list_p,
|
||||||
gpointer var_args_p);
|
const gchar *first_arg_name,
|
||||||
|
va_list var_args);
|
||||||
void gtk_args_collect_cleanup (GSList *arg_list,
|
void gtk_args_collect_cleanup (GSList *arg_list,
|
||||||
GSList *info_list);
|
GSList *info_list);
|
||||||
gchar* gtk_arg_get_info (GtkType object_type,
|
gchar* gtk_arg_get_info (GtkType object_type,
|
||||||
|
@ -17,144 +17,149 @@
|
|||||||
* Boston, MA 02111-1307, USA.
|
* Boston, MA 02111-1307, USA.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* collect a single argument value from a va_list
|
/* collect a single argument value from a va_list.
|
||||||
|
* this is implemented as a huge macro <shrug>, because we can't
|
||||||
|
* pass va_list variables by reference on some systems.
|
||||||
|
* the former prototype was:
|
||||||
|
* static inline gchar*
|
||||||
|
* gtk_arg_collect_value (GtkType fundamental_type,
|
||||||
|
* GtkArg *arg,
|
||||||
|
* va_list var_args);
|
||||||
*/
|
*/
|
||||||
static inline gchar*
|
#define GTK_ARG_COLLECT_VALUE(_ft, arg, var_args, _error) \
|
||||||
gtk_arg_collect_value (GtkType fundamental_type,
|
G_STMT_START { \
|
||||||
GtkArg *arg,
|
GtkType fundamental_type = _ft; \
|
||||||
va_list *var_args)
|
gchar *error_msg; \
|
||||||
{
|
\
|
||||||
gchar *error_msg;
|
error_msg = NULL; \
|
||||||
|
switch (fundamental_type) \
|
||||||
error_msg = NULL;
|
{ \
|
||||||
switch (fundamental_type)
|
case GTK_TYPE_INVALID: \
|
||||||
{
|
error_msg = g_strdup ("invalid untyped argument"); \
|
||||||
case GTK_TYPE_INVALID:
|
break; \
|
||||||
error_msg = g_strdup ("invalid untyped argument");
|
\
|
||||||
break;
|
case GTK_TYPE_NONE: \
|
||||||
|
/* we just ignore this type, since it arithmetically just requires \
|
||||||
case GTK_TYPE_NONE:
|
* us to not move the var_args pointer any further. callers need to \
|
||||||
/* we just ignore this type, since it arithmetically just requires
|
* check for the validity of GTK_TYPE_NONE themselves. \
|
||||||
* us to not move the var_args pointer any further. callers need to
|
* \
|
||||||
* check for the validity of GTK_TYPE_NONE themselves.
|
* error_msg = g_strdup ("invalid argument type `void'"); \
|
||||||
*
|
*/ \
|
||||||
* error_msg = g_strdup ("invalid argument type `void'");
|
break; \
|
||||||
*/
|
\
|
||||||
break;
|
/* everything smaller than an int is guarranteed to be \
|
||||||
|
* passed as an int \
|
||||||
/* everything smaller than an int is guarranteed to be
|
*/ \
|
||||||
* passed as an int
|
case GTK_TYPE_CHAR: \
|
||||||
*/
|
GTK_VALUE_CHAR (*arg) = va_arg (var_args, gint); \
|
||||||
case GTK_TYPE_CHAR:
|
break; \
|
||||||
GTK_VALUE_CHAR (*arg) = va_arg (*var_args, gint);
|
case GTK_TYPE_UCHAR: \
|
||||||
break;
|
GTK_VALUE_UCHAR (*arg) = va_arg (var_args, guint); \
|
||||||
case GTK_TYPE_UCHAR:
|
break; \
|
||||||
GTK_VALUE_UCHAR (*arg) = va_arg (*var_args, guint);
|
case GTK_TYPE_BOOL: \
|
||||||
break;
|
GTK_VALUE_BOOL (*arg) = va_arg (var_args, gint); \
|
||||||
case GTK_TYPE_BOOL:
|
break; \
|
||||||
GTK_VALUE_BOOL (*arg) = va_arg (*var_args, gint);
|
case GTK_TYPE_INT: \
|
||||||
break;
|
GTK_VALUE_INT (*arg) = va_arg (var_args, gint); \
|
||||||
case GTK_TYPE_INT:
|
break; \
|
||||||
GTK_VALUE_INT (*arg) = va_arg (*var_args, gint);
|
case GTK_TYPE_UINT: \
|
||||||
break;
|
GTK_VALUE_UINT (*arg) = va_arg (var_args, guint); \
|
||||||
case GTK_TYPE_UINT:
|
break; \
|
||||||
GTK_VALUE_UINT (*arg) = va_arg (*var_args, guint);
|
case GTK_TYPE_ENUM: \
|
||||||
break;
|
GTK_VALUE_ENUM (*arg) = va_arg (var_args, gint); \
|
||||||
case GTK_TYPE_ENUM:
|
break; \
|
||||||
GTK_VALUE_ENUM (*arg) = va_arg (*var_args, gint);
|
case GTK_TYPE_FLAGS: \
|
||||||
break;
|
GTK_VALUE_FLAGS (*arg) = va_arg (var_args, guint); \
|
||||||
case GTK_TYPE_FLAGS:
|
break; \
|
||||||
GTK_VALUE_FLAGS (*arg) = va_arg (*var_args, guint);
|
\
|
||||||
break;
|
/* we collect longs as glongs since they differ in size with \
|
||||||
|
* integers on some platforms \
|
||||||
/* we collect longs as glongs since they differ in size with
|
*/ \
|
||||||
* integers on some platforms
|
case GTK_TYPE_LONG: \
|
||||||
*/
|
GTK_VALUE_LONG (*arg) = va_arg (var_args, glong); \
|
||||||
case GTK_TYPE_LONG:
|
break; \
|
||||||
GTK_VALUE_LONG (*arg) = va_arg (*var_args, glong);
|
case GTK_TYPE_ULONG: \
|
||||||
break;
|
GTK_VALUE_ULONG (*arg) = va_arg (var_args, gulong); \
|
||||||
case GTK_TYPE_ULONG:
|
break; \
|
||||||
GTK_VALUE_ULONG (*arg) = va_arg (*var_args, gulong);
|
\
|
||||||
break;
|
/* floats are always passed as doubles \
|
||||||
|
*/ \
|
||||||
/* floats are always passed as doubles
|
case GTK_TYPE_FLOAT: \
|
||||||
*/
|
/* GTK_VALUE_FLOAT (*arg) = va_arg (var_args, gfloat); */ \
|
||||||
case GTK_TYPE_FLOAT:
|
GTK_VALUE_FLOAT (*arg) = va_arg (var_args, gdouble); \
|
||||||
/* GTK_VALUE_FLOAT (*arg) = va_arg (*var_args, gfloat); */
|
break; \
|
||||||
GTK_VALUE_FLOAT (*arg) = va_arg (*var_args, gdouble);
|
case GTK_TYPE_DOUBLE: \
|
||||||
break;
|
GTK_VALUE_DOUBLE (*arg) = va_arg (var_args, gdouble); \
|
||||||
case GTK_TYPE_DOUBLE:
|
break; \
|
||||||
GTK_VALUE_DOUBLE (*arg) = va_arg (*var_args, gdouble);
|
\
|
||||||
break;
|
/* collect pointer values \
|
||||||
|
*/ \
|
||||||
/* collect pointer values
|
case GTK_TYPE_STRING: \
|
||||||
*/
|
GTK_VALUE_STRING (*arg) = va_arg (var_args, gchar*); \
|
||||||
case GTK_TYPE_STRING:
|
break; \
|
||||||
GTK_VALUE_STRING (*arg) = va_arg (*var_args, gchar*);
|
case GTK_TYPE_POINTER: \
|
||||||
break;
|
GTK_VALUE_POINTER (*arg) = va_arg (var_args, gpointer); \
|
||||||
case GTK_TYPE_POINTER:
|
break; \
|
||||||
GTK_VALUE_POINTER (*arg) = va_arg (*var_args, gpointer);
|
case GTK_TYPE_BOXED: \
|
||||||
break;
|
GTK_VALUE_BOXED (*arg) = va_arg (var_args, gpointer); \
|
||||||
case GTK_TYPE_BOXED:
|
break; \
|
||||||
GTK_VALUE_BOXED (*arg) = va_arg (*var_args, gpointer);
|
\
|
||||||
break;
|
/* structured types \
|
||||||
|
*/ \
|
||||||
/* structured types
|
case GTK_TYPE_SIGNAL: \
|
||||||
*/
|
GTK_VALUE_SIGNAL (*arg).f = va_arg (var_args, GtkSignalFunc); \
|
||||||
case GTK_TYPE_SIGNAL:
|
GTK_VALUE_SIGNAL (*arg).d = va_arg (var_args, gpointer); \
|
||||||
GTK_VALUE_SIGNAL (*arg).f = va_arg (*var_args, GtkSignalFunc);
|
break; \
|
||||||
GTK_VALUE_SIGNAL (*arg).d = va_arg (*var_args, gpointer);
|
case GTK_TYPE_ARGS: \
|
||||||
break;
|
GTK_VALUE_ARGS (*arg).n_args = va_arg (var_args, gint); \
|
||||||
case GTK_TYPE_ARGS:
|
GTK_VALUE_ARGS (*arg).args = va_arg (var_args, GtkArg*); \
|
||||||
GTK_VALUE_ARGS (*arg).n_args = va_arg (*var_args, gint);
|
break; \
|
||||||
GTK_VALUE_ARGS (*arg).args = va_arg (*var_args, GtkArg*);
|
case GTK_TYPE_FOREIGN: \
|
||||||
break;
|
GTK_VALUE_FOREIGN (*arg).data = va_arg (var_args, gpointer); \
|
||||||
case GTK_TYPE_FOREIGN:
|
GTK_VALUE_FOREIGN (*arg).notify = va_arg (var_args, GtkDestroyNotify); \
|
||||||
GTK_VALUE_FOREIGN (*arg).data = va_arg (*var_args, gpointer);
|
break; \
|
||||||
GTK_VALUE_FOREIGN (*arg).notify = va_arg (*var_args, GtkDestroyNotify);
|
case GTK_TYPE_CALLBACK: \
|
||||||
break;
|
GTK_VALUE_CALLBACK (*arg).marshal = va_arg (var_args, GtkCallbackMarshal); \
|
||||||
case GTK_TYPE_CALLBACK:
|
GTK_VALUE_CALLBACK (*arg).data = va_arg (var_args, gpointer); \
|
||||||
GTK_VALUE_CALLBACK (*arg).marshal = va_arg (*var_args, GtkCallbackMarshal);
|
GTK_VALUE_CALLBACK (*arg).notify = va_arg (var_args, GtkDestroyNotify); \
|
||||||
GTK_VALUE_CALLBACK (*arg).data = va_arg (*var_args, gpointer);
|
break; \
|
||||||
GTK_VALUE_CALLBACK (*arg).notify = va_arg (*var_args, GtkDestroyNotify);
|
case GTK_TYPE_C_CALLBACK: \
|
||||||
break;
|
GTK_VALUE_C_CALLBACK (*arg).func = va_arg (var_args, GtkFunction); \
|
||||||
case GTK_TYPE_C_CALLBACK:
|
GTK_VALUE_C_CALLBACK (*arg).func_data = va_arg (var_args, gpointer); \
|
||||||
GTK_VALUE_C_CALLBACK (*arg).func = va_arg (*var_args, GtkFunction);
|
break; \
|
||||||
GTK_VALUE_C_CALLBACK (*arg).func_data = va_arg (*var_args, gpointer);
|
\
|
||||||
break;
|
/* we do some extra sanity checking when collecting objects, \
|
||||||
|
* i.e. if the object pointer is not NULL, we check whether we \
|
||||||
/* we do some extra sanity checking when collecting objects,
|
* actually got an object pointer within the desired class branch. \
|
||||||
* i.e. if the object pointer is not NULL, we check whether we
|
*/ \
|
||||||
* actually got an object pointer within the desired class branch.
|
case GTK_TYPE_OBJECT: \
|
||||||
*/
|
GTK_VALUE_OBJECT (*arg) = va_arg (var_args, GtkObject*); \
|
||||||
case GTK_TYPE_OBJECT:
|
if (GTK_VALUE_OBJECT (*arg) != NULL) \
|
||||||
GTK_VALUE_OBJECT (*arg) = va_arg (*var_args, GtkObject*);
|
{ \
|
||||||
if (GTK_VALUE_OBJECT (*arg) != NULL)
|
register GtkObject *object = GTK_VALUE_OBJECT (*arg); \
|
||||||
{
|
\
|
||||||
register GtkObject *object = GTK_VALUE_OBJECT (*arg);
|
if (object->klass == NULL) \
|
||||||
|
error_msg = g_strconcat ("invalid unclassed object pointer for argument type `", \
|
||||||
if (object->klass == NULL)
|
gtk_type_name (arg->type), \
|
||||||
error_msg = g_strconcat ("invalid unclassed object pointer for argument type `",
|
"'", \
|
||||||
gtk_type_name (arg->type),
|
NULL); \
|
||||||
"'",
|
else if (!gtk_type_is_a (GTK_OBJECT_TYPE (object), arg->type)) \
|
||||||
NULL);
|
error_msg = g_strconcat ("invalid object `", \
|
||||||
else if (!gtk_type_is_a (GTK_OBJECT_TYPE (object), arg->type))
|
gtk_type_name (GTK_OBJECT_TYPE (object)), \
|
||||||
error_msg = g_strconcat ("invalid object `",
|
"' for argument type `", \
|
||||||
gtk_type_name (GTK_OBJECT_TYPE (object)),
|
gtk_type_name (arg->type), \
|
||||||
"' for argument type `",
|
"'", \
|
||||||
gtk_type_name (arg->type),
|
NULL); \
|
||||||
"'",
|
} \
|
||||||
NULL);
|
break; \
|
||||||
}
|
\
|
||||||
break;
|
default: \
|
||||||
|
error_msg = g_strconcat ("unsupported argument type `", \
|
||||||
default:
|
gtk_type_name (arg->type), \
|
||||||
error_msg = g_strconcat ("unsupported argument type `",
|
"'", \
|
||||||
gtk_type_name (arg->type),
|
NULL); \
|
||||||
"'",
|
break; \
|
||||||
NULL);
|
} \
|
||||||
break;
|
\
|
||||||
}
|
_error = error_msg; /* return error_msg; */ \
|
||||||
|
} G_STMT_END
|
||||||
return error_msg;
|
|
||||||
}
|
|
||||||
|
@ -250,6 +250,7 @@ gtk_container_child_type (GtkContainer *container)
|
|||||||
void
|
void
|
||||||
gtk_container_add_with_args (GtkContainer *container,
|
gtk_container_add_with_args (GtkContainer *container,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...)
|
...)
|
||||||
{
|
{
|
||||||
g_return_if_fail (container != NULL);
|
g_return_if_fail (container != NULL);
|
||||||
@ -270,11 +271,12 @@ gtk_container_add_with_args (GtkContainer *container,
|
|||||||
GSList *info_list = NULL;
|
GSList *info_list = NULL;
|
||||||
gchar *error;
|
gchar *error;
|
||||||
|
|
||||||
va_start (var_args, widget);
|
va_start (var_args, first_arg_name);
|
||||||
error = gtk_container_child_args_collect (GTK_OBJECT_TYPE (container),
|
error = gtk_container_child_args_collect (GTK_OBJECT_TYPE (container),
|
||||||
&arg_list,
|
&arg_list,
|
||||||
&info_list,
|
&info_list,
|
||||||
&var_args);
|
first_arg_name,
|
||||||
|
var_args);
|
||||||
va_end (var_args);
|
va_end (var_args);
|
||||||
|
|
||||||
if (error)
|
if (error)
|
||||||
@ -375,6 +377,7 @@ gtk_container_child_getv (GtkContainer *container,
|
|||||||
void
|
void
|
||||||
gtk_container_child_set (GtkContainer *container,
|
gtk_container_child_set (GtkContainer *container,
|
||||||
GtkWidget *child,
|
GtkWidget *child,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...)
|
...)
|
||||||
{
|
{
|
||||||
va_list var_args;
|
va_list var_args;
|
||||||
@ -388,11 +391,12 @@ gtk_container_child_set (GtkContainer *container,
|
|||||||
g_return_if_fail (GTK_IS_WIDGET (child));
|
g_return_if_fail (GTK_IS_WIDGET (child));
|
||||||
g_return_if_fail (child->parent != NULL);
|
g_return_if_fail (child->parent != NULL);
|
||||||
|
|
||||||
va_start (var_args, child);
|
va_start (var_args, first_arg_name);
|
||||||
error = gtk_container_child_args_collect (GTK_OBJECT_TYPE (container),
|
error = gtk_container_child_args_collect (GTK_OBJECT_TYPE (container),
|
||||||
&arg_list,
|
&arg_list,
|
||||||
&info_list,
|
&info_list,
|
||||||
&var_args);
|
first_arg_name,
|
||||||
|
var_args);
|
||||||
va_end (var_args);
|
va_end (var_args);
|
||||||
|
|
||||||
if (error)
|
if (error)
|
||||||
@ -541,13 +545,15 @@ gchar*
|
|||||||
gtk_container_child_args_collect (GtkType object_type,
|
gtk_container_child_args_collect (GtkType object_type,
|
||||||
GSList **arg_list_p,
|
GSList **arg_list_p,
|
||||||
GSList **info_list_p,
|
GSList **info_list_p,
|
||||||
gpointer var_args_p)
|
const gchar *first_arg_name,
|
||||||
|
va_list var_args)
|
||||||
{
|
{
|
||||||
return gtk_args_collect (object_type,
|
return gtk_args_collect (object_type,
|
||||||
container_child_arg_info_ht,
|
container_child_arg_info_ht,
|
||||||
arg_list_p,
|
arg_list_p,
|
||||||
info_list_p,
|
info_list_p,
|
||||||
var_args_p);
|
first_arg_name,
|
||||||
|
var_args);
|
||||||
}
|
}
|
||||||
|
|
||||||
gchar*
|
gchar*
|
||||||
|
@ -174,6 +174,7 @@ void gtk_container_child_setv (GtkContainer *container,
|
|||||||
*/
|
*/
|
||||||
void gtk_container_add_with_args (GtkContainer *container,
|
void gtk_container_add_with_args (GtkContainer *container,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...);
|
...);
|
||||||
void gtk_container_addv (GtkContainer *container,
|
void gtk_container_addv (GtkContainer *container,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
@ -181,6 +182,7 @@ void gtk_container_addv (GtkContainer *container,
|
|||||||
GtkArg *args);
|
GtkArg *args);
|
||||||
void gtk_container_child_set (GtkContainer *container,
|
void gtk_container_child_set (GtkContainer *container,
|
||||||
GtkWidget *child,
|
GtkWidget *child,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...);
|
...);
|
||||||
|
|
||||||
|
|
||||||
@ -199,7 +201,8 @@ void gtk_container_arg_get (GtkContainer *container,
|
|||||||
gchar* gtk_container_child_args_collect (GtkType object_type,
|
gchar* gtk_container_child_args_collect (GtkType object_type,
|
||||||
GSList **arg_list_p,
|
GSList **arg_list_p,
|
||||||
GSList **info_list_p,
|
GSList **info_list_p,
|
||||||
gpointer var_args_p);
|
const gchar *first_arg_name,
|
||||||
|
va_list args);
|
||||||
gchar* gtk_container_child_arg_get_info (GtkType object_type,
|
gchar* gtk_container_child_arg_get_info (GtkType object_type,
|
||||||
const gchar *arg_name,
|
const gchar *arg_name,
|
||||||
GtkArgInfo **info_p);
|
GtkArgInfo **info_p);
|
||||||
|
@ -1481,7 +1481,7 @@ gtk_item_factory_parse_statement (GScanner *scanner,
|
|||||||
|
|
||||||
parser_func = scanner->value.v_symbol;
|
parser_func = scanner->value.v_symbol;
|
||||||
|
|
||||||
/* check whether this is a GtkItemFactory symbol...
|
/* check whether this is a GtkItemFactory symbol.
|
||||||
*/
|
*/
|
||||||
if (parser_func == gtk_item_factory_parse_menu_path)
|
if (parser_func == gtk_item_factory_parse_menu_path)
|
||||||
expected_token = parser_func (scanner, class);
|
expected_token = parser_func (scanner, class);
|
||||||
|
@ -621,7 +621,8 @@ gtk_object_notify_weaks (GtkObject *object)
|
|||||||
****************************************************/
|
****************************************************/
|
||||||
|
|
||||||
GtkObject*
|
GtkObject*
|
||||||
gtk_object_new (GtkType object_type,
|
gtk_object_new (GtkType object_type,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...)
|
...)
|
||||||
{
|
{
|
||||||
GtkObject *object;
|
GtkObject *object;
|
||||||
@ -634,11 +635,12 @@ gtk_object_new (GtkType object_type,
|
|||||||
|
|
||||||
object = gtk_type_new (object_type);
|
object = gtk_type_new (object_type);
|
||||||
|
|
||||||
va_start (var_args, object_type);
|
va_start (var_args, first_arg_name);
|
||||||
error = gtk_object_args_collect (GTK_OBJECT_TYPE (object),
|
error = gtk_object_args_collect (GTK_OBJECT_TYPE (object),
|
||||||
&arg_list,
|
&arg_list,
|
||||||
&info_list,
|
&info_list,
|
||||||
&var_args);
|
first_arg_name,
|
||||||
|
var_args);
|
||||||
va_end (var_args);
|
va_end (var_args);
|
||||||
|
|
||||||
if (error)
|
if (error)
|
||||||
@ -719,6 +721,7 @@ gtk_object_getv (GtkObject *object,
|
|||||||
|
|
||||||
void
|
void
|
||||||
gtk_object_set (GtkObject *object,
|
gtk_object_set (GtkObject *object,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...)
|
...)
|
||||||
{
|
{
|
||||||
va_list var_args;
|
va_list var_args;
|
||||||
@ -729,11 +732,12 @@ gtk_object_set (GtkObject *object,
|
|||||||
g_return_if_fail (object != NULL);
|
g_return_if_fail (object != NULL);
|
||||||
g_return_if_fail (GTK_IS_OBJECT (object));
|
g_return_if_fail (GTK_IS_OBJECT (object));
|
||||||
|
|
||||||
va_start (var_args, object);
|
va_start (var_args, first_arg_name);
|
||||||
error = gtk_object_args_collect (GTK_OBJECT_TYPE (object),
|
error = gtk_object_args_collect (GTK_OBJECT_TYPE (object),
|
||||||
&arg_list,
|
&arg_list,
|
||||||
&info_list,
|
&info_list,
|
||||||
&var_args);
|
first_arg_name,
|
||||||
|
var_args);
|
||||||
va_end (var_args);
|
va_end (var_args);
|
||||||
|
|
||||||
if (error)
|
if (error)
|
||||||
@ -878,13 +882,15 @@ gchar*
|
|||||||
gtk_object_args_collect (GtkType object_type,
|
gtk_object_args_collect (GtkType object_type,
|
||||||
GSList **arg_list_p,
|
GSList **arg_list_p,
|
||||||
GSList **info_list_p,
|
GSList **info_list_p,
|
||||||
gpointer var_args_p)
|
const gchar *first_arg_name,
|
||||||
|
va_list var_args)
|
||||||
{
|
{
|
||||||
return gtk_args_collect (object_type,
|
return gtk_args_collect (object_type,
|
||||||
object_arg_info_ht,
|
object_arg_info_ht,
|
||||||
arg_list_p,
|
arg_list_p,
|
||||||
info_list_p,
|
info_list_p,
|
||||||
var_args_p);
|
first_arg_name,
|
||||||
|
var_args);
|
||||||
}
|
}
|
||||||
|
|
||||||
gchar*
|
gchar*
|
||||||
|
@ -242,6 +242,7 @@ guint gtk_object_class_user_signal_newv (GtkObjectClass *klass,
|
|||||||
guint nparams,
|
guint nparams,
|
||||||
GtkType *params);
|
GtkType *params);
|
||||||
GtkObject* gtk_object_new (GtkType type,
|
GtkObject* gtk_object_new (GtkType type,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...);
|
...);
|
||||||
GtkObject* gtk_object_newv (GtkType object_type,
|
GtkObject* gtk_object_newv (GtkType object_type,
|
||||||
guint n_args,
|
guint n_args,
|
||||||
@ -272,6 +273,7 @@ void gtk_object_getv (GtkObject *object,
|
|||||||
* more than one c-function argument.
|
* more than one c-function argument.
|
||||||
*/
|
*/
|
||||||
void gtk_object_set (GtkObject *object,
|
void gtk_object_set (GtkObject *object,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...);
|
...);
|
||||||
void gtk_object_setv (GtkObject *object,
|
void gtk_object_setv (GtkObject *object,
|
||||||
guint n_args,
|
guint n_args,
|
||||||
@ -372,7 +374,8 @@ void gtk_object_arg_get (GtkObject *object,
|
|||||||
gchar* gtk_object_args_collect (GtkType object_type,
|
gchar* gtk_object_args_collect (GtkType object_type,
|
||||||
GSList **arg_list_p,
|
GSList **arg_list_p,
|
||||||
GSList **info_list_p,
|
GSList **info_list_p,
|
||||||
gpointer var_args_p);
|
const gchar *first_arg_name,
|
||||||
|
va_list var_args);
|
||||||
gchar* gtk_object_arg_get_info (GtkType object_type,
|
gchar* gtk_object_arg_get_info (GtkType object_type,
|
||||||
const gchar *arg_name,
|
const gchar *arg_name,
|
||||||
GtkArgInfo **info_p);
|
GtkArgInfo **info_p);
|
||||||
|
@ -1780,9 +1780,10 @@ gtk_signal_collect_params (GtkArg *params,
|
|||||||
|
|
||||||
params->type = *(param_types++);
|
params->type = *(param_types++);
|
||||||
params->name = NULL;
|
params->name = NULL;
|
||||||
error = gtk_arg_collect_value (GTK_FUNDAMENTAL_TYPE (params->type),
|
GTK_ARG_COLLECT_VALUE (GTK_FUNDAMENTAL_TYPE (params->type),
|
||||||
params,
|
params,
|
||||||
&var_args);
|
var_args,
|
||||||
|
error);
|
||||||
if (error)
|
if (error)
|
||||||
{
|
{
|
||||||
failed = TRUE;
|
failed = TRUE;
|
||||||
|
@ -955,7 +955,8 @@ gtk_widget_init (GtkWidget *widget)
|
|||||||
*****************************************/
|
*****************************************/
|
||||||
|
|
||||||
GtkWidget*
|
GtkWidget*
|
||||||
gtk_widget_new (guint widget_type,
|
gtk_widget_new (GtkType widget_type,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...)
|
...)
|
||||||
{
|
{
|
||||||
GtkObject *object;
|
GtkObject *object;
|
||||||
@ -968,11 +969,12 @@ gtk_widget_new (guint widget_type,
|
|||||||
|
|
||||||
object = gtk_type_new (widget_type);
|
object = gtk_type_new (widget_type);
|
||||||
|
|
||||||
va_start (var_args, widget_type);
|
va_start (var_args, first_arg_name);
|
||||||
error = gtk_object_args_collect (GTK_OBJECT_TYPE (object),
|
error = gtk_object_args_collect (GTK_OBJECT_TYPE (object),
|
||||||
&arg_list,
|
&arg_list,
|
||||||
&info_list,
|
&info_list,
|
||||||
&var_args);
|
first_arg_name,
|
||||||
|
var_args);
|
||||||
va_end (var_args);
|
va_end (var_args);
|
||||||
|
|
||||||
if (error)
|
if (error)
|
||||||
@ -1008,7 +1010,7 @@ gtk_widget_new (guint widget_type,
|
|||||||
*****************************************/
|
*****************************************/
|
||||||
|
|
||||||
GtkWidget*
|
GtkWidget*
|
||||||
gtk_widget_newv (guint type,
|
gtk_widget_newv (GtkType type,
|
||||||
guint nargs,
|
guint nargs,
|
||||||
GtkArg *args)
|
GtkArg *args)
|
||||||
{
|
{
|
||||||
@ -1060,7 +1062,8 @@ gtk_widget_getv (GtkWidget *widget,
|
|||||||
*****************************************/
|
*****************************************/
|
||||||
|
|
||||||
void
|
void
|
||||||
gtk_widget_set (GtkWidget *widget,
|
gtk_widget_set (GtkWidget *widget,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...)
|
...)
|
||||||
{
|
{
|
||||||
GtkObject *object;
|
GtkObject *object;
|
||||||
@ -1074,11 +1077,12 @@ gtk_widget_set (GtkWidget *widget,
|
|||||||
|
|
||||||
object = GTK_OBJECT (widget);
|
object = GTK_OBJECT (widget);
|
||||||
|
|
||||||
va_start (var_args, widget);
|
va_start (var_args, first_arg_name);
|
||||||
error = gtk_object_args_collect (GTK_OBJECT_TYPE (object),
|
error = gtk_object_args_collect (GTK_OBJECT_TYPE (object),
|
||||||
&arg_list,
|
&arg_list,
|
||||||
&info_list,
|
&info_list,
|
||||||
&var_args);
|
first_arg_name,
|
||||||
|
var_args);
|
||||||
va_end (var_args);
|
va_end (var_args);
|
||||||
|
|
||||||
if (error)
|
if (error)
|
||||||
|
@ -360,9 +360,10 @@ struct _GtkWidgetShapeInfo
|
|||||||
|
|
||||||
|
|
||||||
GtkType gtk_widget_get_type (void);
|
GtkType gtk_widget_get_type (void);
|
||||||
GtkWidget* gtk_widget_new (guint type,
|
GtkWidget* gtk_widget_new (GtkType type,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...);
|
...);
|
||||||
GtkWidget* gtk_widget_newv (guint type,
|
GtkWidget* gtk_widget_newv (GtkType type,
|
||||||
guint nargs,
|
guint nargs,
|
||||||
GtkArg *args);
|
GtkArg *args);
|
||||||
void gtk_widget_ref (GtkWidget *widget);
|
void gtk_widget_ref (GtkWidget *widget);
|
||||||
@ -376,6 +377,7 @@ void gtk_widget_getv (GtkWidget *widget,
|
|||||||
guint nargs,
|
guint nargs,
|
||||||
GtkArg *args);
|
GtkArg *args);
|
||||||
void gtk_widget_set (GtkWidget *widget,
|
void gtk_widget_set (GtkWidget *widget,
|
||||||
|
const gchar *first_arg_name,
|
||||||
...);
|
...);
|
||||||
void gtk_widget_setv (GtkWidget *widget,
|
void gtk_widget_setv (GtkWidget *widget,
|
||||||
guint nargs,
|
guint nargs,
|
||||||
|
Loading…
Reference in New Issue
Block a user