text: public void addCell(int rowIndex, int columnIndex) {if (rowIndex > _lastDefinedRow) return;if (_currentRowIndex == -1) {_currentRowIndex = rowIndex;_firstColumnIndex = columnIndex;_lastColumnIndex = columnIndex;} else {if (_currentRowIndex == rowIndex && _lastColumnIndex+1 == columnIndex) {_lastColumnIndex = columnIndex;} else {if (_currentRectangleGroup == null) {_currentRectangleGroup = new BlankCellRectangleGroup(_currentRowIndex, _firstColumnIndex, _lastColumnIndex);} else {if (!_currentRectangleGroup.acceptRow(_currentRowIndex, _firstColumnIndex, _lastColumnIndex)) {_rectangleGroups.add(_currentRectangleGroup);_currentRectangleGroup = new BlankCellRectangleGroup(_currentRowIndex, _firstColumnIndex, _lastColumnIndex);}}_currentRowIndex = rowIndex;_firstColumnIndex = columnIndex;_lastColumnIndex = columnIndex;}}}