protected static void move(VisualItem item, double dx, double dy) { if (item instanceof AggregateItem) { Iterator items = ((AggregateItem) item).items(); while (items.hasNext()) { move((VisualItem) items.next(), dx, dy); } } else { double x = item.getX(); double y = item.getY(); item.setStartX(x); item.setStartY(y); item.setX(x + dx); item.setY(y + dy); item.setEndX(x + dx); item.setEndY(y + dy); } }
@Override public void itemDragged(VisualItem item, MouseEvent e) { if (!SwingUtilities.isRightMouseButton(e)) { return; } if (item.getGroup().equals(m_group)) { dragged = true; // Display d = (Display) e.getComponent(); Display d = controller.getDocumentGrid(); d.getAbsoluteCoordinate(e.getPoint(), temp); double dx = temp.getX() - down.getX(); double dy = temp.getY() - down.getY(); double x = item.getX(); double y = item.getY(); double w = item.getDouble(WIDTH); double h = item.getDouble(HEIGHT); item.setStartX(x); item.setStartY(y); item.setX(x + dx); item.setY(y + dy); item.setEndX(x + dx); item.setEndY(y + dy); item.setBounds(x + dx, y + dy, w, h); if (repaint) { item.getVisualization().repaint(); } down.setLocation(temp); if (action != null) { d.getVisualization().run(action); } } }