blob: d29ac3643abd772a1e2c496177d6078ad00319ac [file] [log] [blame]
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 RowHeaderLayer implements Layer, LayerDataAccessor {
val Axis horizontalAxis
val Axis verticalAxis
new(Axis verticalAxis) {
this.verticalAxis = verticalAxis
this.horizontalAxis = 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) {
verticalAxis.getSegment(rowPosition).dataValue
}
override setCellDataValue(int columnPosition, int rowPosition, Object newValue) {
verticalAxis.getSegment(rowPosition).setDataValue(newValue)
}
}