From 98b8e1eb81c3f5595d293040d446d8398181c202 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Uwe=20St=C3=B6hr?= Date: Mon, 1 Nov 2010 17:09:38 +0000 Subject: [PATCH] InsetTabular.cpp: multirow cells are ALWAYS left aligned and thus cannot inherit the alignment of the column git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35967 a592a061-630c-0410-9148-cb99ea01b6c8 --- src/insets/InsetTabular.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/insets/InsetTabular.cpp b/src/insets/InsetTabular.cpp index 9d74f00d6f..af0c510bf9 100644 --- a/src/insets/InsetTabular.cpp +++ b/src/insets/InsetTabular.cpp @@ -834,6 +834,7 @@ void Tabular::updateIndexes() { setBuffer(buffer()); numberofcells = 0; + // reset cell number for (row_type row = 0; row < nrows(); ++row) for (col_type column = 0; column < ncols(); ++column) { if (!isPartOfMultiColumn(row, column) @@ -848,19 +849,22 @@ void Tabular::updateIndexes() rowofcell.resize(numberofcells); columnofcell.resize(numberofcells); idx_type i = 0; + // reset column and row of cells and update their width and alignment for (row_type row = 0; row < nrows(); ++row) for (col_type column = 0; column < ncols(); ++column) { if (isPartOfMultiColumn(row, column)) continue; + // columnofcell nneds to be called before setting width and aligment + // multirow cells inherit the width from the column width if (!isPartOfMultiRow(row, column)) { columnofcell[i] = column; rowofcell[i] = row; } setFixedWidth(row, column); - cell_info[row][column].inset->setContentAlignment( - getAlignment(cellIndex(row, column))); if (isPartOfMultiRow(row, column)) continue; + cell_info[row][column].inset->setContentAlignment( + getAlignment(cellIndex(row, column))); ++i; } } @@ -1612,7 +1616,7 @@ Tabular::idx_type Tabular::setMultiRow(idx_type cell, idx_type number) // this feature would be a fileformat change // until LyX supports this, use the deault alignment of multirow // cells: left - cs.alignment = LYX_ALIGN_CENTER; + cs.alignment = LYX_ALIGN_LEFT; // set the bottom row of the last selected cell setBottomLine(cell, bottomLine(cell + (number - 1)*ncols())); -- 2.39.2