src/main/java/com/mxgraph/swing/view/mxInteractiveCanvas.java
public boolean hitSwimlaneContent(mxGraphComponent graphComponent,
			mxCellState swimlane, int x, int y)
	{
		if (swimlane != null)
		{
			int start = (int) Math.max(2, Math.round(mxUtils.getInt(
					swimlane.getStyle(), mxConstants.STYLE_STARTSIZE,
					mxConstants.DEFAULT_STARTSIZE)
					* graphComponent.getGraph().getView().getScale()));
			Rectangle rect = swimlane.getRectangle();

			if (mxUtils.isTrue(swimlane.getStyle(),
					mxConstants.STYLE_HORIZONTAL, true))
			{
				rect.y += start;
				rect.height -= start;
			}
			else
			{
				rect.x += start;
				rect.width -= start;
			}

			return rect.contains(x, y);
		}

		return false;
	}
/**
	 * Returns true if the given point is inside the content area of the given
	 * swimlane. (The content area of swimlanes is transparent to events.) This
	 * implementation does not check if the given state is a swimlane, it is
	 * assumed that the caller has checked this before using this method.
	 */
Returns true if the given point is inside the content area of the given
swimlane. (The content area of swimlanes is transparent to events.) This
implementation does not check if the given state is a swimlane, it is
assumed that the caller has checked this before using this method.
Returns true if the given point is inside the content area of the given swimlane . ( The content area of swimlanes is transparent to events . ) This implementation does not check if the given state is a swimlane it is assumed that the caller has checked this before using this method .
public boolean hitSwimlaneContent(mxGraphComponent graphComponent,
			mxCellState swimlane, int x, int y)
	{
		if (swimlane != null)
		{
			int start = (int) Math.max(2, Math.round(mxUtils.getInt(
					swimlane.getStyle(), mxConstants.STYLE_STARTSIZE,
					mxConstants.DEFAULT_STARTSIZE)
					* graphComponent.getGraph().getView().getScale()));
			Rectangle rect = swimlane.getRectangle();
			if (mxUtils.isTrue(swimlane.getStyle(),
					mxConstants.STYLE_HORIZONTAL, true))
			{
				rect.y += start;
				rect.height -= start;
			}
			else
			{
				rect.x += start;
				rect.width -= start;
			}
			return rect.contains(x, y);
		}
		return false;
	}
public boolean hitSwimlaneContent ( mxGraphComponent graphComponent , mxCellState swimlane , int x , int y ) { if ( swimlane != null ) { int start = ( int ) Math . max ( 2 , Math . round ( mxUtils . getInt ( swimlane . getStyle ( ) , mxConstants . STYLE_STARTSIZE , mxConstants . DEFAULT_STARTSIZE ) * graphComponent . getGraph ( ) . getView ( ) . getScale ( ) ) ) ; Rectangle rect = swimlane . getRectangle ( ) ; if ( mxUtils . isTrue ( swimlane . getStyle ( ) , mxConstants . STYLE_HORIZONTAL , true ) ) { rect . y += start ; rect . height -= start ; } else { rect . x += start ; rect . width -= start ; } return rect . contains ( x , y ) ; } return false ; }
Returns true if the given point is inside the content area of the given
 swimlane.
Returns true if the given point is inside the content area of the given swimlane .