if (logger.isDebugEnabled()) { logger.debug("mouseDragged"); }
    public void mouseDragged (MouseEvent e)    {        if (logger.isDebugEnabled()) {            logger.debug("mouseDragged");        }        if (isDragWanted(e)) {            //logger.info("Dragging");            final Rectangle vr = component.getVisibleRect();            vr.setBounds(vr.x + rawRect.x - e.getX(),                         vr.y + rawRect.y - e.getY(),                         vr.width,                         vr.height);            SwingUtilities.invokeLater(new Runnable()                {                    public void run ()                    {                        component.scrollRectToVisible(vr);                    }                });        } else if (isRubberWanted(e)) {            //logger.info("Modifying rectangle");            updateSize(e);            if (mouseMonitor != null) {                mouseMonitor.rectangleSelected(e, rect);            }        }    }