JHotDraw is a framework for building Swing drawing applications. It's descended from a toolkit written in SmallTalk by one of the "gang of four" patterns gurus so it's heavily pattern-intensive.
http://www.jhotdraw.org/
What happens when the delete key is pressed?
at reva.manager.view.editor.Antenna$1.figureRequestRemove(Antenna.java:100)
at org.jhotdraw.standard.StandardDrawing.orphan(Unknown Source)
at org.jhotdraw.standard.DeleteFromDrawingVisitor.visitFigure(Unknown Source)
at org.jhotdraw.standard.AbstractFigure.visit(Unknown Source)
at org.jhotdraw.standard.FigureTransferCommand.deleteFigures(Unknown Source)
at org.jhotdraw.standard.DeleteCommand.execute(Unknown Source)
at org.jhotdraw.util.UndoableCommand.execute(Unknown Source)
at org.jhotdraw.standard.StandardDrawingView$DrawingViewKeyListener.keyPressed(Unknown Source)
at java.awt.Component.processKeyEvent(Component.java:5058)
StandardDrawingView.DrawingViewKeyListener
creates a
DeleteCommand
in the constructor. When the delete key is pressed the listener calls
DeleteCommand.isExecutable()
and if it returns true calls
execute()
.
DeleteCommand.isExecutable()
checks some stuff and then delegates to
DeleteCommand.isExecutableWithView()
which checks if any figures are selected and if so returns true.
Keyboard/mouse events start in the DrawingView (it's a JPanel) and then get propagated to the tool that the DrawingEditor returns from a call to
tool()
.
What happens when the mouse is dragged?
[java] at reva.manager.view.editor.AntennaFigure.basicMoveBy(AntennaFigure.java:274)
[java] at org.jhotdraw.standard.AbstractFigure.moveBy(AbstractFigure.java:70)
[java] at org.jhotdraw.standard.DragTracker.mouseDrag(DragTracker.java:64)
[java] at org.jhotdraw.util.UndoableTool.mouseDrag(UndoableTool.java:72)
[java] at org.jhotdraw.standard.SelectionTool.mouseDrag(SelectionTool.java:95)
[java] at org.jhotdraw.contrib.CustomSelectionTool.mouseDrag(CustomSelectionTool.java:74)
[java] at org.jhotdraw.standard.StandardDrawingView$DrawingViewMouseMotionListener.mouseDragged(StandardDrawingView.java:1001)
[java] at org.jhotdraw.contrib.zoom.ZoomDrawingView$2.mouseDragged(ZoomDrawingView.java:367)
[java] at java.awt.Component.processMouseMotionEvent(Component.java:5148)
[java] at javax.swing.JComponent.processMouseMotionEvent(JComponent.java:2779)
[java] at java.awt.Component.processEvent(Component.java:4901)
Copyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding The Caboteria?
Send feedback