summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2001-05-21 15:56:19 +0000
committerOwen Taylor <otaylor@src.gnome.org>2001-05-21 15:56:19 +0000
commit479810cac75f31669b8712bce944d73cddf41253 (patch)
treee64febbfc9c07847f594d5a8b60cfd96109dd286
parentb85c58715204b142ddbe511811f8f08dac0a8270 (diff)
downloadgtk+-479810cac75f31669b8712bce944d73cddf41253.tar.gz
Only show the separator if both children are present and visible.
Mon May 21 11:29:21 2001 Owen Taylor <otaylor@redhat.com> * gtk/gtk{h,v,}paned.c: Only show the separator if both children are present and visible. * configure.in: Fixed reversed conditional causing all image libraries to be linked in.
-rw-r--r--ChangeLog7
-rw-r--r--ChangeLog.pre-2-07
-rw-r--r--ChangeLog.pre-2-107
-rw-r--r--ChangeLog.pre-2-27
-rw-r--r--ChangeLog.pre-2-47
-rw-r--r--ChangeLog.pre-2-67
-rw-r--r--ChangeLog.pre-2-87
-rw-r--r--configure.in4
-rw-r--r--docs/reference/gtk/tmpl/gtkrc.sgml1
-rw-r--r--gtk/gtkhpaned.c152
-rw-r--r--gtk/gtkpaned.c4
-rw-r--r--gtk/gtkvpaned.c157
12 files changed, 226 insertions, 141 deletions
diff --git a/ChangeLog b/ChangeLog
index 90b2c1ef08..a1aff594cd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Mon May 21 11:29:21 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtk{h,v,}paned.c: Only show the separator if
+
+ * configure.in: Fixed reversed conditional causing all image
+ libraries to be linked in.
+
2001-05-21 Joe Shaw <joe@ximian.com>
* gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0
index 90b2c1ef08..a1aff594cd 100644
--- a/ChangeLog.pre-2-0
+++ b/ChangeLog.pre-2-0
@@ -1,3 +1,10 @@
+Mon May 21 11:29:21 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtk{h,v,}paned.c: Only show the separator if
+
+ * configure.in: Fixed reversed conditional causing all image
+ libraries to be linked in.
+
2001-05-21 Joe Shaw <joe@ximian.com>
* gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index 90b2c1ef08..a1aff594cd 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,3 +1,10 @@
+Mon May 21 11:29:21 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtk{h,v,}paned.c: Only show the separator if
+
+ * configure.in: Fixed reversed conditional causing all image
+ libraries to be linked in.
+
2001-05-21 Joe Shaw <joe@ximian.com>
* gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2
index 90b2c1ef08..a1aff594cd 100644
--- a/ChangeLog.pre-2-2
+++ b/ChangeLog.pre-2-2
@@ -1,3 +1,10 @@
+Mon May 21 11:29:21 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtk{h,v,}paned.c: Only show the separator if
+
+ * configure.in: Fixed reversed conditional causing all image
+ libraries to be linked in.
+
2001-05-21 Joe Shaw <joe@ximian.com>
* gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4
index 90b2c1ef08..a1aff594cd 100644
--- a/ChangeLog.pre-2-4
+++ b/ChangeLog.pre-2-4
@@ -1,3 +1,10 @@
+Mon May 21 11:29:21 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtk{h,v,}paned.c: Only show the separator if
+
+ * configure.in: Fixed reversed conditional causing all image
+ libraries to be linked in.
+
2001-05-21 Joe Shaw <joe@ximian.com>
* gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6
index 90b2c1ef08..a1aff594cd 100644
--- a/ChangeLog.pre-2-6
+++ b/ChangeLog.pre-2-6
@@ -1,3 +1,10 @@
+Mon May 21 11:29:21 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtk{h,v,}paned.c: Only show the separator if
+
+ * configure.in: Fixed reversed conditional causing all image
+ libraries to be linked in.
+
2001-05-21 Joe Shaw <joe@ximian.com>
* gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index 90b2c1ef08..a1aff594cd 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,3 +1,10 @@
+Mon May 21 11:29:21 2001 Owen Taylor <otaylor@redhat.com>
+
+ * gtk/gtk{h,v,}paned.c: Only show the separator if
+
+ * configure.in: Fixed reversed conditional causing all image
+ libraries to be linked in.
+
2001-05-21 Joe Shaw <joe@ximian.com>
* gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
diff --git a/configure.in b/configure.in
index 2f44527600..58e8015e74 100644
--- a/configure.in
+++ b/configure.in
@@ -564,8 +564,6 @@ AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
if $dynworks ; then
- STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG"
-else
STATIC_LIB_DEPS=
if echo "$included_loaders" | grep "\(^\|\,\)tiff\(\$\|\,\)" > /dev/null; then
STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBTIFF"
@@ -576,6 +574,8 @@ else
if echo "$included_loaders" | grep "\(^\|\,\)png\(\$\|\,\)" > /dev/null; then
STATIC_LIB_DEPS="$STATIC_LIB_DEPS $LIBPNG"
fi
+else
+ STATIC_LIB_DEPS="$LIBTIFF $LIBJPEG $LIBPNG"
fi
# Checks to see if we should compile in MMX support (there will be
diff --git a/docs/reference/gtk/tmpl/gtkrc.sgml b/docs/reference/gtk/tmpl/gtkrc.sgml
index 88a0a4a507..aeceb3e5ec 100644
--- a/docs/reference/gtk/tmpl/gtkrc.sgml
+++ b/docs/reference/gtk/tmpl/gtkrc.sgml
@@ -495,7 +495,6 @@ This can later be composited together with other
#GtkRcStyle structures to form a #GtkStyle.
</para>
-@parent_instance:
@name:
@bg_pixmap_name:
@font_desc:
diff --git a/gtk/gtkhpaned.c b/gtk/gtkhpaned.c
index 5b8d810dcb..8bdf6a70b1 100644
--- a/gtk/gtkhpaned.c
+++ b/gtk/gtkhpaned.c
@@ -115,9 +115,6 @@ gtk_hpaned_size_request (GtkWidget *widget,
{
GtkPaned *paned = GTK_PANED (widget);
GtkRequisition child_requisition;
- gint handle_size;
-
- gtk_widget_style_get (widget, "handle_size", &handle_size, NULL);
requisition->width = 0;
requisition->height = 0;
@@ -138,8 +135,17 @@ gtk_hpaned_size_request (GtkWidget *widget,
requisition->width += child_requisition.width;
}
- requisition->width += GTK_CONTAINER (paned)->border_width * 2 + handle_size;
+ requisition->width += GTK_CONTAINER (paned)->border_width * 2;
requisition->height += GTK_CONTAINER (paned)->border_width * 2;
+
+ if (paned->child1 && GTK_WIDGET_VISIBLE (paned->child1) &&
+ paned->child2 && GTK_WIDGET_VISIBLE (paned->child2))
+ {
+ gint handle_size;
+
+ gtk_widget_style_get (widget, "handle_size", &handle_size, NULL);
+ requisition->width += handle_size;
+ }
}
static void
@@ -148,78 +154,90 @@ gtk_hpaned_size_allocate (GtkWidget *widget,
{
GtkPaned *paned = GTK_PANED (widget);
gint border_width = GTK_CONTAINER (paned)->border_width;
- gint handle_size;
- GtkRequisition child1_requisition;
- GtkRequisition child2_requisition;
- GtkAllocation child1_allocation;
- GtkAllocation child2_allocation;
-
- gtk_widget_style_get (widget, "handle_size", &handle_size, NULL);
widget->allocation = *allocation;
-
- if (paned->child1)
- gtk_widget_get_child_requisition (paned->child1, &child1_requisition);
- else
- child1_requisition.width = 0;
-
- if (paned->child2)
- gtk_widget_get_child_requisition (paned->child2, &child2_requisition);
- else
- child2_requisition.width = 0;
-
- gtk_paned_compute_position (paned,
- MAX (1, widget->allocation.width
- - handle_size
- - 2 * border_width),
- child1_requisition.width,
- child2_requisition.width);
-
- /* Move the handle before the children so we don't get extra expose events */
-
- paned->handle_xpos = paned->child1_size + border_width;
- paned->handle_ypos = border_width;
- paned->handle_width = handle_size;
- paned->handle_height = MAX (1, widget->allocation.height - 2 * border_width);
-
if (GTK_WIDGET_REALIZED (widget))
- {
- gdk_window_move_resize (widget->window,
- allocation->x, allocation->y,
- allocation->width,
- allocation->height);
-
- gdk_window_move_resize (paned->handle,
- paned->handle_xpos,
- paned->handle_ypos,
- handle_size,
- paned->handle_height);
- }
+ gdk_window_move_resize (widget->window,
+ allocation->x, allocation->y,
+ allocation->width,
+ allocation->height);
- child1_allocation.height = child2_allocation.height = MAX (1, (gint) allocation->height - border_width * 2);
- child1_allocation.width = paned->child1_size;
- child1_allocation.x = border_width;
- child1_allocation.y = child2_allocation.y = border_width;
-
- child2_allocation.x = child1_allocation.x + child1_allocation.width + paned->handle_width;
- child2_allocation.width = MAX (1, (gint) allocation->width - child2_allocation.x - border_width);
-
- /* Now allocate the childen, making sure, when resizing not to
- * overlap the windows */
- if (GTK_WIDGET_MAPPED (widget) &&
- paned->child1 && GTK_WIDGET_VISIBLE (paned->child1) &&
- paned->child1->allocation.width < child1_allocation.width)
+ if (paned->child1 && GTK_WIDGET_VISIBLE (paned->child1) &&
+ paned->child2 && GTK_WIDGET_VISIBLE (paned->child2))
{
- if (paned->child2 && GTK_WIDGET_VISIBLE (paned->child2))
- gtk_widget_size_allocate (paned->child2, &child2_allocation);
- gtk_widget_size_allocate (paned->child1, &child1_allocation);
+ GtkAllocation child1_allocation;
+ GtkAllocation child2_allocation;
+ GtkRequisition child1_requisition;
+ GtkRequisition child2_requisition;
+ gint handle_size;
+
+ gtk_widget_style_get (widget, "handle_size", &handle_size, NULL);
+
+ gtk_widget_get_child_requisition (paned->child1, &child1_requisition);
+ gtk_widget_get_child_requisition (paned->child2, &child2_requisition);
+
+ gtk_paned_compute_position (paned,
+ MAX (1, widget->allocation.width
+ - handle_size
+ - 2 * border_width),
+ child1_requisition.width,
+ child2_requisition.width);
+
+ /* Move the handle before the children so we don't get extra expose events */
+
+ paned->handle_xpos = paned->child1_size + border_width;
+ paned->handle_ypos = border_width;
+ paned->handle_width = handle_size;
+ paned->handle_height = MAX (1, widget->allocation.height - 2 * border_width);
+
+ if (GTK_WIDGET_REALIZED (widget))
+ {
+ gdk_window_show (paned->handle);
+ gdk_window_move_resize (paned->handle,
+ paned->handle_xpos,
+ paned->handle_ypos,
+ handle_size,
+ paned->handle_height);
+ }
+
+ child1_allocation.height = child2_allocation.height = MAX (1, (gint) allocation->height - border_width * 2);
+ child1_allocation.width = paned->child1_size;
+ child1_allocation.x = border_width;
+ child1_allocation.y = child2_allocation.y = border_width;
+
+ child2_allocation.x = child1_allocation.x + child1_allocation.width + paned->handle_width;
+ child2_allocation.width = MAX (1, (gint) allocation->width - child2_allocation.x - border_width);
+
+ /* Now allocate the childen, making sure, when resizing not to
+ * overlap the windows */
+ if (GTK_WIDGET_MAPPED (widget) &&
+ paned->child1->allocation.width < child1_allocation.width)
+ {
+ gtk_widget_size_allocate (paned->child2, &child2_allocation);
+ gtk_widget_size_allocate (paned->child1, &child1_allocation);
+ }
+ else
+ {
+ gtk_widget_size_allocate (paned->child1, &child1_allocation);
+ gtk_widget_size_allocate (paned->child2, &child2_allocation);
+ }
}
else
{
+ GtkAllocation child_allocation;
+
+ if (GTK_WIDGET_REALIZED (widget))
+ gdk_window_hide (paned->handle);
+
+ child_allocation.x = border_width;
+ child_allocation.y = border_width;
+ child_allocation.width = MAX (1, allocation->width - 2 * border_width);
+ child_allocation.height = MAX (1, allocation->height - 2 * border_width);
+
if (paned->child1 && GTK_WIDGET_VISIBLE (paned->child1))
- gtk_widget_size_allocate (paned->child1, &child1_allocation);
- if (paned->child2 && GTK_WIDGET_VISIBLE (paned->child2))
- gtk_widget_size_allocate (paned->child2, &child2_allocation);
+ gtk_widget_size_allocate (paned->child1, &child_allocation);
+ else if (paned->child2 && GTK_WIDGET_VISIBLE (paned->child2))
+ gtk_widget_size_allocate (paned->child2, &child_allocation);
}
}
diff --git a/gtk/gtkpaned.c b/gtk/gtkpaned.c
index 9cc0357c94..71860cce7c 100644
--- a/gtk/gtkpaned.c
+++ b/gtk/gtkpaned.c
@@ -267,7 +267,9 @@ gtk_paned_realize (GtkWidget *widget)
gdk_window_set_back_pixmap (widget->window, NULL, TRUE);
- gdk_window_show (paned->handle);
+ if (paned->child1 && GTK_WIDGET_VISIBLE (paned->child1) &&
+ paned->child2 && GTK_WIDGET_VISIBLE (paned->child2))
+ gdk_window_show (paned->handle);
}
static void
diff --git a/gtk/gtkvpaned.c b/gtk/gtkvpaned.c
index df75c14197..ae9ff11812 100644
--- a/gtk/gtkvpaned.c
+++ b/gtk/gtkvpaned.c
@@ -115,9 +115,6 @@ gtk_vpaned_size_request (GtkWidget *widget,
{
GtkPaned *paned = GTK_PANED (widget);
GtkRequisition child_requisition;
- gint handle_size;
-
- gtk_widget_style_get (widget, "handle_size", &handle_size, NULL);
requisition->width = 0;
requisition->height = 0;
@@ -138,8 +135,17 @@ gtk_vpaned_size_request (GtkWidget *widget,
requisition->height += child_requisition.height;
}
- requisition->height += GTK_CONTAINER (paned)->border_width * 2 + handle_size;
+ requisition->height += GTK_CONTAINER (paned)->border_width * 2;
requisition->width += GTK_CONTAINER (paned)->border_width * 2;
+
+ if (paned->child1 && GTK_WIDGET_VISIBLE (paned->child1) &&
+ paned->child2 && GTK_WIDGET_VISIBLE (paned->child2))
+ {
+ gint handle_size;
+
+ gtk_widget_style_get (widget, "handle_size", &handle_size, NULL);
+ requisition->height += handle_size;
+ }
}
static void
@@ -147,80 +153,91 @@ gtk_vpaned_size_allocate (GtkWidget *widget,
GtkAllocation *allocation)
{
GtkPaned *paned = GTK_PANED (widget);
- GtkRequisition child1_requisition;
- GtkRequisition child2_requisition;
- GtkAllocation child1_allocation;
- GtkAllocation child2_allocation;
- gint border_width;
- gint handle_size;
+ gint border_width = GTK_CONTAINER (paned)->border_width;
widget->allocation = *allocation;
-
- border_width = GTK_CONTAINER (widget)->border_width;
- gtk_widget_style_get (widget, "handle_size", &handle_size, NULL);
-
- if (paned->child1)
- gtk_widget_get_child_requisition (paned->child1, &child1_requisition);
- else
- child1_requisition.height = 0;
-
- if (paned->child2)
- gtk_widget_get_child_requisition (paned->child2, &child2_requisition);
- else
- child2_requisition.height = 0;
-
- gtk_paned_compute_position (paned,
- MAX (1, widget->allocation.height
- - handle_size
- - 2 * border_width),
- child1_requisition.height,
- child2_requisition.height);
-
- /* Move the handle before the children so we don't get extra expose events */
-
- paned->handle_xpos = border_width;
- paned->handle_ypos = paned->child1_size + border_width;
- paned->handle_width = MAX (1, (gint) widget->allocation.width - 2 * border_width);
- paned->handle_height = handle_size;
-
- if (GTK_WIDGET_REALIZED(widget))
+ if (GTK_WIDGET_REALIZED (widget))
+ gdk_window_move_resize (widget->window,
+ allocation->x, allocation->y,
+ allocation->width,
+ allocation->height);
+
+ if (paned->child1 && GTK_WIDGET_VISIBLE (paned->child1) &&
+ paned->child2 && GTK_WIDGET_VISIBLE (paned->child2))
{
- gdk_window_move_resize (widget->window,
- allocation->x, allocation->y,
- allocation->width,
- allocation->height);
-
- gdk_window_move_resize (paned->handle,
- paned->handle_xpos,
- paned->handle_ypos,
- paned->handle_width,
- handle_size);
- }
-
- child1_allocation.width = child2_allocation.width = MAX (1, (gint) allocation->width - border_width * 2);
- child1_allocation.height = paned->child1_size;
- child1_allocation.x = child2_allocation.x = border_width;
- child1_allocation.y = border_width;
-
- child2_allocation.y = child1_allocation.y + child1_allocation.height + paned->handle_height;
- child2_allocation.height = MAX(1, (gint) allocation->height - child2_allocation.y - border_width);
+ GtkRequisition child1_requisition;
+ GtkRequisition child2_requisition;
+ GtkAllocation child1_allocation;
+ GtkAllocation child2_allocation;
+ gint handle_size;
+
+ gtk_widget_style_get (widget, "handle_size", &handle_size, NULL);
+
+ gtk_widget_get_child_requisition (paned->child1, &child1_requisition);
+ gtk_widget_get_child_requisition (paned->child2, &child2_requisition);
+
+ gtk_paned_compute_position (paned,
+ MAX (1, widget->allocation.height
+ - handle_size
+ - 2 * border_width),
+ child1_requisition.height,
+ child2_requisition.height);
+
+ /* Move the handle before the children so we don't get extra expose events */
+
+ paned->handle_xpos = border_width;
+ paned->handle_ypos = paned->child1_size + border_width;
+ paned->handle_width = MAX (1, (gint) widget->allocation.width - 2 * border_width);
+ paned->handle_height = handle_size;
+
+ if (GTK_WIDGET_REALIZED(widget))
+ {
+ gdk_window_show (paned->handle);
+ gdk_window_move_resize (paned->handle,
+ paned->handle_xpos,
+ paned->handle_ypos,
+ paned->handle_width,
+ handle_size);
+ }
- /* Now allocate the childen, making sure, when resizing not to
- * overlap the windows */
- if (GTK_WIDGET_MAPPED (widget) &&
- paned->child1 && GTK_WIDGET_VISIBLE (paned->child1) &&
- paned->child1->allocation.height < child1_allocation.height)
- {
- if (paned->child2 && GTK_WIDGET_VISIBLE (paned->child2))
- gtk_widget_size_allocate(paned->child2, &child2_allocation);
- gtk_widget_size_allocate(paned->child1, &child1_allocation);
+ child1_allocation.width = child2_allocation.width = MAX (1, (gint) allocation->width - border_width * 2);
+ child1_allocation.height = paned->child1_size;
+ child1_allocation.x = child2_allocation.x = border_width;
+ child1_allocation.y = border_width;
+
+ child2_allocation.y = child1_allocation.y + child1_allocation.height + paned->handle_height;
+ child2_allocation.height = MAX(1, (gint) allocation->height - child2_allocation.y - border_width);
+
+ /* Now allocate the childen, making sure, when resizing not to
+ * overlap the windows */
+ if (GTK_WIDGET_MAPPED (widget) &&
+ paned->child1->allocation.height < child1_allocation.height)
+ {
+ gtk_widget_size_allocate(paned->child2, &child2_allocation);
+ gtk_widget_size_allocate(paned->child1, &child1_allocation);
+ }
+ else
+ {
+ gtk_widget_size_allocate(paned->child1, &child1_allocation);
+ gtk_widget_size_allocate(paned->child2, &child2_allocation);
+ }
}
else
{
+ GtkAllocation child_allocation;
+
+ if (GTK_WIDGET_REALIZED (widget))
+ gdk_window_hide (paned->handle);
+
+ child_allocation.x = border_width;
+ child_allocation.y = border_width;
+ child_allocation.width = MAX (1, allocation->width - 2 * border_width);
+ child_allocation.height = MAX (1, allocation->height - 2 * border_width);
+
if (paned->child1 && GTK_WIDGET_VISIBLE (paned->child1))
- gtk_widget_size_allocate(paned->child1, &child1_allocation);
- if (paned->child2 && GTK_WIDGET_VISIBLE (paned->child2))
- gtk_widget_size_allocate(paned->child2, &child2_allocation);
+ gtk_widget_size_allocate (paned->child1, &child_allocation);
+ else if (paned->child2 && GTK_WIDGET_VISIBLE (paned->child2))
+ gtk_widget_size_allocate (paned->child2, &child_allocation);
}
}