summaryrefslogtreecommitdiff
path: root/gtk/gtkbin.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtk/gtkbin.c')
-rw-r--r--gtk/gtkbin.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/gtk/gtkbin.c b/gtk/gtkbin.c
index c0ba64fca..6e7f397df 100644
--- a/gtk/gtkbin.c
+++ b/gtk/gtkbin.c
@@ -34,6 +34,7 @@ static void gtk_bin_remove (GtkContainer *container,
static void gtk_bin_foreach (GtkContainer *container,
GtkCallback callback,
gpointer callback_data);
+static GtkType gtk_bin_child_type (GtkContainer*container);
static GtkContainerClass *parent_class = NULL;
@@ -84,6 +85,7 @@ gtk_bin_class_init (GtkBinClass *class)
container_class->add = gtk_bin_add;
container_class->remove = gtk_bin_remove;
container_class->foreach = gtk_bin_foreach;
+ container_class->child_type = gtk_bin_child_type;
}
static void
@@ -95,6 +97,15 @@ gtk_bin_init (GtkBin *bin)
}
+static GtkType
+gtk_bin_child_type (GtkContainer *container)
+{
+ if (!GTK_BIN (container)->child)
+ return GTK_TYPE_WIDGET;
+ else
+ return GTK_TYPE_NONE;
+}
+
static void
gtk_bin_map (GtkWidget *widget)
{