partly revert my recent expanding change to not expand the table if all

Wed Feb 13 06:42:37 2002  Tim Janik  <timj@gtk.org>

        * gtk/gtktable.c (gtk_table_size_allocate_pass1): partly revert
        my recent expanding change to not expand the table if all children
        have not epxand behaviour. this fixes palette views which often
        use homogeneous non-expanding tables.
This commit is contained in:
Tim Janik 2002-02-13 05:48:56 +00:00 committed by Tim Janik
parent a9a06ee44e
commit aa18bbf0ed
8 changed files with 97 additions and 19 deletions

View File

@ -1,3 +1,10 @@
Wed Feb 13 06:42:37 2002 Tim Janik <timj@gtk.org>
* gtk/gtktable.c (gtk_table_size_allocate_pass1): partly revert
my recent expanding change to not expand the table if all children
have not epxand behaviour. this fixes palette views which often
use homogeneous non-expanding tables.
Tue Feb 12 14:27:41 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): emit

View File

@ -1,3 +1,10 @@
Wed Feb 13 06:42:37 2002 Tim Janik <timj@gtk.org>
* gtk/gtktable.c (gtk_table_size_allocate_pass1): partly revert
my recent expanding change to not expand the table if all children
have not epxand behaviour. this fixes palette views which often
use homogeneous non-expanding tables.
Tue Feb 12 14:27:41 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): emit

View File

@ -1,3 +1,10 @@
Wed Feb 13 06:42:37 2002 Tim Janik <timj@gtk.org>
* gtk/gtktable.c (gtk_table_size_allocate_pass1): partly revert
my recent expanding change to not expand the table if all children
have not epxand behaviour. this fixes palette views which often
use homogeneous non-expanding tables.
Tue Feb 12 14:27:41 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): emit

View File

@ -1,3 +1,10 @@
Wed Feb 13 06:42:37 2002 Tim Janik <timj@gtk.org>
* gtk/gtktable.c (gtk_table_size_allocate_pass1): partly revert
my recent expanding change to not expand the table if all children
have not epxand behaviour. this fixes palette views which often
use homogeneous non-expanding tables.
Tue Feb 12 14:27:41 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): emit

View File

@ -1,3 +1,10 @@
Wed Feb 13 06:42:37 2002 Tim Janik <timj@gtk.org>
* gtk/gtktable.c (gtk_table_size_allocate_pass1): partly revert
my recent expanding change to not expand the table if all children
have not epxand behaviour. this fixes palette views which often
use homogeneous non-expanding tables.
Tue Feb 12 14:27:41 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): emit

View File

@ -1,3 +1,10 @@
Wed Feb 13 06:42:37 2002 Tim Janik <timj@gtk.org>
* gtk/gtktable.c (gtk_table_size_allocate_pass1): partly revert
my recent expanding change to not expand the table if all children
have not epxand behaviour. this fixes palette views which often
use homogeneous non-expanding tables.
Tue Feb 12 14:27:41 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): emit

View File

@ -1,3 +1,10 @@
Wed Feb 13 06:42:37 2002 Tim Janik <timj@gtk.org>
* gtk/gtktable.c (gtk_table_size_allocate_pass1): partly revert
my recent expanding change to not expand the table if all children
have not epxand behaviour. this fixes palette views which often
use homogeneous non-expanding tables.
Tue Feb 12 14:27:41 2002 Kristian Rietveld <kris@gtk.org>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): emit

View File

@ -1335,16 +1335,30 @@ gtk_table_size_allocate_pass1 (GtkTable *table)
if (table->homogeneous)
{
width = real_width;
for (col = 0; col + 1 < table->ncols; col++)
width -= table->cols[col].spacing;
for (col = 0; col < table->ncols; col++)
if (!table->children)
nexpand = 1;
else
{
extra = width / (table->ncols - col);
table->cols[col].allocation = MAX (1, extra);
width -= extra;
nexpand = 0;
for (col = 0; col < table->ncols; col++)
if (table->cols[col].expand)
{
nexpand += 1;
break;
}
}
if (nexpand)
{
width = real_width;
for (col = 0; col + 1 < table->ncols; col++)
width -= table->cols[col].spacing;
for (col = 0; col < table->ncols; col++)
{
extra = width / (table->ncols - col);
table->cols[col].allocation = MAX (1, extra);
width -= extra;
}
}
}
else
@ -1412,17 +1426,32 @@ gtk_table_size_allocate_pass1 (GtkTable *table)
if (table->homogeneous)
{
height = real_height;
for (row = 0; row + 1 < table->nrows; row++)
height -= table->rows[row].spacing;
for (row = 0; row < table->nrows; row++)
if (!table->children)
nexpand = 1;
else
{
extra = height / (table->nrows - row);
table->rows[row].allocation = MAX (1, extra);
height -= extra;
nexpand = 0;
for (row = 0; row < table->nrows; row++)
if (table->rows[row].expand)
{
nexpand += 1;
break;
}
}
if (nexpand)
{
height = real_height;
for (row = 0; row + 1 < table->nrows; row++)
height -= table->rows[row].spacing;
for (row = 0; row < table->nrows; row++)
{
extra = height / (table->nrows - row);
table->rows[row].allocation = MAX (1, extra);
height -= extra;
}
}
}
else