blob: 56522f51986675855a779b5441667f6eafd0cfb4 [file] [log] [blame]
package org.eclipse.nebula.widgets.nattable.core.big.layer.axis
import java.math.BigDecimal
import java.math.BigInteger
/**
* A set of useful utility functions that calculate invariants that must hold for any Axis.
*/
class BigAxisInvariants {
def static getPixelSize(BigAxis axis) {
axis.getStartPixelOfSegmentPosition(axis.segmentCount) - axis.getStartPixelOfSegmentPosition(BigInteger::ZERO)
}
def static getPixelSizeOfSegmentPosition(BigAxis axis, BigInteger segmentPosition) {
axis.getStartPixelOfSegmentPosition(segmentPosition + BigInteger::ONE) - axis.getStartPixelOfSegmentPosition(segmentPosition)
}
def static boolean containsPixelLocation(BigAxis axis, BigDecimal pixelLocation) {
pixelLocation >= BigDecimal::ZERO && pixelLocation < axis.getStartPixelOfSegmentPosition(axis.segmentCount)
}
def static boolean containsSegmentPosition(BigAxis axis, BigInteger segmentPosition) {
segmentPosition >= BigInteger::ZERO && segmentPosition < axis.segmentCount
}
}