mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-23 05:25:26 +00:00
Fixed recalculate of multicolumns on screen (fix #150).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@3656 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
0d248253bc
commit
f1b78fbf9f
@ -1,3 +1,9 @@
|
||||
2002-03-04 Juergen Vigna <jug@sad.it>
|
||||
|
||||
* tabular.C (calculate_width_of_column_NMC): fixed to use also the
|
||||
last column of multicolumn cells.
|
||||
(SetWidthOfMulticolCell): recalculate NMC and real columns.
|
||||
|
||||
2002-03-04 Jose Abilio Oliveira Matos <jamatos@novalis.fc.up.pt>
|
||||
|
||||
* exporter.C (Export): for linuxdoc and docbook the buffer is a nice
|
||||
|
@ -644,7 +644,9 @@ bool LyXTabular::SetWidthOfMulticolCell(int cell, int new_width)
|
||||
if (old_val != cell_info[row][column2].width_of_cell) {
|
||||
// in this case we have to recalculate all multicolumn cells which
|
||||
// have this column as one of theirs but not as last one
|
||||
calculate_width_of_column_NMC(i);
|
||||
recalculateMulticolumnsOfColumn(i);
|
||||
calculate_width_of_column(i);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@ -955,16 +957,21 @@ bool LyXTabular::calculate_width_of_column(int column)
|
||||
|
||||
|
||||
//
|
||||
// calculate the with of the column without regarding REAL MultiColumn
|
||||
// cells. This means MultiColumn-cells spanning more than 1 column.
|
||||
// Calculate the columns regarding ONLY the normal cells and if this
|
||||
// column is inside a multicolumn cell then use it only if its the last
|
||||
// column of this multicolumn cell as this gives an added with to the
|
||||
// column, all the rest should be adapted!
|
||||
//
|
||||
bool LyXTabular::calculate_width_of_column_NMC(int column)
|
||||
{
|
||||
int const old_column_width = column_info[column].width_of_column;
|
||||
int max = 0;
|
||||
for (int i = 0; i < rows_; ++i) {
|
||||
if (!IsMultiColumn(GetCellNumber(i, column), true) &&
|
||||
(cell_info[i][column].width_of_cell > max)) {
|
||||
int cell = GetCellNumber(i, column);
|
||||
bool ismulti = IsMultiColumn(cell, true);
|
||||
if ((!ismulti || (column == right_column_of_cell(cell))) &&
|
||||
(cell_info[i][column].width_of_cell > max))
|
||||
{
|
||||
max = cell_info[i][column].width_of_cell;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user