protected final void createMouseListeners() {
    myMouseListener = new MouseAdapter() {
      @Override public void mouseEntered(MouseEvent e) {
        if (myPopup != null && !myPopup.isDisposed()){
          myPopup.cancel();
        }
        initialShowScheduled = true;
        int delay = myInitialDelay;
        if (delay == -1) {
          delay = Registry.intValue("ide.tooltip.initialReshowDelay", 500);
        }
        scheduleShow(e, delay);
      }

      @Override public void mouseExited(MouseEvent e) {
        int delay = myHideDelay;
        if (delay == -1) {
          delay = Registry.intValue("ide.tooltip.initialDelay.highlighter", 150);
        }
        scheduleHide(link == null, delay);
      }

      @Override public void mouseMoved(MouseEvent e) {
        if (!initialShowScheduled) {
          scheduleShow(e, Registry.intValue("ide.tooltip.reshowDelay"));
        }
      }
    };
  }
protected final void createMouseListeners()