@Override
	public void autoscroll(Point pt) {
		Insets insets = getAutoscrollInsets();
		Dimension size = getSize();
		if (pt.x < insets.left) {
			pt.x -= AUTO_SCROLL_MARGIN;
		} else if (pt.x > size.width - insets.right) {
			pt.x += AUTO_SCROLL_MARGIN;
		}
		if (pt.y < insets.top) {
			pt.y -= AUTO_SCROLL_MARGIN;
		} else if (pt.y > size.height - insets.bottom) {
			pt.y += AUTO_SCROLL_MARGIN;
		}
		scrollRectToVisible(new Rectangle(pt.x, pt.y, 1, 1));
	}