Package weka.gui.treevisualizer
Class TreeVisualizer
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
weka.gui.visualize.PrintablePanel
weka.gui.treevisualizer.TreeVisualizer
- All Implemented Interfaces:
ActionListener
,ItemListener
,MouseListener
,MouseMotionListener
,ImageObserver
,MenuContainer
,Serializable
,EventListener
,Accessible
,PrintableHandler
public class TreeVisualizer
extends PrintablePanel
implements MouseMotionListener, MouseListener, ActionListener, ItemListener
Class for displaying a Node structure in Swing.
To work this class simply create an instance of it.
Assign it to a window or other such object.
Resize it to the desired size.
When using the Displayer hold the left mouse button to drag the tree around.
Click the left mouse button with ctrl to shrink the size of the tree by half.
Click and drag with the left mouse button and shift to draw a box, when the left mouse button is released the contents of the box will be magnified to fill the screen.
Click the right mouse button to bring up a menu.
Most options are self explanatory.
Select Auto Scale to set the tree to it's optimal display size.
- Version:
- $Revision: 15301 $
- Author:
- Malcolm Ware (mfw4@cs.waikato.ac.nz)
- See Also:
-
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Constructor Summary
ConstructorDescriptionTreeVisualizer
(TreeDisplayListener tdl, String dot, NodePlace p) Constructs Displayer to display a tree provided in a dot format.TreeVisualizer
(TreeDisplayListener tdl, Node n, NodePlace p) Constructs Displayer with the specified Node as the top of the tree, and uses the NodePlacer to place the Nodes. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Performs the action associated with the ActionEvent.void
Fits the tree to the current screen size.void
Performs the action associated with the ItemEvent.static void
Main method for testing this class.void
Does nothing.void
Performs intermediate updates to what the user wishes to do.void
Does nothing.void
Does nothing.void
Does nothing.void
Determines what action the user wants to perform.void
Performs the final stages of what the user wants to perform.void
Updates the screen contents.void
setHighlight
(String id) Set the highlight for the node with the given idMethods inherited from class weka.gui.visualize.PrintablePanel
getSaveDialogTitle, getWriter, getWriters, getXScale, getYScale, saveComponent, setSaveDialogTitle, setScale
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, 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, hide, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
PROPERTIES_FILE
the props file.- See Also:
-
-
Constructor Details
-
TreeVisualizer
Constructs Displayer to display a tree provided in a dot format. Uses the NodePlacer to place the Nodes.- Parameters:
tdl
- listenerdot
- string containing the dot representation of the tree to displayp
- the algorithm to be used to position the nodes.
-
TreeVisualizer
Constructs Displayer with the specified Node as the top of the tree, and uses the NodePlacer to place the Nodes.- Parameters:
tdl
- listener.n
- the top Node of the tree to be displayed.p
- the algorithm to be used to position the nodes.
-
-
Method Details
-
fitToScreen
public void fitToScreen()Fits the tree to the current screen size. Call this after window has been created to get the entrire tree to be in view upon launch. -
actionPerformed
Performs the action associated with the ActionEvent.- Specified by:
actionPerformed
in interfaceActionListener
- Parameters:
e
- the action event.
-
itemStateChanged
Performs the action associated with the ItemEvent.- Specified by:
itemStateChanged
in interfaceItemListener
- Parameters:
e
- the item event.
-
mouseClicked
Does nothing.- Specified by:
mouseClicked
in interfaceMouseListener
- Parameters:
e
- the mouse event.
-
mousePressed
Determines what action the user wants to perform.- Specified by:
mousePressed
in interfaceMouseListener
- Parameters:
e
- the mouse event.
-
mouseReleased
Performs the final stages of what the user wants to perform.- Specified by:
mouseReleased
in interfaceMouseListener
- Parameters:
e
- the mouse event.
-
mouseDragged
Performs intermediate updates to what the user wishes to do.- Specified by:
mouseDragged
in interfaceMouseMotionListener
- Parameters:
e
- the mouse event.
-
mouseMoved
Does nothing.- Specified by:
mouseMoved
in interfaceMouseMotionListener
- Parameters:
e
- the mouse event.
-
mouseEntered
Does nothing.- Specified by:
mouseEntered
in interfaceMouseListener
- Parameters:
e
- the mouse event.
-
mouseExited
Does nothing.- Specified by:
mouseExited
in interfaceMouseListener
- Parameters:
e
- the mouse event.
-
setHighlight
Set the highlight for the node with the given id- Parameters:
id
- the id of the node to set the highlight for
-
paintComponent
Updates the screen contents.- Parameters:
g
- the drawing surface.
-
main
Main method for testing this class.- Parameters:
args
- first argument should be the name of a file that contains a tree discription in dot format.
-