de.cau.cs.kieler.core.ui.figures
Class AttributeAwareConnection

java.lang.Object
  extended by org.eclipse.draw2d.Figure
      extended by org.eclipse.draw2d.Shape
          extended by org.eclipse.draw2d.AbstractPointListShape
              extended by org.eclipse.draw2d.Polyline
                  extended by org.eclipse.draw2d.PolylineConnection
                      extended by org.eclipse.gmf.runtime.draw2d.ui.figures.PolylineConnectionEx
                          extended by de.cau.cs.kieler.core.ui.figures.SplineConnection
                              extended by de.cau.cs.kieler.core.ui.figures.AttributeAwareConnection
All Implemented Interfaces:
IAttributeAwareFigure, AnchorListener, Connection, IFigure, Adapter, IAnchorableFigure, IPolygonAnchorableFigure
Direct Known Subclasses:
AttributeAwareTransitionFigure

public abstract class AttributeAwareConnection
extends SplineConnection
implements IAttributeAwareFigure

An attribute aware polyline connection figure that is able to change its decoration according to attribute changes.

Rating proposed yellow
(2010-01-26) msp

Nested Class Summary
 
Nested classes/interfaces inherited from class de.cau.cs.kieler.core.ui.figures.SplineConnection
SplineConnection.ArrowLocatorEx
 
Nested classes/interfaces inherited from class org.eclipse.gmf.runtime.draw2d.ui.figures.PolylineConnectionEx
PolylineConnectionEx.JumpLink, PolylineConnectionEx.JumpLinkSet
 
Nested classes/interfaces inherited from class org.eclipse.draw2d.Figure
Figure.FigureIterator, Figure.IdentitySearch
 
Nested classes/interfaces inherited from interface org.eclipse.draw2d.IFigure
IFigure.NoInsets
 
Nested classes/interfaces inherited from interface org.eclipse.emf.common.notify.Adapter
Adapter.Internal
 
Field Summary
 
Fields inherited from class de.cau.cs.kieler.core.ui.figures.SplineConnection
PREF_SPLINE_MODE, SPLINE_CUBIC, SPLINE_CUBIC_APPROX, SPLINE_OFF
 
Fields inherited from class org.eclipse.gmf.runtime.draw2d.ui.figures.PolylineConnectionEx
JUMPLINK_FLAG_ABOVE, JUMPLINK_FLAG_ALL, JUMPLINK_FLAG_BELOW, SMOOTH_LESS, SMOOTH_MORE, SMOOTH_NONE, SMOOTH_NORMAL
 
Fields inherited from class org.eclipse.draw2d.Shape
lineStyle, lineWidth
 
Fields inherited from class org.eclipse.draw2d.Figure
bgColor, border, bounds, fgColor, flags, font, MAX_FLAG, maxSize, minSize, NO_MANAGER, prefSize, toolTip
 
Fields inherited from interface org.eclipse.draw2d.IFigure
MAX_DIMENSION, MIN_DIMENSION, NO_INSETS
 
Fields inherited from interface org.eclipse.draw2d.Connection
PROPERTY_CONNECTION_ROUTER, PROPERTY_POINTS
 
Constructor Summary
AttributeAwareConnection()
          The constructor.
 
Method Summary
protected  void addConditionalDecoration(RotatableDecoration sourceDeco, RotatableDecoration targetDeco, ICondition<EObject> condition)
          Adds a decoration with associated condition.
 Notifier getTarget()
          
 void listenTo(EObject object)
          Listen to changes in attributes of the given model element.
 void notifyChanged(Notification notification)
          Adjust the look of the connection according to the changes recorded in the notification.
 void setDefaultDecoration(RotatableDecoration sourceDeco, RotatableDecoration targetDeco)
          Set the default decoration of the connection.
 void setTarget(Notifier newTarget)
          
 
Methods inherited from class de.cau.cs.kieler.core.ui.figures.SplineConnection
calculateTolerance, containsPoint, getSplineMode, isFeedbackLayer, lineContainsPoint, outlineShape, setSourceDecoration, setSplineMode, setTargetDecoration
 
Methods inherited from class org.eclipse.gmf.runtime.draw2d.ui.figures.PolylineConnectionEx
addPoint, createAnchor, createConnectionAnchor, createDefaultAnchor, dirtyAllJumpLinks, findLineSegIndexOfPoint, getBounds, getConnectionAnchor, getConnectionAnchors, getConnectionAnchorTerminal, getCursor, getPolygonPoints, getRoundedBendpointsRadius, getRoundedCornersPoints, getSimpleBounds, getSlidableAnchorArea, getSmoothness, getSmoothPoints, getSmoothPoints, getSourceConnectionAnchorAt, getSourceDecoration, getTargetConnectionAnchorAt, getTargetDecoration, insertPoint, isAvoidObstacleRouting, isClosestDistanceRouting, isDefaultAnchorArea, isJumpLinksAngledIn, isJumpLinksOnBottom, isJumpLinksSmooth, isRoundingBendpoints, refreshLine, setForegroundColor, setJumpLinks, setJumpLinksStyles, setLineDash, setLineWidth, setPoints, setRoundedBendpointsRadius, setRoutingStyles, setSmoothness, setSourceDecoration, setTargetDecoration, shouldJumpLinks
 
Methods inherited from class org.eclipse.draw2d.PolylineConnection
addNotify, addRoutingListener, anchorMoved, getConnectionRouter, getRoutingConstraint, getSourceAnchor, getTargetAnchor, layout, removeNotify, removeRoutingListener, revalidate, setConnectionRouter, setRoutingConstraint, setSourceAnchor, setTargetAnchor
 
Methods inherited from class org.eclipse.draw2d.Polyline
fillShape, isOpaque, primTranslate, removeAllPoints, repaint, setTolerance, shapeContainsPoint
 
Methods inherited from class org.eclipse.draw2d.AbstractPointListShape
childrenContainsPoint, getEnd, getPoints, getStart, removePoint, setEnd, setEndpoints, setPoint, setStart
 
Methods inherited from class org.eclipse.draw2d.Shape
getAlpha, getAntialias, getLineAttributes, getLineCap, getLineDash, getLineDashOffset, getLineJoin, getLineMiterLimit, getLineStyle, getLineWidth, getLineWidthFloat, paintFigure, setAlpha, setAlpha, setAntialias, setAntialias, setFill, setFillXOR, setLineAttributes, setLineCap, setLineDash, setLineDashOffset, setLineJoin, setLineMiterLimit, setLineStyle, setLineWidthFloat, setOutline, setOutlineXOR, setXOR
 
Methods inherited from class org.eclipse.draw2d.Figure
add, add, add, add, addAncestorListener, addCoordinateListener, addFigureListener, addFocusListener, addKeyListener, addLayoutListener, addListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, containsPoint, erase, findDescendantAtExcluding, findFigureAt, findFigureAt, findFigureAt, findFigureAtExcluding, findMouseEventTargetAt, findMouseEventTargetInDescendantsAt, fireCoordinateSystemChanged, fireFigureMoved, fireMoved, firePropertyChange, firePropertyChange, firePropertyChange, getBackgroundColor, getBorder, getChildren, getClientArea, getClientArea, getClippingStrategy, getFlag, getFont, getForegroundColor, getInsets, getLayoutManager, getListeners, getLocalBackgroundColor, getLocalFont, getLocalForegroundColor, getLocation, getMaximumSize, getMinimumSize, getMinimumSize, getParent, getPreferredSize, getPreferredSize, getSize, getToolTip, getUpdateManager, handleFocusGained, handleFocusLost, handleKeyPressed, handleKeyReleased, handleMouseDoubleClicked, handleMouseDragged, handleMouseEntered, handleMouseExited, handleMouseHover, handleMouseMoved, handleMousePressed, handleMouseReleased, hasFocus, internalGetEventDispatcher, intersects, invalidate, invalidateTree, isCoordinateSystem, isEnabled, isFocusTraversable, isMirrored, isMouseEventTarget, isRequestFocusEnabled, isShowing, isValid, isValidationRoot, isVisible, paint, paintBorder, paintChildren, paintClientArea, remove, removeAll, removeAncestorListener, removeCoordinateListener, removeFigureListener, removeFocusListener, removeKeyListener, removeLayoutListener, removeListener, removeMouseListener, removeMouseMotionListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, requestFocus, setBackgroundColor, setBorder, setBounds, setChildrenDirection, setChildrenEnabled, setChildrenOrientation, setClippingStrategy, setConstraint, setCursor, setEnabled, setFlag, setFocusTraversable, setFont, setLayoutManager, setLocation, setMaximumSize, setMinimumSize, setOpaque, setParent, setPreferredSize, setPreferredSize, setRequestFocusEnabled, setSize, setSize, setToolTip, setValid, setVisible, translate, translateFromParent, translateToAbsolute, translateToParent, translateToRelative, useLocalCoordinates, validate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eclipse.draw2d.IFigure
add, add, add, add, addAncestorListener, addCoordinateListener, addFigureListener, addFocusListener, addKeyListener, addLayoutListener, addMouseListener, addMouseMotionListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, containsPoint, containsPoint, erase, findFigureAt, findFigureAt, findFigureAt, findFigureAtExcluding, findMouseEventTargetAt, getBackgroundColor, getBorder, getBounds, getChildren, getClientArea, getClientArea, getClippingStrategy, getCursor, getFont, getForegroundColor, getInsets, getLayoutManager, getLocalBackgroundColor, getLocalForegroundColor, getMaximumSize, getMinimumSize, getMinimumSize, getParent, getPreferredSize, getPreferredSize, getSize, getToolTip, getUpdateManager, handleFocusGained, handleFocusLost, handleKeyPressed, handleKeyReleased, handleMouseDoubleClicked, handleMouseDragged, handleMouseEntered, handleMouseExited, handleMouseHover, handleMouseMoved, handleMousePressed, handleMouseReleased, hasFocus, internalGetEventDispatcher, intersects, invalidate, invalidateTree, isCoordinateSystem, isEnabled, isFocusTraversable, isMirrored, isOpaque, isRequestFocusEnabled, isShowing, isVisible, paint, remove, removeAncestorListener, removeCoordinateListener, removeFigureListener, removeFocusListener, removeKeyListener, removeLayoutListener, removeMouseListener, removeMouseMotionListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, revalidate, setBackgroundColor, setBorder, setBounds, setClippingStrategy, setConstraint, setCursor, setEnabled, setFocusTraversable, setFont, setForegroundColor, setLayoutManager, setLocation, setMaximumSize, setMinimumSize, setOpaque, setParent, setPreferredSize, setRequestFocusEnabled, setSize, setSize, setToolTip, setVisible, translate, translateFromParent, translateToAbsolute, translateToParent, translateToRelative, validate
 
Methods inherited from interface org.eclipse.emf.common.notify.Adapter
isAdapterForType
 
Methods inherited from interface org.eclipse.draw2d.Connection
getPoints
 

Constructor Detail

AttributeAwareConnection

public AttributeAwareConnection()
The constructor.

Method Detail

setDefaultDecoration

public void setDefaultDecoration(RotatableDecoration sourceDeco,
                                 RotatableDecoration targetDeco)
Set the default decoration of the connection.

Parameters:
sourceDeco - the default source decoration
targetDeco - the default target decoration

notifyChanged

public void notifyChanged(Notification notification)
Adjust the look of the connection according to the changes recorded in the notification.

Specified by:
notifyChanged in interface Adapter
Parameters:
notification - The notification that contains the changes to the model element.

getTarget

public Notifier getTarget()

Specified by:
getTarget in interface Adapter

setTarget

public void setTarget(Notifier newTarget)

Specified by:
setTarget in interface Adapter

listenTo

public void listenTo(EObject object)
Listen to changes in attributes of the given model element.

Specified by:
listenTo in interface IAttributeAwareFigure
Parameters:
object - the model element that is watched

addConditionalDecoration

protected void addConditionalDecoration(RotatableDecoration sourceDeco,
                                        RotatableDecoration targetDeco,
                                        ICondition<EObject> condition)
Adds a decoration with associated condition.

Parameters:
sourceDeco - the source decoration
targetDeco - the target decoration
condition - the condition