@Override
    public int getVerticalScrollDelta(MouseEvent e) {
      Rectangle visibleRect = ((JComponent)e.getComponent()).getVisibleRect();
      return getScrollDelta(visibleRect.y, visibleRect.y + visibleRect.height - 1, e.getY());
    }
@Override
    public int getVerticalScrollDelta(MouseEvent e)