summaryrefslogtreecommitdiffstats
path: root/client
diff options
context:
space:
mode:
authorTeemu Suo-Anttila <teemusa@vaadin.com>2014-09-16 17:01:21 +0300
committerTeemu Suo-Anttila <teemusa@vaadin.com>2014-09-24 14:15:33 +0300
commit3ab88b718cdb480058fc9c53506a3dabe4980554 (patch)
treed52830c9804f263c497d6651aed6542e82090e3e /client
parentc4be1eb4ebf96e8f3e90771b889e00547fc55587 (diff)
downloadvaadin-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.java23
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);
}