org.argouml.uml.diagram.ui
Class ModeCreateEdgeAndNode
java.lang.Object
|
+--ModeCreate
|
+--org.argouml.uml.diagram.ui.ModeCreateEdgeAndNode
- public class ModeCreateEdgeAndNode
- extends ModeCreate
A Mode to interpret user input while creating an edge. Basically
mouse down starts creating an edge from a source port Fig, mouse
motion paints a rubberband line, mouse up finds the destination port
and finishes creating the edge and makes an FigEdge and sends
it to the back of the Layer.
The argument "edgeClass" determines the type if edge to suggest
that the Editor's GraphModel construct. The GraphModel is
responsible for acutally making an edge in the underlying model
and connecting it to other model elements.
- See Also:
- Serialized Form
Method Summary |
Fig |
createNewItem(java.awt.event.MouseEvent me,
int snapX,
int snapY)
Create the new item that will be drawn. |
void |
done()
|
java.lang.String |
instructions()
|
void |
keyTyped(java.awt.event.KeyEvent ke)
|
void |
mouseDragged(java.awt.event.MouseEvent me)
|
void |
mouseMoved(java.awt.event.MouseEvent me)
|
void |
mousePressed(java.awt.event.MouseEvent me)
On mousePressed determine what port the user is dragging from. |
void |
mouseReleased(java.awt.event.MouseEvent me)
On mouseReleased, find the destination port, ask the GraphModel
to connect the two ports. |
void |
postProcessEdge()
|
void |
setup(FigNode fn,
java.lang.Object port,
int x,
int y,
boolean reverse)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
cat
protected static Category cat
Drags_To_Existing
public static int Drags_To_Existing
Drags_To_New
public static int Drags_To_New
_handle
protected Handle _handle
- The number of points added so far.
_fn
protected FigNode _fn
_fe
protected FigEdge _fe
_postProcessEdge
protected boolean _postProcessEdge
ModeCreateEdgeAndNode
public ModeCreateEdgeAndNode()
ModeCreateEdgeAndNode
public ModeCreateEdgeAndNode(Editor ed,
java.lang.Class edgeClass,
java.lang.Class nodeClass,
boolean post)
setup
public void setup(FigNode fn,
java.lang.Object port,
int x,
int y,
boolean reverse)
instructions
public java.lang.String instructions()
createNewItem
public Fig createNewItem(java.awt.event.MouseEvent me,
int snapX,
int snapY)
- Create the new item that will be drawn. In this case I would
rather create the FigEdge when I am done. Here I just
create a rubberband FigLine to show during dragging.
done
public void done()
mousePressed
public void mousePressed(java.awt.event.MouseEvent me)
- On mousePressed determine what port the user is dragging from.
The mousePressed event is sent via ModeSelect.
mouseReleased
public void mouseReleased(java.awt.event.MouseEvent me)
- On mouseReleased, find the destination port, ask the GraphModel
to connect the two ports. If that connection is allowed, then
construct a new FigEdge and add it to the Layer and send it to
the back.
mouseMoved
public void mouseMoved(java.awt.event.MouseEvent me)
mouseDragged
public void mouseDragged(java.awt.event.MouseEvent me)
keyTyped
public void keyTyped(java.awt.event.KeyEvent ke)
postProcessEdge
public void postProcessEdge()