void (MouseEvent e) { validateMousePointer(e); EditorMouseEvent event = new EditorMouseEvent(EditorImpl.this, e, getMouseEventArea(e)); if (e.getSource() == myGutterComponent) { myGutterComponent.mouseMoved(e); } if (event.getArea() == EditorMouseEventArea.EDITING_AREA) { FoldRegion fold = myFoldingModel.getFoldingPlaceholderAt(e.getPoint()); TooltipController controller = HintManager.getInstance().getTooltipController(); if (fold != null) { DocumentFragment range = new DocumentFragment(myDocument, fold.getStartOffset(), fold.getEndOffset()); final Point p = SwingUtilities.convertPoint((Component)e.getSource(), e.getPoint(), getComponent().getRootPane().getLayeredPane()); controller.showTooltip(EditorImpl.this, p, range, false, FOLDING_TOOLTIP_GROUP); } else { controller.cancelTooltip(FOLDING_TOOLTIP_GROUP); } } EditorMouseMotionListener[] listeners = myMouseMotionListeners.toArray( new EditorMouseMotionListener[myMouseMotionListeners.size()]); for (int i = 0; i < listeners.length; i++) { listeners[i].mouseMoved(event); } }