|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.tigris.gef.presentation.Fig
org.tigris.gef.presentation.FigGroup
org.tigris.gef.presentation.FigNode
org.argouml.uml.diagram.ui.FigNodeModelElement
org.argouml.uml.diagram.activity.ui.FigObjectFlowState
Class to display graphics for a UML ObjectFlowState in a diagram.
The Fig of this modelelement may either represent the following UMLelements:
(1) an ObjectFlowState with a Classifier as type, or
(2) an ObjectFlowState with a ClassifierInState as type.
In both cases (1) and (2), the Fig shows the underlined name of the Classifier, and in the latter case (2), it shows also the names of the states of the ClassifierInState.
In the examples in the UML standard, this is written like
PurchaseOrder
[approved]
i.e. in 2 lines. The first line is underlined,
to indicate that it is an instance (object).The fact that the first line is underlined, and the 2nd not, is the reason to implement them in 2 seperate Figs.
TODO: Allow stereotypes to be shown.
| Field Summary |
| Fields inherited from class org.argouml.uml.diagram.ui.FigNodeModelElement |
ABSTRACT, ACTIVE, invisibleAllowed, LEAF, notationProviderName, ROOT, ROWHEIGHT, SHADOW_COLOR_ALPHA, SHADOW_COLOR_VALUE, STEREOHEIGHT |
| Fields inherited from class org.tigris.gef.presentation.FigNode |
_blinkPorts, _highlight, ang135, ang225, ang315, ang45 |
| Fields inherited from class org.tigris.gef.presentation.Fig |
_allowsSaving, _context, _dashes, _dashPeriod, _dashStyle, _filled, _h, _w, _x, _y, an, annotationOwner, annotationStatus, BORDER, MIN_SIZE, plotter |
| Constructor Summary | |
FigObjectFlowState()
Main Constructor FigObjectFlowState (called from file loading). |
|
FigObjectFlowState(GraphModel gm,
Object node)
Constructor FigObjectFlowState that hooks the Fig into an existing UML model element. |
|
| Method Summary | |
Object |
clone()
After the base clone method has been called determine which child figs of the clone represent the name, stereotype and port. |
Color |
getFillColor()
|
boolean |
getFilled()
|
Color |
getLineColor()
|
int |
getLineWidth()
|
Dimension |
getMinimumSize()
Get the minimum size. |
protected void |
initNotationProviders(Object own)
Create the NotationProviders. |
void |
keyTyped(KeyEvent ke)
|
Selection |
makeSelection()
|
protected void |
modelChanged(PropertyChangeEvent mee)
This is called after any part of the UML MModelElement has changed. |
String |
placeString()
Default Reply text to be shown while placing node in diagram. |
void |
renderingChanged()
Rerenders the fig. |
protected void |
setBoundsImpl(int x,
int y,
int w,
int h)
Override setBounds to keep shapes looking right. |
void |
setFillColor(Color col)
|
void |
setFilled(boolean f)
|
void |
setLineColor(Color col)
|
void |
setLineWidth(int w)
|
protected void |
textEdited(FigText ft)
This method is called after the user finishes editing a text field that is in the FigNodeModelElement. |
protected void |
textEditStarted(FigText ft)
This method is called when the user doubleclicked on the text field, and starts editing. |
protected void |
updateListeners(Object oldOwner,
Object newOwner)
Implementations of this method should register/unregister the fig for all (model)events. |
| Methods inherited from class org.tigris.gef.presentation.FigNode |
addFigEdge, bindPort, cleanUp, contains, deepHitPort, dispose, endTrans, getFigEdges, getFigEdges, getHighlight, getPortFig, getPortFigs, getPortSector, hidePorts, hitPort, hitPort, isBlinkPorts, mouseEntered, mouseExited, mousePressed, mouseReleased, paint, removeFigEdge, removePort, setBlinkPorts, setHighlight, showPorts, superTranslate, translateImpl, updateEdges |
| Methods inherited from class org.tigris.gef.presentation.FigGroup |
addFig, addFigs, deepSelect, elements, getDisplayedFigs, getExtraFrameSpace, getFigAt, getFigCount, getFigPosn, getFigs, getFont, getFontFamily, getFontSize, getPrivateData, getSubFigBounds, getTextColor, getTextFillColor, getTextFilled, hitFig, isReshapable, isRotatable, iterator, parseDynObjects, removeAll, removeFig, setExtraFrameSpace, setFigs, setFigs, setFont, setFontFamily, setFontSize, setPrivateData, setTextColor, setTextFillColor, setTextFilled |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface java.awt.event.MouseListener |
mouseEntered, mouseExited, mousePressed, mouseReleased |
| Methods inherited from interface org.argouml.cognitive.Highlightable |
getHighlight, setHighlight |
| Methods inherited from interface org.tigris.gef.di.GraphicElement |
getId, getOwner, routingRect |
| Constructor Detail |
public FigObjectFlowState()
public FigObjectFlowState(GraphModel gm,
Object node)
gm - ignored!node - owner, i.e. the UML element| Method Detail |
protected void initNotationProviders(Object own)
FigNodeModelElement
initNotationProviders in class FigNodeModelElementown - the current ownerFigNodeModelElement.initNotationProviders(java.lang.Object)protected void modelChanged(PropertyChangeEvent mee)
FigNodeModelElement
modelChanged in class FigNodeModelElementmee - the ModelElementEvent that caused the changeFigNodeModelElement.modelChanged(java.beans.PropertyChangeEvent)
protected void updateListeners(Object oldOwner,
Object newOwner)
FigNodeModelElementAn explanation of the original purpose of this method is given in issue 1321.
This function is used in UMLDiagram, which removes all listeners to all Figs when a diagram is not displayed, and restore them when it becomes visible again.
In this case, it is imperative that indeed ALL listeners are updated, since they are ALL removed by the call to removeElementListener.
Additionally, this function may be used by the modelChanged() function.
In this case, it is also imperative that all listeners get removed / added.
updateListeners in class FigNodeModelElementnewOwner - null, or the owner of this.
The former means that listeners have to be removed,
the latter that they have to be set.
TODO: Should this not be boolean, to clarify?org.argouml.uml.diagram.ui.FigNodeModelElement#updateListeners(java.lang.Object)public String placeString()
FigNodeModelElement
placeString in class FigNodeModelElementFigNodeModelElement.placeString()public Object clone()
FigNodeModelElementThe clone function is used by Copy/Paste operations.
clone in class FigNodeModelElementObject.clone()public Dimension getMinimumSize()
Fig.getMinimumSize()
protected void setBoundsImpl(int x,
int y,
int w,
int h)
Fig.setBoundsImpl(int, int, int, int)public void renderingChanged()
FigNodeModelElementThis functionality was originally the functionality of modelChanged but modelChanged takes the event now into account.
renderingChanged in class FigNodeModelElementFigNodeModelElement.renderingChanged()public void setLineColor(Color col)
Fig.setLineColor(java.awt.Color)public Color getLineColor()
Fig.getLineColor()public void setFillColor(Color col)
Fig.setFillColor(java.awt.Color)public Color getFillColor()
Fig.getFillColor()public void setFilled(boolean f)
Fig.setFilled(boolean)public boolean getFilled()
Fig.getFilled()public void setLineWidth(int w)
Fig.setLineWidth(int)public int getLineWidth()
Fig.getLineWidth()public void keyTyped(KeyEvent ke)
keyTyped in interface KeyListenerkeyTyped in class FigNodeModelElementKeyListener.keyPressed(java.awt.event.KeyEvent)
protected void textEdited(FigText ft)
throws PropertyVetoException
FigNodeModelElement
textEdited in class FigNodeModelElementft - the FigText that has been edited and contains the new text
PropertyVetoException - thrown when new text represents
an unacceptable valueFigNodeModelElement.textEdited(org.tigris.gef.presentation.FigText)protected void textEditStarted(FigText ft)
FigNodeModelElement
It is also possible to alter the text to be edited
already here, e.g. by adding the stereotype in front of the name,
by calling
notationProviderName.putValue("fullyHandleStereotypes",
true);, but that seems not user-friendly. See issue 3838.
textEditStarted in class FigNodeModelElementft - the FigText that will be edited and contains the start-textFigNodeModelElement.textEditStarted(org.tigris.gef.presentation.FigText)public Selection makeSelection()
makeSelection in class FigNodeModelElementFig.makeSelection()
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
| ArgoUML © 1996-2006 | ArgoUML Homepage | ArgoUML Developers' page | ArgoUML Cookbook |