org.argouml.uml.diagram.static_structure.ui
Class FigComment

java.lang.Object
  extended byorg.tigris.gef.presentation.Fig
      extended byorg.tigris.gef.presentation.FigGroup
          extended byorg.tigris.gef.presentation.FigNode
              extended byorg.argouml.uml.diagram.ui.FigNodeModelElement
                  extended byorg.argouml.uml.diagram.static_structure.ui.FigComment
All Implemented Interfaces:
ArgoEventListener, ArgoNotationEventListener, Cloneable, org.tigris.gef.presentation.Connecter, DelayedVChangeListener, EventListener, org.tigris.gef.ui.Highlightable, KeyListener, MouseListener, NotationContext, org.tigris.gef.ui.PopupGenerator, PropertyChangeListener, Serializable, VetoableChangeListener

public class FigComment
extends FigNodeModelElement
implements VetoableChangeListener, DelayedVChangeListener, MouseListener, KeyListener, PropertyChangeListener

Class to display a UML comment in a diagram.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.argouml.uml.diagram.ui.FigNodeModelElement
 
Field Summary
private  org.tigris.gef.presentation.FigPoly body
           
private  int gapY
           
private  int height
           
private static Logger LOG
           
private static int MARGIN
           
private  boolean readyToEdit
           
private  org.tigris.gef.presentation.FigText text
           
private  org.tigris.gef.presentation.FigPoly urCorner
           
private  int width
           
private  int x
           
private  int y
           
 
Fields inherited from class org.argouml.uml.diagram.ui.FigNodeModelElement
ABSTRACT, ACTIVE, LEAF, POPUP_ADD_OFFSET, 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.FigGroup
_dynObjects, _extraFrameSpace
 
Fields inherited from class org.tigris.gef.presentation.Fig
_allowsSaving, _context, _dashes, _dashPeriod, _dashStyle, _displayed, _fillColor, _filled, _group, _h, _layer, _lineColor, _lineWidth, _locked, _resource, _selected, _shown, _w, _x, _y, an, annotationOwner, annotationStatus, BORDER, MIN_SIZE
 
Constructor Summary
FigComment()
          The main constructor used for file loading.
FigComment(org.tigris.gef.graph.GraphModel gm, Object node)
          Construct a new comment.
 
Method Summary
 Object clone()
          Clone this figure.
 void delayedVetoableChange(PropertyChangeEvent pce)
           
 Color getFillColor()
           
 boolean getFilled()
           
 Color getLineColor()
           
 int getLineWidth()
           
 Dimension getMinimumSize()
          Get the minimum size for the note figure.
 boolean getUseTrapRect()
           
 void keyPressed(KeyEvent ke)
           
 void keyReleased(KeyEvent ke)
          not used, do nothing.
 void keyTyped(KeyEvent ke)
           
protected  void modelChanged(PropertyChangeEvent mee)
          This is called after any part of the UML ModelElement (the comment) has changed.
 void mouseClicked(MouseEvent me)
          If the user double clicks on any part of this FigNode, pass it down to one of the internal Figs.
 String placeString()
          Get the default text for this figure.
 void propertyChange(PropertyChangeEvent pve)
           
 String retrieveNote()
          Retrieve the note from the associated model element.
 void setBounds(int px, int py, int w, int h)
           
 void setEnclosingFig(org.tigris.gef.presentation.Fig encloser)
          Updates the modelelement container if the fig is moved in or out another fig.
 void setFillColor(Color col)
           
 void setFilled(boolean f)
           
 void setLineColor(Color col)
           
 void setLineWidth(int w)
           
 void storeNote(String note)
          Store a note in the associated model element.
protected  void textEdited(org.tigris.gef.presentation.FigText ft)
          This method is called after the user finishes editing a text field that is in the FigNodeModelElement.
protected  void updateBounds()
          set some new bounds.
protected  void updateNameText()
          Updates the text of the name FigText.
 void vetoableChange(PropertyChangeEvent pce)
           
 
Methods inherited from class org.argouml.uml.diagram.ui.FigNodeModelElement
addEnclosedFig, addFig, allowRemoveFromDiagram, buildModifierPopUp, buildVisibilityPopUp, calcBounds, classNameAndBounds, createFeatureIn, damage, deleteFromModel, displace, elementOrdering, enableSizeChecking, finalize, getBigPort, getContextNotation, getEnclosedFigs, getEncloser, getEnclosingFig, getItalicLabelFont, getItemUID, getLabelFont, getName, getNameFig, getPopUpActions, getShadowSize, getStereotype, getStereotypeFig, getStereotypeFigText, getTipString, hit, hitClarifier, isCheckSize, isPartlyOwner, isPartlyOwner, isReadyToEdit, makeSelection, notationAdded, notationChanged, notationProviderAdded, notationProviderRemoved, notationRemoved, paint, paintClarifiers, postLoad, redrawEnclosedFigs, removeEnclosedFig, removeFromDiagram, renderingChanged, setBigPort, setEncloser, setItemUID, setName, setNameFig, setOwner, setReadyToEdit, setShadowSize, setStereotype, setStereotypeFig, setSuppressCalcBounds, updateFigGroupSize, updateListeners, updateStereotypeText
 
Methods inherited from class org.tigris.gef.presentation.FigNode
addFigEdge, bindPort, cleanUp, contains, deepHitPort, delete, dispose, endTrans, getBlinkPorts, getFigEdges, getFigEdges, getHighlight, getPortFig, getPortFigs, getPortSector, hidePorts, hitPort, hitPort, isBlinkPorts, isDragConnectable, mouseEntered, mouseExited, mousePressed, mouseReleased, removeFigEdge, removePort, setBlinkPorts, setHighlight, showPorts, superTranslate, translate, updateEdges
 
Methods inherited from class org.tigris.gef.presentation.FigGroup
addFigs, deepSelect, elements, getDisplayedFigs, getExtraFrameSpace, getFigAt, getFigs, getFigs, getFont, getFontFamily, getFontSize, getPrivateData, getSize, 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 org.tigris.gef.presentation.Fig
addAnnotation, addPoint, addPropertyChangeListener, align, center, connectionPoint, contains, contains, countCornersContained, createDrag, drawDashedLine, drawDashedPerimeter, firePropChange, firePropChange, firePropChange, getAnnotationOwner, getAnnotationStrategy, getBounds, getBounds, getClosestPoint, getContext, getDashed, getDashed01, getDashedString, getFilled01, getFirstPoint, getGravityPoints, getGroup, getHalfHeight, getHalfWidth, getHandleBox, getHeight, getId, getLastPoint, getLayer, getLocation, getLocked, getNumPoints, getOwner, getPerimeterLength, getPoint, getPoints, getPreferredSize, getResource, getSingle, getTrapRect, getVisState, getWidth, getX, getXs, getY, getYs, hasFillColor, hasLineColor, initAnnotations, insertPoint, intersects, intersectsPerimeter, isAnnotation, isCopieable, isCopyable, isCutable, isDisplayed, isLowerRightResizable, isMovable, isResizable, isSelected, isVisible, OK, pointAlongPerimeter, postSave, preSave, print, redraw, removeAnnotation, removeAnnotation, removePoint, removePropertyChangeListener, reorder, routingRect, savingAllowed, setAnnotationOwner, setAnnotationStatus, setAnnotationStrategy, setBounds, setCenter, setContext, setDashed, setDashedString, setDisplayed, setGroup, setHandleBox, setHeight, setLayer, setLocation, setLocation, setLocked, setMovable, setNumPoints, setPoint, setPoint, setPoint, setPoint, setPoints, setPoints, setPoints, setPoints, setPoints, setResizable, setResource, setSavingAllowed, setSelected, setSingle, setSize, setSize, setVisible, setVisState, setWidth, setX, setXs, setY, setYs, stuffBounds, stuffPointAlongPerimeter, translateAnnotations, unsetAnnotationOwner, updateAnnotationPositions, updateVisState, within
 
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.tigris.gef.ui.Highlightable
addPropertyChangeListener, removePropertyChangeListener
 

Field Detail

LOG

private static final Logger LOG

x

private int x

y

private int y

width

private int width

height

private int height

gapY

private int gapY

readyToEdit

private boolean readyToEdit

MARGIN

private static final int MARGIN
See Also:
Constant Field Values

text

private org.tigris.gef.presentation.FigText text

body

private org.tigris.gef.presentation.FigPoly body

urCorner

private org.tigris.gef.presentation.FigPoly urCorner
Constructor Detail

FigComment

public FigComment()
The main constructor used for file loading.


FigComment

public FigComment(org.tigris.gef.graph.GraphModel gm,
                  Object node)
Construct a new comment.

Parameters:
gm - the graphmodel
node - the underlying UML Comment
Method Detail

placeString

public String placeString()
Get the default text for this figure.

Overrides:
placeString in class FigNodeModelElement
Returns:
The default text for this figure.

clone

public Object clone()
Clone this figure.

Overrides:
clone in class FigNodeModelElement
Returns:
The cloned figure.
See Also:
Object.clone()

mouseClicked

public void mouseClicked(MouseEvent me)
If the user double clicks on any part of this FigNode, pass it down to one of the internal Figs. This allows the user to initiate direct text editing.

Specified by:
mouseClicked in interface MouseListener
Overrides:
mouseClicked in class FigNodeModelElement
See Also:
MouseListener.mouseClicked(java.awt.event.MouseEvent)

vetoableChange

public void vetoableChange(PropertyChangeEvent pce)
Specified by:
vetoableChange in interface VetoableChangeListener
Overrides:
vetoableChange in class FigNodeModelElement
See Also:
VetoableChangeListener.vetoableChange(java.beans.PropertyChangeEvent)

delayedVetoableChange

public void delayedVetoableChange(PropertyChangeEvent pce)
Specified by:
delayedVetoableChange in interface DelayedVChangeListener
Overrides:
delayedVetoableChange in class FigNodeModelElement
See Also:
DelayedVChangeListener.delayedVetoableChange(java.beans.PropertyChangeEvent)

propertyChange

public void propertyChange(PropertyChangeEvent pve)
Specified by:
propertyChange in interface PropertyChangeListener
Overrides:
propertyChange in class FigNodeModelElement
See Also:
PropertyChangeListener.propertyChange(java.beans.PropertyChangeEvent)

keyPressed

public void keyPressed(KeyEvent ke)
Specified by:
keyPressed in interface KeyListener
Overrides:
keyPressed in class FigNodeModelElement
See Also:
KeyListener.keyPressed(java.awt.event.KeyEvent)

keyReleased

public void keyReleased(KeyEvent ke)
not used, do nothing.

Specified by:
keyReleased in interface KeyListener
Overrides:
keyReleased in class FigNodeModelElement
See Also:
KeyListener.keyReleased(java.awt.event.KeyEvent)

keyTyped

public void keyTyped(KeyEvent ke)
Specified by:
keyTyped in interface KeyListener
Overrides:
keyTyped in class FigNodeModelElement
See Also:
KeyListener.keyTyped(java.awt.event.KeyEvent)

setLineColor

public void setLineColor(Color col)
See Also:
Fig.setLineColor(java.awt.Color)

getLineColor

public Color getLineColor()
See Also:
Fig.getLineColor()

setFillColor

public void setFillColor(Color col)
See Also:
Fig.setFillColor(java.awt.Color)

getFillColor

public Color getFillColor()
See Also:
Fig.getFillColor()

setFilled

public void setFilled(boolean f)
See Also:
Fig.setFilled(boolean)

getFilled

public boolean getFilled()
See Also:
Fig.getFilled()

setLineWidth

public void setLineWidth(int w)
See Also:
Fig.setLineWidth(int)

getLineWidth

public int getLineWidth()
See Also:
Fig.getLineWidth()

textEdited

protected void textEdited(org.tigris.gef.presentation.FigText ft)
                   throws PropertyVetoException
Description copied from class: FigNodeModelElement
This method is called after the user finishes editing a text field that is in the FigNodeModelElement. Determine which field and update the model. This class handles the name, subclasses should override to handle other text elements.

Overrides:
textEdited in class FigNodeModelElement
Parameters:
ft - the FigText that has been edited and contains the new text
Throws:
PropertyVetoException - thrown when new text represents an unacceptable value
See Also:
FigNodeModelElement.textEdited(org.tigris.gef.presentation.FigText)

setEnclosingFig

public void setEnclosingFig(org.tigris.gef.presentation.Fig encloser)
Description copied from class: FigNodeModelElement
Updates the modelelement container if the fig is moved in or out another fig. If this fig doesn't have an enclosing fig anymore, the namespace of the diagram will be the owning modelelement. If this fig is moved inside another FigNodeModelElement the owner of that fignodemodelelement will be the owning modelelement.

Overrides:
setEnclosingFig in class FigNodeModelElement
See Also:
Fig.setEnclosingFig(org.tigris.gef.presentation.Fig)

storeNote

public final void storeNote(String note)
Store a note in the associated model element.

Parameters:
note - The note to store.

retrieveNote

public final String retrieveNote()
Retrieve the note from the associated model element.

Returns:
The note from the associated model element.

getUseTrapRect

public boolean getUseTrapRect()
See Also:
Fig.getUseTrapRect()

getMinimumSize

public Dimension getMinimumSize()
Get the minimum size for the note figure.

Returns:
The minimum size for the note figure.

setBounds

public void setBounds(int px,
                      int py,
                      int w,
                      int h)
See Also:
Fig.setBounds(int, int, int, int)

updateBounds

protected void updateBounds()
Description copied from class: FigNodeModelElement
set some new bounds.

Overrides:
updateBounds in class FigNodeModelElement
See Also:
FigNodeModelElement.updateBounds()

modelChanged

protected final void modelChanged(PropertyChangeEvent mee)
This is called after any part of the UML ModelElement (the comment) has changed. This method automatically updates the note FigText.

Overrides:
modelChanged in class FigNodeModelElement
Parameters:
mee - the ModelElementEvent that caused the change
See Also:
FigNodeModelElement.modelChanged(java.beans.PropertyChangeEvent)

updateNameText

protected void updateNameText()
Description copied from class: FigNodeModelElement
Updates the text of the name FigText.

Overrides:
updateNameText in class FigNodeModelElement
See Also:
FigNodeModelElement.updateNameText()


ArgoUML © 1996-2004 (20050222)ArgoUML HomepageArgoUML Developers' pageArgoUML Cookbook