org.graffiti.plugins.views.defaults
Class EdgeComponent

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by org.graffiti.plugin.view.GraphElementComponent
                      extended by org.graffiti.plugins.views.defaults.AbstractGraphElementComponent
                          extended by org.graffiti.plugins.views.defaults.EdgeComponent
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible, GraphicAttributeConstants, EdgeComponentInterface, GraffitiViewComponent, GraphElementComponentInterface

public class EdgeComponent
extends AbstractGraphElementComponent
implements EdgeComponentInterface

This component represents a org.graffiti.graph.Edge.

Version:
$Revision: 5766 $
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Component
Component.BaselineResizeBehavior
 
Field Summary
 
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface org.graffiti.graphics.GraphicAttributeConstants
ABSOLUTE_X_OFFSET, ABSOLUTE_Y_OFFSET, ALIGNMENT, ALIGNMENT_SEGMENT, ALIGNMENT_X, ALIGNMENT_Y, ARROWHEAD, ARROWSHAPE_CLASSNAME, ARROWTAIL, BEND, BENDS, BENDS_PATH, BGIMAGE, BGIMAGE_PATH, BLUE, BOTTOM_INSIDE, BOTTOM_OUTSIDE, CENTERED, CIRCLE_CENTER, CIRCLE_CENTER_PATH, CIRCLE_CLASSNAME, CIRCLE_LINE_SEGMENTATION_CLASSNAME, CIRCLE_LINE_SEGMENTATION_SHAPE, COMMON, COORD_PATH, COORDINATE, COORDX_PATH, COORDY_PATH, COORDZ_PATH, CUBICSPLINE, CUBICSPLINE_CLASSNAME, DEFAULT_CAP, DEFAULT_EDGE_FILLCOLOR, DEFAULT_EDGE_FRAMECOLOR, DEFAULT_EDGE_FRAMETHICKNESS, DEFAULT_EDGE_THICKNESS, DEFAULT_FONT_SIZE, DEFAULT_GRAPHIC_ELEMENT_FRAMECOLOR, DEFAULT_GRAPHIC_ELEMENT_FRAMETHICKNESS, DEFAULT_JOIN, DEFAULT_MAX_WIDTH, DEFAULT_MITER, DEFAULT_NODE_FILLCOLOR, DEFAULT_NODE_FRAMECOLOR, DEFAULT_NODE_FRAMETHICKNESS, DEFAULT_NODE_SHAPE, DEFAULT_NODE_SIZE, DEPTH, DEPTH_PATH, DIM_PATH, DIMENSION, DIMH_PATH, DIMW_PATH, DOCKING, DOCKING_PATH, EDGE, ELLIPSE_CLASSNAME, END_ANGLE, FILLCOLOR, FILLCOLOR_PATH, FONT, FONT_SIZE, FRAMECOLOR, FRAMETHICKNESS, FRAMETHICKNESS_PATH, GRAPHICS, GREEN, GRID, GRID_PATH, HEIGHT, IMAGE, IN, INTRA_LEVEL_CLASSNAME, LABEL, LABEL_ATTRIBUTE_PATH, LABEL_DISTANCE, LEFT_INSIDE, LEFT_OUTSIDE, LEVEL, LINE_POINT_PATH, LINEMODE, LINEMODE_PATH, LINETYPE, LINEWIDTH_PATH, MAX_WIDTH, MAXIMIZE, NAME, NEARSOURCE, NEARTARGET, NODE, OFFSET, OPAC, OUT, OUTLINE_PATH, POLYCLOSED_CLASSNAME, POLYLINE, POLYLINE_CLASSNAME, PORT, PORTS, PORTS_PATH, POSITION, QUAD_CURVE_EDGE_SHAPE, RECTANGLE_CLASSNAME, RED, REF, RELATIVE_ALIGNMENT, RELATIVE_X_OFFSET, RELATIVE_Y_OFFSET, RIGHT_INSIDE, RIGHT_OUTSIDE, ROTATION, SHAPE, SHAPE_DESC_PATH, SHAPE_PATH, SHAPEDESCRIPTION, SMOOTH_CLASSNAME, SMOOTH_LINE_EDGE_SHAPE, SMOOTHLINE, SOURCE, SPIRAL_CLASSNAME, SQUARESPLINE, SQUARESPLINE_CLASSNAME, START_ANGLE, STRAIGHT_LINE_EDGE_SHAPE, STRAIGHTLINE, STRAIGHTLINE_CLASSNAME, TARGET, TEXTCOLOR, THICKNESS, THICKNESS_PATH, TILED, TOP_INSIDE, TOP_OUTSIDE, WIDTH, X, Y, Z
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
EdgeComponent(GraphElement ge, NodeComponent source, NodeComponent target)
          Constructor for EdgeComponent.
 
Method Summary
 boolean contains(int x, int y)
          Returns whether the given coordinates lie within this component and within its encapsulated shape.
 void createStandardShape()
          Sets a standard shape for this edge.
 void drawShape(Graphics g)
          Draws the shape associated with this component onto the graphics context of this component.
 void graphicAttributeChanged(Attribute attr)
          Called when a graphic attribute of the edge represented by this component has changed.
 void setSourceComponent(NodeComponentInterface snc)
          Sets the source component.
 void setTargetComponent(NodeComponentInterface tnc)
          Sets the source component.
 void updateEdgeWhileMovingNodes()
          "Moves" the edge when a doching node is moved.
 void updateShape()
          Calls buildShape if no NodeShapes have changed.
 
Methods inherited from class org.graffiti.plugins.views.defaults.AbstractGraphElementComponent
addAttributeComponent, addDependentComponent, attributeChanged, clearAttributeComponentList, clearDependentComponentList, createNewShape, getAttributeComponent, getAttributeComponentIterator, getGraphElement, getShape, nonGraphicAttributeChanged, paintComponent, removeAttributeComponent, removeDependentComponent
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.graffiti.plugin.view.GraphElementComponentInterface
addAttributeComponent, addDependentComponent, attributeChanged, clearAttributeComponentList, clearDependentComponentList, createNewShape, getAttributeComponent, getAttributeComponentIterator, getGraphElement, getShape, nonGraphicAttributeChanged, removeAttributeComponent, removeDependentComponent
 

Constructor Detail

EdgeComponent

public EdgeComponent(GraphElement ge,
                     NodeComponent source,
                     NodeComponent target)
Constructor for EdgeComponent.

Parameters:
ge - the edge to which this component belongs.
source - the NodeComponent of the source node of this edge.
target - the NodeComponent of the target node of this edge.
Method Detail

setSourceComponent

public void setSourceComponent(NodeComponentInterface snc)
Sets the source component.

Specified by:
setSourceComponent in interface EdgeComponentInterface
Parameters:
snc - the source component to be set.

setTargetComponent

public void setTargetComponent(NodeComponentInterface tnc)
Sets the source component.

Specified by:
setTargetComponent in interface EdgeComponentInterface
Parameters:
tnc - the source component to be set.

createStandardShape

public void createStandardShape()
Sets a standard shape for this edge. It uses a StraightLineEdgeShape.

Specified by:
createStandardShape in interface GraphElementComponentInterface
Specified by:
createStandardShape in class AbstractGraphElementComponent
Throws:
RuntimeException - DOCUMENT ME!

drawShape

public void drawShape(Graphics g)
Draws the shape associated with this component onto the graphics context of this component. This method uses the graphics attributes defined for line color, thickness etc.

Parameters:
g - the Graphics context to draw on.

graphicAttributeChanged

public void graphicAttributeChanged(Attribute attr)
                             throws ShapeNotFoundException
Called when a graphic attribute of the edge represented by this component has changed.

Specified by:
graphicAttributeChanged in interface GraphElementComponentInterface
Overrides:
graphicAttributeChanged in class AbstractGraphElementComponent
Parameters:
attr - the graphic attribute that has triggered the event.
Throws:
ShapeNotFoundException - DOCUMENT ME!

updateShape

public void updateShape()
Calls buildShape if no NodeShapes have changed.

Specified by:
updateShape in interface EdgeComponentInterface

updateEdgeWhileMovingNodes

public void updateEdgeWhileMovingNodes()
                                throws ShapeNotFoundException
"Moves" the edge when a doching node is moved. Creating a new shape is not necessary here, since the old one cannot be changed while moving and changing the edge shape (the line mode, to be exact) calls another method.

Throws:
ShapeNotFoundException - if a shape could not be found

contains

public boolean contains(int x,
                        int y)
Returns whether the given coordinates lie within this component and within its encapsulated shape. The coordinates are assumed to be relative to the coordinate system of this component.

Overrides:
contains in class AbstractGraphElementComponent
See Also:
Component.contains(int, int)


Generated at 2012-05-30 11:01:25 PM CEST