org.grinvin.gred.mouse
Class AddEdges
NullMouseHandler
org.grinvin.gred.mouse.AddEdges
public class AddEdges
extends NullMouseHandler
Mouse handler for adding edges. Consumes
all first button click events which were initiated on a vertex.
@Override | boolean canHandle(JComponent parent) - This mouse handler needs a
GraphPanel
as parent which is backed by a (mutable) Graph .
|
static AddEdges | getHandler() - Return the singleton object of this type.
|
@Override | void doMouseClicked(JComponent parent, MouseEvent mouseEvent) - Do nothing when clicked, but consume event.
|
@Override | void doMouseDragged(JComponent parent, MouseEvent mouseEvent, MouseEvent previousEvent, MouseEvent pressedEvent) - Repaint the 'ghost' line.
|
@Override | void doMousePressed(JComponent parent, MouseEvent mouseEvent) - Register the vertex clicked as the current 'anchor' vertex.
|
@Override | void doMouseReleased(JComponent parent, MouseEvent mouseEvent, MouseEvent pressedEvent) - When released on a vertex, join this vertex to the anchor vertex, unless
such an edge already exists.
|
@Override | void paintDragging(JComponent parent, Graphics g, MouseEvent mouseEvent, MouseEvent previousEvent, MouseEvent pressedEvent) - Paints the rubber band line.
|
boolean canHandle
public @Override boolean canHandle(JComponent parent)
This mouse handler needs a
GraphPanel
as parent which is backed by a (mutable)
Graph
.
getHandler
public static AddEdges getHandler()
Return the singleton object of this type.
void doMouseClicked
public @Override void doMouseClicked(JComponent parent,
MouseEvent mouseEvent)
Do nothing when clicked, but consume event.
void doMouseDragged
public @Override void doMouseDragged(JComponent parent,
MouseEvent mouseEvent,
MouseEvent previousEvent,
MouseEvent pressedEvent)
Repaint the 'ghost' line.
void doMousePressed
public @Override void doMousePressed(JComponent parent,
MouseEvent mouseEvent)
Register the vertex clicked as the current 'anchor' vertex.
void doMouseReleased
public @Override void doMouseReleased(JComponent parent,
MouseEvent mouseEvent,
MouseEvent pressedEvent)
When released on a vertex, join this vertex to the anchor vertex, unless
such an edge already exists. If the panel is of type
MutableGraphPanel
then releasing the mouse on an edge will
break that edge, and releasing it on the background will create a new vertex.
void paintDragging
public @Override void paintDragging(JComponent parent,
Graphics g,
MouseEvent mouseEvent,
MouseEvent previousEvent,
MouseEvent pressedEvent)
Paints the rubber band line.