/** * Handle mouseDragged events. * * @param me The mouse event to process. * @see org.tigris.gef.base.ModeImpl#mouseDragged(java.awt.event.MouseEvent) */ public void mouseDragged(MouseEvent me) { if (dragFig != null) { me = editor.translateMouseEvent(me); Point newPoint = me.getPoint(); // Subtract the the offset of the click, to take account of user // having not initially clicked in the centre. newPoint.translate(-deltax, -deltay); PathItemPlacementStrategy pips = figEdge.getPathItemPlacementStrategy(dragFig); pips.setPoint(newPoint); newPoint = pips.getPoint(); int dx = newPoint.x - dragBasePoint.x; int dy = newPoint.y - dragBasePoint.y; dragBasePoint.setLocation(newPoint); dragFig.translate(dx, dy); me.consume(); editor.damaged(dragFig); } }