@Override public void appendColumn(final GridColumn<?> column) { double originalWidth = getWidth(); column.setIndex(columns.size()); columns.add(column); OptionalDouble optionalOriginalWidth = OptionalDouble.of(originalWidth); if (GridColumn.ColumnWidthMode.isAuto(column)) { column.setWidth(calculateInitWidth(column, optionalOriginalWidth)); internalRefreshWidth(true, optionalOriginalWidth); } selectionsManager.onInsertColumn(columns.size() - 1); }
@Override public void appendColumn(final GridColumn<?> column) { double originalWidth = getWidth(); column.setIndex(columns.size()); columns.add(column); OptionalDouble optionalOriginalWidth = OptionalDouble.of(originalWidth); if (GridColumn.ColumnWidthMode.isAuto(column)) { column.setWidth(calculateInitWidth(column, optionalOriginalWidth)); internalRefreshWidth(true, optionalOriginalWidth); } selectionsManager.onInsertColumn(columns.size() - 1); }
@Override public void updateColumn(final int index, final GridColumn<?> column) { //Destroy existing column final GridColumn<?> existing = columns.get(index); if (existing.getColumnRenderer() instanceof HasDOMElementResources) { ((HasDOMElementResources) existing.getColumnRenderer()).destroyResources(); } //Replace existing with new column column.setIndex(columns.get(index).getIndex()); columns.set(index, column); //Clear column data for (GridRow row : rows) { ((BaseGridRow) row).deleteCell(column.getIndex()); } }
@Override public void updateColumn(final int index, final GridColumn<?> column) { //Destroy existing column final GridColumn<?> existing = columns.get(index); if (existing.getColumnRenderer() instanceof HasDOMElementResources) { ((HasDOMElementResources) existing.getColumnRenderer()).destroyResources(); } //Replace existing with new column column.setIndex(columns.get(index).getIndex()); columns.set(index, column); //Clear column data for (GridRow row : rows) { ((BaseGridRow) row).deleteCell(column.getIndex()); } }
@Before public void setup() { this.columns = new ArrayList<>(); for (int index = 0; index < COLUMN_COUNT; index++) { final GridColumn<String> column = new BaseGridTest.MockMergableGridColumn<>("col1", 100); column.setIndex(COLUMN_COUNT - index - 1); columns.add(column); } }
@Before public void setup() { this.columns = new ArrayList<>(); for (int index = 0; index < COLUMN_COUNT; index++) { final GridColumn<String> column = new BaseGridTest.MockMergableGridColumn<>("col1", 100); column.setIndex(COLUMN_COUNT - index - 1); columns.add(column); } }
@Override public void insertColumn(final int index, final GridColumn<?> column) { double originalWidth = getWidth(); column.setIndex(columns.size()); columns.add(index, column); OptionalDouble optionalOriginalWidth = OptionalDouble.of(originalWidth); if (GridColumn.ColumnWidthMode.isAuto(column)) { column.setWidth(calculateInitWidth(column, optionalOriginalWidth)); internalRefreshWidth(true, optionalOriginalWidth); } selectionsManager.onInsertColumn(index); }
@Override public void insertColumn(final int index, final GridColumn<?> column) { double originalWidth = getWidth(); column.setIndex(columns.size()); columns.add(index, column); OptionalDouble optionalOriginalWidth = OptionalDouble.of(originalWidth); if (GridColumn.ColumnWidthMode.isAuto(column)) { column.setWidth(calculateInitWidth(column, optionalOriginalWidth)); internalRefreshWidth(true, optionalOriginalWidth); } selectionsManager.onInsertColumn(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); }
@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); }