invariant contains methods
diff --git a/NatTable/src/org/eclipse/nebula/widgets/nattable/core/axis/AxisInvariants.xtend b/NatTable/src/org/eclipse/nebula/widgets/nattable/core/axis/AxisInvariants.xtend
index cce4fb8..0b906ad 100644
--- a/NatTable/src/org/eclipse/nebula/widgets/nattable/core/axis/AxisInvariants.xtend
+++ b/NatTable/src/org/eclipse/nebula/widgets/nattable/core/axis/AxisInvariants.xtend
@@ -10,4 +10,12 @@
 		axis.getStartPixelOfSegmentPosition(axis.segmentCount) - axis.getStartPixelOfSegmentPosition(0)
 	}
 	
+	def static boolean containsPixelLocation(Axis axis, int pixelLocation) {
+		pixelLocation < axis.getStartPixelOfSegmentPosition(axis.segmentCount)
+	}
+	
+	def static boolean containsSegmentPosition(Axis axis, int segmentPosition) {
+		segmentPosition < axis.segmentCount
+	}
+	
 }
\ No newline at end of file
diff --git a/NatTable/src/org/eclipse/nebula/widgets/nattable/core/layer/LayerInvariants.xtend b/NatTable/src/org/eclipse/nebula/widgets/nattable/core/layer/LayerInvariants.xtend
index ec72e56..de3de64 100644
--- a/NatTable/src/org/eclipse/nebula/widgets/nattable/core/layer/LayerInvariants.xtend
+++ b/NatTable/src/org/eclipse/nebula/widgets/nattable/core/layer/LayerInvariants.xtend
@@ -35,4 +35,14 @@
 		layer.verticalAxis.pixelSize
 	}
 	
+	// Contains
+	
+	def static boolean containsCellPosition(Layer layer, int columnPosition, int rowPosition) {
+		layer.horizontalAxis.containsSegmentPosition(columnPosition) && layer.verticalAxis.containsSegmentPosition(rowPosition)
+	}
+	
+	def static boolean containsPixelLocation(Layer layer, int xPixel, int yPixel) {
+		layer.horizontalAxis.containsPixelLocation(xPixel) && layer.verticalAxis.containsPixelLocation(yPixel)
+	}
+	
 }