| package org.eclipse.nebula.widgets.nattable.core.layer.header |
| |
| import org.eclipse.nebula.widgets.nattable.core.axis.Axis |
| import org.eclipse.nebula.widgets.nattable.core.axis.DefaultAxis |
| import org.eclipse.nebula.widgets.nattable.core.layer.Layer |
| import org.eclipse.nebula.widgets.nattable.core.layer.LayerDataAccessor |
| import org.eclipse.nebula.widgets.nattable.core.layer.cell.DataAccessorLayerCell |
| |
| class ColumnHeaderLayer implements Layer, LayerDataAccessor { |
| |
| val Axis horizontalAxis |
| val Axis verticalAxis |
| |
| new(Axis horizontalAxis) { |
| this.horizontalAxis = horizontalAxis |
| |
| this.verticalAxis = new DefaultAxis(1, 20) |
| } |
| |
| // Layer |
| |
| override getHorizontalAxis() { horizontalAxis } |
| override getVerticalAxis() { verticalAxis } |
| |
| override getCell(int columnPosition, int rowPosition) { |
| new DataAccessorLayerCell(this, columnPosition, rowPosition, this) |
| } |
| |
| // LayerDataAccessor |
| |
| override getCellDataValue(int columnPosition, int rowPosition) { |
| horizontalAxis.getSegment(columnPosition).dataValue |
| } |
| |
| override setCellDataValue(int columnPosition, int rowPosition, Object newValue) { |
| horizontalAxis.getSegment(columnPosition).setDataValue(newValue) |
| } |
| |
| } |