@Override public DrawingView findView(Container c) { return target.findView(c); }
@Override public void mouseMoved(MouseEvent evt) { updateCursor(editor.findView((Container) evt.getSource()), evt.getPoint()); } @Override
@Override public void mouseExited(MouseEvent evt) { DrawingView view = editor.findView((Container) evt.getSource()); updateHoverHandles(view, null); }
@Override public void mouseExited(MouseEvent evt) { DrawingView view = editor.findView((Container) evt.getSource()); updateHoverHandles(view, null); dragLocation = null; }
@Override public void mouseMoved(MouseEvent evt) { updateCursor(editor.findView((Container) evt.getSource()), evt.getPoint()); }
@Override public void mousePressed(MouseEvent evt) { DrawingView view = editor.findView((Container) evt.getSource()); view.requestFocus(); anchor = new Point(evt.getX(), evt.getY()); isWorking = true; fireToolStarted(view); }
@Override public void mouseReleased(MouseEvent evt) { updateCursor(editor.findView((Container) evt.getSource()), evt.getPoint()); fireToolDone(); }
@Override public void mouseDragged(MouseEvent evt) { DrawingView view = getView(); if (!transformedFigures.isEmpty()) { if (isDragging == false) { isDragging = true; updateCursor(editor.findView((Container) evt.getSource()), new Point(evt.getX(), evt.getY())); } Point2D.Double currentPoint = view.viewToDrawing(new Point(evt.getX(), evt.getY())); dragRect.x += currentPoint.x - previousPoint.x; dragRect.y += currentPoint.y - previousPoint.y; Rectangle2D.Double constrainedRect = (Rectangle2D.Double) dragRect.clone(); if (view.getConstrainer() != null) { view.getConstrainer().constrainRectangle( constrainedRect); } AffineTransform tx = new AffineTransform(); tx.translate( constrainedRect.x - previousOrigin.x, constrainedRect.y - previousOrigin.y); for (Figure f : transformedFigures) { f.willChange(); f.transform(tx); f.changed(); } previousPoint = currentPoint; previousOrigin = new Point2D.Double(constrainedRect.x, constrainedRect.y); } }
int x = evt.getX(); int y = evt.getY(); updateCursor(editor.findView((Container) evt.getSource()), new Point(x, y)); Point2D.Double newPoint = view.viewToDrawing(new Point(x, y));
@Override public void mouseMoved(MouseEvent evt) { Point point = evt.getPoint(); updateCursor(editor.findView((Container) evt.getSource()), point); DrawingView view = editor.findView((Container) evt.getSource()); updateCursor(view, point); if (view == null || editor.getActiveView() != view) { clearHoverHandles(); } else { // Search first, if one of the selected figures contains // the current mouse location. Only then search for other // figures. This search sequence is consistent with the // search sequence of the SelectionTool. Figure figure = null; Point2D.Double p = view.viewToDrawing(point); for (Figure f : view.getSelectedFigures()) { if (f.contains(p)) { figure = f; } } if (figure == null) { figure = view.findFigure(point); Drawing drawing = view.getDrawing(); while (figure != null && !figure.isSelectable()) { figure = drawing.findFigureBehind(p, figure); } } updateHoverHandles(view, figure); } }
if (!evt.isConsumed()) { if (evt.getSource() instanceof Container) { editor.setActiveView(editor.findView((Container) evt.getSource()));
@Override public void mouseMoved(MouseEvent evt) { clearRubberBand(); Point point = evt.getPoint(); DrawingView view = editor.findView((Container) evt.getSource()); updateCursor(view, point); if (view == null || editor.getActiveView() != view) { clearHoverHandles(); } else { // Search first, if one of the selected figures contains // the current mouse location, and is selectable. // Only then search for other // figures. This search sequence is consistent with the // search sequence of the SelectionTool. Figure figure = null; Point2D.Double p = view.viewToDrawing(point); for (Figure f : view.getSelectedFigures()) { if (f.contains(p)) { figure = f; } } if (figure == null) { figure = view.findFigure(point); while (figure != null && !figure.isSelectable()) { figure = view.getDrawing().findFigureBehind(p, figure); } } updateHoverHandles(view, figure); } }