// install custom dispatcher with demo frame
private void installInputEventListener() {
if (!(SwingUtilities.getWindowAncestor(this) instanceof JXDemoFrame)) return;
JXDemoFrame window = (JXDemoFrame) SwingUtilities.getWindowAncestor(this);
if (inputEventDispatcher == null) {
inputEventDispatcher = new AbstractInputEventDispatcher() {
// updates Highlighter for mouseEntered/mouseExited
// of all components in the frame's container hierarchy
@Override
protected void processMouseEvent(MouseEvent e) {
if (MouseEvent.MOUSE_ENTERED == e.getID()) {