@Override public void deleteColumn(final GridColumn<?> column) { final int index = column.getIndex(); for (GridColumn<?> c : columns) { if (c.getIndex() > index) { c.setIndex(c.getIndex() - 1); } } //Destroy column if (column.getColumnRenderer() instanceof HasDOMElementResources) { ((HasDOMElementResources) column.getColumnRenderer()).destroyResources(); } removeColumn(column); //Destroy column data for (GridRow row : rows) { ((BaseGridRow) row).deleteCell(index); final Map<Integer, GridCell<?>> clone = new HashMap<Integer, GridCell<?>>(row.getCells()); for (Map.Entry<Integer, GridCell<?>> e : clone.entrySet()) { if (e.getKey() > index) { ((BaseGridRow) row).deleteCell(e.getKey()); ((BaseGridRow) row).setCell(e.getKey() - 1, e.getValue()); } } } internalRefreshWidth(true, OptionalDouble.empty()); selectionsManager.onDeleteColumn(index); }
@Override public void deleteColumn(final GridColumn<?> column) { final int index = column.getIndex(); for (GridColumn<?> c : columns) { if (c.getIndex() > index) { c.setIndex(c.getIndex() - 1); } } //Destroy column if (column.getColumnRenderer() instanceof HasDOMElementResources) { ((HasDOMElementResources) column.getColumnRenderer()).destroyResources(); } removeColumn(column); //Destroy column data for (GridRow row : rows) { ((BaseGridRow) row).deleteCell(index); final Map<Integer, GridCell<?>> clone = new HashMap<Integer, GridCell<?>>(row.getCells()); for (Map.Entry<Integer, GridCell<?>> e : clone.entrySet()) { if (e.getKey() > index) { ((BaseGridRow) row).deleteCell(e.getKey()); ((BaseGridRow) row).setCell(e.getKey() - 1, e.getValue()); } } } internalRefreshWidth(true, OptionalDouble.empty()); selectionsManager.onDeleteColumn(index); }