renamed -> viewportOriginSegmentPosition
diff --git a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/core/layer/impl/viewport/ViewportAxis.xtend b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/core/layer/impl/viewport/ViewportAxis.xtend
index ca391f4..f7aea1f 100644
--- a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/core/layer/impl/viewport/ViewportAxis.xtend
+++ b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/core/layer/impl/viewport/ViewportAxis.xtend
@@ -56,6 +56,8 @@
this.visiblePixelSize = visiblePixelSize
}
+ // Viewport origin
+
def getViewportOrigin() { viewportOrigin }
def void setViewportOrigin(double viewportOrigin) {
@@ -67,10 +69,12 @@
viewportAxisListener?.viewportAxisChanged
}
- def getOriginSegmentPosition() {
+ def getViewportOriginSegmentPosition() {
underlyingAxis.getSegmentPositionOfPixelLocation(viewportOrigin)
}
+ // Resize
+
def void handleResize() {
// If the visible pixel size is greater than the content size, move origin to fill as much content as possible.
val additionalSize = viewportOrigin + getVisiblePixelSize - underlyingAxis.pixelSize
@@ -84,7 +88,7 @@
val endPixel = viewportOrigin + getVisiblePixelSize
val endSegmentPosition = underlyingAxis.getSegmentPositionOfPixelLocation(endPixel)
val isEndPixelInsideEndSegment = endPixel > underlyingAxis.getStartPixelOfSegmentPosition(endSegmentPosition) && endPixel < underlyingAxis.getStartPixelOfSegmentPosition(underlyingAxis.segmentCount)
- val segmentCount = endSegmentPosition - originSegmentPosition
+ val segmentCount = endSegmentPosition - viewportOriginSegmentPosition
segmentCount.intValue + if (isEndPixelInsideEndSegment) 1 else 0
}
@@ -94,33 +98,33 @@
else if (maxPixelSize != null && segmentPosition == segmentCount)
getStartPixelOfSegmentPosition(0) + maxPixelSize
else
- (underlyingAxis.getStartPixelOfSegmentPosition(originSegmentPosition + BigInteger::valueOf(segmentPosition)) - viewportOrigin).doubleValue
+ (underlyingAxis.getStartPixelOfSegmentPosition(viewportOriginSegmentPosition + BigInteger::valueOf(segmentPosition)) - viewportOrigin).doubleValue
}
override getOriginPixelOfSegmentPosition(int segmentPosition) {
- (underlyingAxis.getOriginPixelOfSegmentPosition(originSegmentPosition + BigInteger::valueOf(segmentPosition)) - viewportOrigin).doubleValue
+ (underlyingAxis.getOriginPixelOfSegmentPosition(viewportOriginSegmentPosition + BigInteger::valueOf(segmentPosition)) - viewportOrigin).doubleValue
}
override getPixelSizeOfSegmentPosition(int segmentPosition) {
if (maxPixelSize != null && segmentPosition == segmentCount - 1)
maxPixelSize.doubleValue
else
- underlyingAxis.getPixelSizeOfSegmentPosition(originSegmentPosition + BigInteger::valueOf(segmentPosition)).doubleValue
+ underlyingAxis.getPixelSizeOfSegmentPosition(viewportOriginSegmentPosition + BigInteger::valueOf(segmentPosition)).doubleValue
}
override getSegmentPositionOfPixelLocation(double pixelLocation) {
val underlyingPixelLocation = viewportOrigin + BigDecimal::valueOf(pixelLocation)
if (underlyingPixelLocation < BigDecimal::ZERO) return -1
if (underlyingPixelLocation >= underlyingAxis.pixelSize) return getSegmentCount()
- (underlyingAxis.getSegmentPositionOfPixelLocation(underlyingPixelLocation) - originSegmentPosition).intValueExact
+ (underlyingAxis.getSegmentPositionOfPixelLocation(underlyingPixelLocation) - viewportOriginSegmentPosition).intValueExact
}
override getIdOfSegmentPosition(int segmentPosition) {
- underlyingAxis.getIdOfSegmentPosition(originSegmentPosition + BigInteger::valueOf(segmentPosition))
+ underlyingAxis.getIdOfSegmentPosition(viewportOriginSegmentPosition + BigInteger::valueOf(segmentPosition))
}
override getSegmentPositionOfId(Serializable segmentId) {
- (underlyingAxis.getSegmentPositionOfId(segmentId) - originSegmentPosition).intValueExact
+ (underlyingAxis.getSegmentPositionOfId(segmentId) - viewportOriginSegmentPosition).intValueExact
}
}
\ No newline at end of file
diff --git a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/core/layer/impl/viewport/ViewportCell.xtend b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/core/layer/impl/viewport/ViewportCell.xtend
index 8f6e27d..262ac15 100644
--- a/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/core/layer/impl/viewport/ViewportCell.xtend
+++ b/org.eclipse.nebula.widgets.nattable.core/src/org/eclipse/nebula/widgets/nattable/core/layer/impl/viewport/ViewportCell.xtend
@@ -23,8 +23,8 @@
override getPositionBounds() {
val underlyingPositionBounds = underlyingCell.positionBounds
new PositionRectangle(
- (underlyingPositionBounds.columnPosition - viewportLayer.horizontalAxis.originSegmentPosition).intValueExact,
- (underlyingPositionBounds.rowPosition - viewportLayer.verticalAxis.originSegmentPosition).intValueExact,
+ (underlyingPositionBounds.columnPosition - viewportLayer.horizontalAxis.viewportOriginSegmentPosition).intValueExact,
+ (underlyingPositionBounds.rowPosition - viewportLayer.verticalAxis.viewportOriginSegmentPosition).intValueExact,
underlyingPositionBounds.width.intValueExact,
underlyingPositionBounds.height.intValueExact
)
@@ -40,8 +40,8 @@
def getUnderlyingCell() {
viewportLayer.underlyingLayer.getCell(
- viewportLayer.horizontalAxis.originSegmentPosition + BigInteger::valueOf(columnPosition),
- viewportLayer.verticalAxis.originSegmentPosition + BigInteger::valueOf(rowPosition)
+ viewportLayer.horizontalAxis.viewportOriginSegmentPosition + BigInteger::valueOf(columnPosition),
+ viewportLayer.verticalAxis.viewportOriginSegmentPosition + BigInteger::valueOf(rowPosition)
)
}