@Override
    public int getHorizontalScrollDelta(MouseEvent e) {
      Rectangle visibleRect = ((JComponent)e.getComponent()).getVisibleRect();
      return getScrollDelta(visibleRect.x, visibleRect.x + visibleRect.width - 1, e.getX());
    }
@Override
    public int getHorizontalScrollDelta(MouseEvent e)