N
- The class of nodes in the graphE
- The class of edges in the graphpublic class GraphCanvas<N,E> extends AbstractGraphDisplay<N,E>
javax.swing.JComponent.AccessibleJComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
GraphCanvas()
Creates a GraphCanvas with an empty graph
|
GraphCanvas(Graph<N,E> graph)
Constructs a Graph Canvas with the specified graph
|
Modifier and Type | Method and Description |
---|---|
void |
arrange()
Arrange the graph
|
GraphArrangement<N,E> |
getArrangement()
Get the arrangement used to arrange the graph
|
E |
getEdgeAt(java.awt.Point pickPoint)
Returns the edge located at the pickPoint.
|
EdgeRenderer |
getEdgeRenderer()
Returns the edge renderer used for displaying the edges in the graph
|
N |
getNodeAt(java.awt.Point pickPoint)
Returns the node located at the pickPoint.
|
NodeRenderer |
getNodeRenderer()
Returns the node renderer used for displaying the nodes in the graph
|
protected void |
paintComponent(java.awt.Graphics g)
Repaints the graph on the canvas.
|
void |
redrawEdge(E edge)
Redraws an individual edge.
|
protected void |
redrawEdge(E edge,
java.awt.Graphics g)
Redraws an individual edge.
|
void |
redrawNode(N node)
Redraws an individual node.
|
protected void |
redrawNode(N node,
java.awt.Graphics g)
Redraws an individual node
|
protected void |
renderGraph(java.awt.Graphics g)
Draws the graph on the canvas.
|
void |
setEdgeRenderer(EdgeRenderer renderer)
Set the edge renderer
|
void |
setGraph(Graph<N,E> graph)
Set the graph to be displayed
|
void |
setGraphArrangement(GraphArrangement<N,E> arrangement)
Set the current graph arrangement.
|
void |
setNodeRenderer(NodeRenderer renderer)
Set the node renderer
|
void |
updateGraph()
Update the currently displayed graph.
|
protected void |
validateArrangement()
Validates the arrangement immediately prior to drawing.
|
addHoverListener, addItemListener, fireHoverStateChanged, fireItemStateChanged, getGraph, getSelectedEdge, getSelectedNode, getSelectedObjects, isEdgeDisplayable, isEdgeSelectable, isHighlighted, isNodeDisplayable, processMouseEvent, removeHoverListener, removeItemListener, selectEdge, selectNode, setEdgeSelectable
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, 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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, 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, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
add, add, add, add, add, addContainerListener, addImpl, 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, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, 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, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, 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
public void arrange() throws ArrangementException
ArrangementException
- if there is a problem with the arrangementpublic GraphArrangement<N,E> getArrangement()
public E getEdgeAt(java.awt.Point pickPoint)
getEdgeAt
in class AbstractGraphDisplay<N,E>
pickPoint
- the point in the canvas to pick for edges.public EdgeRenderer getEdgeRenderer()
public N getNodeAt(java.awt.Point pickPoint)
getNodeAt
in class AbstractGraphDisplay<N,E>
pickPoint
- the point in the canvas to pick for nodes.public NodeRenderer getNodeRenderer()
protected void paintComponent(java.awt.Graphics g)
paintComponent
in class javax.swing.JComponent
g
- the graphics context to render intopublic void redrawEdge(E edge)
redrawEdge
in class AbstractGraphDisplay<N,E>
edge
- the edge to redrawprotected void redrawEdge(E edge, java.awt.Graphics g)
edge
- the node to redrawpublic void redrawNode(N node)
redrawNode
in class AbstractGraphDisplay<N,E>
node
- the node to redrawprotected void redrawNode(N node, java.awt.Graphics g)
node
- the node to redrawprotected void renderGraph(java.awt.Graphics g)
g
- the graphics contextpublic void setEdgeRenderer(EdgeRenderer renderer)
renderer
- the edge rendererpublic void setGraph(Graph<N,E> graph)
setGraph
in interface GraphDisplay<N,E>
setGraph
in class AbstractGraphDisplay<N,E>
graph
- the graph to be displayedpublic void setGraphArrangement(GraphArrangement<N,E> arrangement)
arrangement
- the new graph arrangementpublic void setNodeRenderer(NodeRenderer renderer)
renderer
- the node rendererpublic void updateGraph()
protected void validateArrangement()