Package org.antlr.v4.gui
Class TreeViewer
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- org.antlr.v4.gui.TreeViewer
-
- All Implemented Interfaces:
ImageObserver,MenuContainer,Serializable
public class TreeViewer extends JComponent
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTreeViewer.DefaultTreeTextProviderstatic classTreeViewer.VariableExtentProvide-
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
-
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
Field Summary
Fields Modifier and Type Field Description protected intarcSizeprotected ColorborderColorprotected ColorboxColorprotected Fontfontprotected StringfontNameprotected intfontSizeprotected intfontStyleprotected doublegapBetweenLevelsprotected doublegapBetweenNodesprotected ColorhighlightedBoxColorprotected List<Tree>highlightedNodesstatic ColorLIGHT_REDprotected intnodeHeightPaddingprotected intnodeWidthPaddingprotected doublescaleprotected ColortextColorprotected org.abego.treelayout.TreeLayout<Tree>treeLayoutprotected TreeTextProvidertreeTextProvider-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
Fields inherited from class java.awt.Component
accessibleContext, 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
Constructors Constructor Description TreeViewer(List<String> ruleNames, Tree tree)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddHighlightedNodes(Collection<Tree> nodes)Slow for big lists of highlighted nodesprotected voidgenerateBox(Writer writer, Tree parent)protected voidgenerateEdges(Writer writer, Tree parent)intgetArcSize()ColorgetBorderColor()protected Rectangle2D.DoublegetBoundsOfNode(Tree node)ColorgetBoxColor()protected GraphicsgetComponentGraphics(Graphics g)FontgetFont()ColorgetHighlightedBoxColor()protected intgetHighlightedNodeIndex(Tree node)doublegetScale()protected StringgetText(Tree tree)ColorgetTextColor()protected org.abego.treelayout.TreeForTreeLayout<Tree>getTree()org.abego.treelayout.TreeForTreeLayout<Tree>getTreeLayoutAdaptor(Tree root)Get an adaptor for root that indicates how to walk ANTLR trees.TreeTextProvidergetTreeTextProvider()booleangetUseCurvedEdges()protected booleanisHighlighted(Tree node)Future<JFrame>open()voidpaint(Graphics g)protected voidpaintBox(Graphics g, Tree tree)protected voidpaintEdges(Graphics g, Tree parent)voidremoveHighlightedNodes(Collection<Tree> nodes)voidsave(String fileName)voidsetArcSize(int arcSize)voidsetBorderColor(Color borderColor)voidsetBoxColor(Color boxColor)voidsetFont(Font font)voidsetFontName(String name)voidsetFontSize(int sz)voidsetHighlightedBoxColor(Color highlightedBoxColor)voidsetRuleNames(List<String> ruleNames)voidsetScale(double scale)voidsetTextColor(Color textColor)voidsetTree(Tree root)voidsetTreeTextProvider(TreeTextProvider treeTextProvider)voidsetUseCurvedEdges(boolean useCurvedEdges)protected static JFrameshowInDialog(TreeViewer viewer)voidtext(Graphics g, String s, int x, int y)-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, 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, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, 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, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
-
Methods inherited from class java.awt.Container
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
-
Methods inherited from class java.awt.Component
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, getAccessibleContext, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, 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, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, 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 Detail
-
LIGHT_RED
public static final Color LIGHT_RED
-
treeTextProvider
protected TreeTextProvider treeTextProvider
-
treeLayout
protected org.abego.treelayout.TreeLayout<Tree> treeLayout
-
fontName
protected String fontName
-
fontStyle
protected int fontStyle
-
fontSize
protected int fontSize
-
font
protected Font font
-
gapBetweenLevels
protected double gapBetweenLevels
-
gapBetweenNodes
protected double gapBetweenNodes
-
nodeWidthPadding
protected int nodeWidthPadding
-
nodeHeightPadding
protected int nodeHeightPadding
-
arcSize
protected int arcSize
-
scale
protected double scale
-
boxColor
protected Color boxColor
-
highlightedBoxColor
protected Color highlightedBoxColor
-
borderColor
protected Color borderColor
-
textColor
protected Color textColor
-
-
Method Detail
-
getUseCurvedEdges
public boolean getUseCurvedEdges()
-
setUseCurvedEdges
public void setUseCurvedEdges(boolean useCurvedEdges)
-
paint
public void paint(Graphics g)
- Overrides:
paintin classJComponent
-
generateEdges
protected void generateEdges(Writer writer, Tree parent) throws IOException
- Throws:
IOException
-
generateBox
protected void generateBox(Writer writer, Tree parent) throws IOException
- Throws:
IOException
-
getComponentGraphics
protected Graphics getComponentGraphics(Graphics g)
- Overrides:
getComponentGraphicsin classJComponent
-
showInDialog
protected static JFrame showInDialog(TreeViewer viewer)
-
save
public void save(String fileName) throws IOException, PrintException
- Throws:
IOExceptionPrintException
-
getBoundsOfNode
protected Rectangle2D.Double getBoundsOfNode(Tree node)
-
getTreeTextProvider
public TreeTextProvider getTreeTextProvider()
-
setTreeTextProvider
public void setTreeTextProvider(TreeTextProvider treeTextProvider)
-
setFontSize
public void setFontSize(int sz)
-
setFontName
public void setFontName(String name)
-
addHighlightedNodes
public void addHighlightedNodes(Collection<Tree> nodes)
Slow for big lists of highlighted nodes
-
removeHighlightedNodes
public void removeHighlightedNodes(Collection<Tree> nodes)
-
isHighlighted
protected boolean isHighlighted(Tree node)
-
getHighlightedNodeIndex
protected int getHighlightedNodeIndex(Tree node)
-
getFont
public Font getFont()
- Specified by:
getFontin interfaceMenuContainer- Overrides:
getFontin classComponent
-
setFont
public void setFont(Font font)
- Overrides:
setFontin classJComponent
-
getArcSize
public int getArcSize()
-
setArcSize
public void setArcSize(int arcSize)
-
getBoxColor
public Color getBoxColor()
-
setBoxColor
public void setBoxColor(Color boxColor)
-
getHighlightedBoxColor
public Color getHighlightedBoxColor()
-
setHighlightedBoxColor
public void setHighlightedBoxColor(Color highlightedBoxColor)
-
getBorderColor
public Color getBorderColor()
-
setBorderColor
public void setBorderColor(Color borderColor)
-
getTextColor
public Color getTextColor()
-
setTextColor
public void setTextColor(Color textColor)
-
getTree
protected org.abego.treelayout.TreeForTreeLayout<Tree> getTree()
-
setTree
public void setTree(Tree root)
-
getTreeLayoutAdaptor
public org.abego.treelayout.TreeForTreeLayout<Tree> getTreeLayoutAdaptor(Tree root)
Get an adaptor for root that indicates how to walk ANTLR trees. Override to change the adapter from the default ofTreeLayoutAdaptor
-
getScale
public double getScale()
-
setScale
public void setScale(double scale)
-
-