diff options
author | Teemu Suo-Anttila <teemusa@vaadin.com> | 2014-09-16 17:01:21 +0300 |
---|---|---|
committer | Teemu Suo-Anttila <teemusa@vaadin.com> | 2014-09-24 14:15:33 +0300 |
commit | 3ab88b718cdb480058fc9c53506a3dabe4980554 (patch) | |
tree | d52830c9804f263c497d6651aed6542e82090e3e /client | |
parent | c4be1eb4ebf96e8f3e90771b889e00547fc55587 (diff) | |
download | vaadin-framework-3ab88b718cdb480058fc9c53506a3dabe4980554.tar.gz vaadin-framework-3ab88b718cdb480058fc9c53506a3dabe4980554.zip |
Fix GridStaticSection communication to use column ids (#13334)
Change-Id: Ic5174543cab912ea8647b92445f33ec3d9fca366
Diffstat (limited to 'client')
-rw-r--r-- | client/src/com/vaadin/client/ui/grid/GridConnector.java | 23 |
1 files changed, 6 insertions, 17 deletions
diff --git a/client/src/com/vaadin/client/ui/grid/GridConnector.java b/client/src/com/vaadin/client/ui/grid/GridConnector.java index 26649e6111..d34a57a4b3 100644 --- a/client/src/com/vaadin/client/ui/grid/GridConnector.java +++ b/client/src/com/vaadin/client/ui/grid/GridConnector.java @@ -45,7 +45,6 @@ import com.vaadin.client.ui.grid.renderers.AbstractRendererConnector; import com.vaadin.client.ui.grid.selection.AbstractRowHandleSelectionModel; import com.vaadin.client.ui.grid.selection.SelectionChangeEvent; import com.vaadin.client.ui.grid.selection.SelectionChangeHandler; -import com.vaadin.client.ui.grid.selection.SelectionModel; import com.vaadin.client.ui.grid.selection.SelectionModelMulti; import com.vaadin.client.ui.grid.selection.SelectionModelNone; import com.vaadin.client.ui.grid.selection.SelectionModelSingle; @@ -422,18 +421,10 @@ public class GridConnector extends AbstractHasComponentsConnector implements for (RowState rowState : state.rows) { GridStaticSection.StaticRow<?> row = section.appendRow(); - int selectionOffset = 1; - if (getWidget().getSelectionModel() instanceof SelectionModel.None) { - selectionOffset = 0; - } - - assert rowState.cells.size() == getWidget().getColumnCount() - - selectionOffset; - - int i = 0 + selectionOffset; for (CellState cellState : rowState.cells) { - GridStaticSection.StaticCell cell = row.getCell(getWidget() - .getColumn(i++)); + CustomGridColumn column = columnIdToColumn + .get(cellState.columnId); + GridStaticSection.StaticCell cell = row.getCell(column); switch (cellState.type) { case TEXT: cell.setText(cellState.text); @@ -451,12 +442,10 @@ public class GridConnector extends AbstractHasComponentsConnector implements } } - for (List<Integer> group : rowState.cellGroups) { + for (List<String> group : rowState.cellGroups) { GridColumn<?, ?>[] columns = new GridColumn<?, ?>[group.size()]; - i = 0; - for (Integer colIndex : group) { - columns[i++] = getWidget().getColumn( - selectionOffset + colIndex); + for (int i = 0; i < group.size(); ++i) { + columns[i] = columnIdToColumn.get(group.get(i)); } row.join(columns); } |