summaryrefslogtreecommitdiff
path: root/gtk/gtkbin.c
diff options
context:
space:
mode:
authorTristan Van Berkom <tristan.van.berkom@gmail.com>2010-04-21 01:32:55 -0400
committerTristan Van Berkom <tristan.van.berkom@gmail.com>2010-04-21 01:32:55 -0400
commit9306a73dfd5f061326a584a6c11971361fa7095a (patch)
tree2dc39fea16ed0ab8f4a07b99fb2c0d39238933e8 /gtk/gtkbin.c
parent504ec365a7d8c513820c5f27eb7fc63cbce58ce8 (diff)
downloadgtk+-9306a73dfd5f061326a584a6c11971361fa7095a.tar.gz
Added documentation, implemented gtk_extended_layout_is_height_for_width() where needed.NATIVE_LAYOUT_INCUBATOR_BRANCHPOINT
Diffstat (limited to 'gtk/gtkbin.c')
-rw-r--r--gtk/gtkbin.c32
1 files changed, 22 insertions, 10 deletions
diff --git a/gtk/gtkbin.c b/gtk/gtkbin.c
index 691fb89b6a..ed2796a89c 100644
--- a/gtk/gtkbin.c
+++ b/gtk/gtkbin.c
@@ -41,16 +41,16 @@ static void gtk_bin_forall (GtkContainer *container,
static GType gtk_bin_child_type (GtkContainer *container);
-static void gtk_bin_extended_layout_init (GtkExtendedLayoutIface *iface);
-static void gtk_bin_get_width_for_height (GtkExtendedLayout *layout,
- gint height,
- gint *minimum_width,
- gint *natural_width);
-static void gtk_bin_get_height_for_width (GtkExtendedLayout *layout,
- gint width,
- gint *minimum_height,
- gint *natural_height);
-
+static void gtk_bin_extended_layout_init (GtkExtendedLayoutIface *iface);
+static gboolean gtk_bin_is_height_for_width (GtkExtendedLayout *layout);
+static void gtk_bin_get_width_for_height (GtkExtendedLayout *layout,
+ gint height,
+ gint *minimum_width,
+ gint *natural_width);
+static void gtk_bin_get_height_for_width (GtkExtendedLayout *layout,
+ gint width,
+ gint *minimum_height,
+ gint *natural_height);
static GtkExtendedLayoutIface *parent_extended_layout_iface;
@@ -159,10 +159,22 @@ gtk_bin_extended_layout_init (GtkExtendedLayoutIface *iface)
{
parent_extended_layout_iface = g_type_interface_peek_parent (iface);
+ iface->is_height_for_width = gtk_bin_is_height_for_width;
iface->get_width_for_height = gtk_bin_get_width_for_height;
iface->get_height_for_width = gtk_bin_get_height_for_width;
}
+static gboolean
+gtk_bin_is_height_for_width (GtkExtendedLayout *layout)
+{
+ GtkBin *bin = GTK_BIN (layout);
+
+ if (bin->child)
+ return gtk_extended_layout_is_height_for_width (GTK_EXTENDED_LAYOUT (bin->child));
+
+ return TRUE;
+}
+
static void
get_child_padding_delta (GtkBin *bin,
gint *delta_h,