summaryrefslogtreecommitdiff
path: root/gtk/gtkcontainer.c
diff options
context:
space:
mode:
authorTim Janik <timj@gtk.org>1998-08-24 05:27:29 +0000
committerTim Janik <timj@src.gnome.org>1998-08-24 05:27:29 +0000
commit02a871bc3104655c339af984ea111ddc11ced545 (patch)
tree509355697bf71a948b32c2b47d12059101a2ac95 /gtk/gtkcontainer.c
parentdb10ace6c86c01e8dc08eb76044ad0e64deb3efb (diff)
downloadgdk-pixbuf-02a871bc3104655c339af984ea111ddc11ced545.tar.gz
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.
Diffstat (limited to 'gtk/gtkcontainer.c')
-rw-r--r--gtk/gtkcontainer.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/gtk/gtkcontainer.c b/gtk/gtkcontainer.c
index 8f3696f32..2bcc30b83 100644
--- a/gtk/gtkcontainer.c
+++ b/gtk/gtkcontainer.c
@@ -250,6 +250,7 @@ gtk_container_child_type (GtkContainer *container)
void
gtk_container_add_with_args (GtkContainer *container,
GtkWidget *widget,
+ const gchar *first_arg_name,
...)
{
g_return_if_fail (container != NULL);
@@ -270,11 +271,12 @@ gtk_container_add_with_args (GtkContainer *container,
GSList *info_list = NULL;
gchar *error;
- va_start (var_args, widget);
+ va_start (var_args, first_arg_name);
error = gtk_container_child_args_collect (GTK_OBJECT_TYPE (container),
&arg_list,
&info_list,
- &var_args);
+ first_arg_name,
+ var_args);
va_end (var_args);
if (error)
@@ -375,6 +377,7 @@ gtk_container_child_getv (GtkContainer *container,
void
gtk_container_child_set (GtkContainer *container,
GtkWidget *child,
+ const gchar *first_arg_name,
...)
{
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 (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),
&arg_list,
&info_list,
- &var_args);
+ first_arg_name,
+ var_args);
va_end (var_args);
if (error)
@@ -541,13 +545,15 @@ gchar*
gtk_container_child_args_collect (GtkType object_type,
GSList **arg_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,
container_child_arg_info_ht,
arg_list_p,
info_list_p,
- var_args_p);
+ first_arg_name,
+ var_args);
}
gchar*