public class XmlTree
extends javax.swing.JTree
| Modifier and Type | Class and Description |
|---|---|
class |
XmlTree.MyRenderer
Class MyRenderer is used to return the correct image icon for certain jtree nodes
|
static class |
XmlTree.XlinkTreeNode
Class XlinkTreeNode.
|
static class |
XmlTree.XmlTreeNode
Class XmlTreeNode
|
javax.swing.JTree.AccessibleJTree, javax.swing.JTree.DropLocation, javax.swing.JTree.DynamicUtilTreeNode, javax.swing.JTree.EmptySelectionModel, javax.swing.JTree.TreeModelHandler, javax.swing.JTree.TreeSelectionRedirectorjavax.swing.JComponent.AccessibleJComponent| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
ATTR_LABEL
xml attribute
|
static java.lang.String |
ATTR_NAME
xml attribute
|
static java.lang.String |
ATTR_XLINKHREF
xml attribute
|
static java.lang.String |
NULL_STRING
the null string
|
ANCHOR_SELECTION_PATH_PROPERTY, CELL_EDITOR_PROPERTY, CELL_RENDERER_PROPERTY, cellEditor, cellRenderer, editable, EDITABLE_PROPERTY, EXPANDS_SELECTED_PATHS_PROPERTY, INVOKES_STOP_CELL_EDITING_PROPERTY, invokesStopCellEditing, LARGE_MODEL_PROPERTY, largeModel, LEAD_SELECTION_PATH_PROPERTY, ROOT_VISIBLE_PROPERTY, rootVisible, ROW_HEIGHT_PROPERTY, rowHeight, SCROLLS_ON_EXPAND_PROPERTY, scrollsOnExpand, SELECTION_MODEL_PROPERTY, selectionModel, selectionRedirector, SHOWS_ROOT_HANDLES_PROPERTY, showsRootHandles, TOGGLE_CLICK_COUNT_PROPERTY, toggleClickCount, TREE_MODEL_PROPERTY, treeModelListener, VISIBLE_ROW_COUNT_PROPERTY, visibleRowCountlistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW| Constructor and Description |
|---|
XmlTree(org.w3c.dom.Element xmlRoot)
ctor
|
XmlTree(org.w3c.dom.Element xmlRoot,
boolean openFirstLevel)
ctor
|
XmlTree(org.w3c.dom.Element xmlRoot,
boolean openFirstLevel,
java.lang.String basePath)
ctor
|
| Modifier and Type | Method and Description |
|---|---|
void |
addTagsToNotProcess(java.util.List tags)
Define the set of tags we should NOT process
|
void |
addTagsToNotProcessButRecurse(java.util.List tags)
Define the set of tags that we don't want to add to the jtree but do want to recurse
|
void |
addTagsToNotRecurse(java.util.List tags)
Define the set of tags whose children we should NOT process
|
void |
addTagsToProcess(java.util.List tags)
Define the set of tags who we should process
|
void |
addTagsToRecurse(java.util.List tags)
Define the set of tags whose child elements we should process
|
void |
addTagToNotProcess(java.lang.String tag)
Define a tag we should NOT process
|
void |
addTagToNotRecurse(java.lang.String tag)
Define a tag whose children we should NOT process
|
void |
addTagToProcess(java.lang.String tag)
Define a tag who we should process
|
void |
addTagToRecurse(java.lang.String tag)
Define a tag whose child elements we should process
|
void |
addXlinkTag(java.lang.String tagName)
Define a tag name that holds xlink references to other xml files
|
void |
defineLabelAttr(java.lang.String tagName,
java.lang.String attrName)
Define the name of the attribute to use for a label for elements
with the given tag name
|
void |
defineLabelChild(java.lang.String tagName,
java.lang.String childTag)
Where do we get the label for the tag
|
void |
defineTooltipChild(java.lang.String tagName,
java.lang.String childTag)
Where do we get the tooltip text
|
void |
doClick(XmlTree tree,
org.w3c.dom.Element element)
tree node was clicked
|
void |
doClick(XmlTree tree,
XmlTree.XmlTreeNode node,
org.w3c.dom.Element element)
tree node was clicked
|
void |
doDoubleClick(XmlTree tree,
org.w3c.dom.Element element)
Gets called when an Xml Element has been double clicked.
|
void |
doDoubleClick(XmlTree tree,
XmlTree.XmlTreeNode node,
org.w3c.dom.Element element)
Gets called when an Xml Element has been double clicked.
|
void |
doRightClick(XmlTree tree,
org.w3c.dom.Element element,
java.awt.event.MouseEvent event)
Handle right click
|
void |
doRightClick(XmlTree tree,
XmlTree.XmlTreeNode node,
org.w3c.dom.Element element,
java.awt.event.MouseEvent event)
Handle right click
|
java.lang.String |
expandRelativeUrl(java.lang.String href)
Utility to expand a relative url wrt to a base url
|
static java.lang.String |
expandRelativeUrl(java.lang.String href,
java.lang.String baseUrlPath)
Utility to expand a relative url wrt to a base url
|
java.lang.String |
expandRelativeUrl(XmlTree.XmlTreeNode node,
java.lang.String href)
Expand the relative url
|
protected void |
expandXlink(XmlTree.XlinkTreeNode node,
java.lang.String href)
expand the xlink node
|
void |
fireTreeWillExpand(javax.swing.tree.TreePath treePath)
Fire the event
|
java.awt.Component |
getContents()
Return the gui component.
|
protected javax.swing.ImageIcon |
getIcon(org.w3c.dom.Element xmlNode,
boolean isLeaf)
Get the icon used for the node
|
javax.swing.ImageIcon |
getIconForNode(org.w3c.dom.Element node)
Get the icon for a node
|
boolean |
getIncludeAttributes()
Get the IncludeAttributes property.
|
java.lang.String |
getLabel(org.w3c.dom.Element n)
Return the String used for the JTree node.
|
javax.swing.JScrollPane |
getScroller()
Get the scrollpane the xmltree is in
|
org.w3c.dom.Element |
getSelectedElement()
Find the xml element that corresponds to the selected jtree node
|
java.util.List |
getSelectedElements()
Return a list of the xml Element nodes that have been selected.
|
java.lang.String |
getToolTipText(org.w3c.dom.Element n)
A hook to allow subclasses to get tooltip text for a particular xml element
|
java.lang.String |
getToolTipText(java.awt.event.MouseEvent event)
Get the tooltip at the mouse
|
boolean |
getUseTagNameAsLabel()
Get the UseTagNameAsLabel property.
|
org.w3c.dom.NodeList |
getXlinkImportElements(org.w3c.dom.Element root)
Find the xml elements to use when we have an xlink to an xml doc
|
protected int |
getXlinkImportLevel()
When we load in an xlinked document how far down do we go before
we start displaying the nodes
|
org.w3c.dom.Element |
getXmlElement(javax.swing.tree.TreeNode treeNode)
Return the xml Element that corresponds to the given tree node
|
org.w3c.dom.Element |
getXmlNodeAt(int x,
int y)
Return the xml Element located at the given position
|
protected org.w3c.dom.Element |
getXmlNodeAtPath(javax.swing.tree.TreePath path)
Return the xml Element located at the given position
|
org.w3c.dom.Element |
getXmlRoot()
Return the root element of the xml dom
|
XmlTree.XmlTreeNode |
getXmlTreeNodeAt(int x,
int y)
Return the xml tree node located at the given position
|
protected XmlTree.XmlTreeNode |
getXmlTreeNodeAtPath(javax.swing.tree.TreePath path)
Return the xml tree node located at the given position
|
protected boolean |
initXlinkRoot(org.w3c.dom.Element root,
org.w3c.dom.Document doc,
java.lang.String url)
Allows derived classes to initialize the xlink loaded xml
|
void |
loadTree()
Reload the xml into the jtree
|
static void |
main(java.lang.String[] args)
Test
|
protected void |
process(XmlTree.XmlTreeNode parentTreeNode,
org.w3c.dom.Element xmlNode)
Walk the xml tree at the given xmlNode and create the JTree
|
protected org.w3c.dom.Document |
readXlinkXml(java.lang.String href)
Process the xlink href
|
void |
selectElement(org.w3c.dom.Element element)
Select in the jtree the node that corresponds to the given xml element
|
void |
setIconForTag(javax.swing.ImageIcon icon,
java.lang.String tagName)
Associate the icon with the tag
|
void |
setIncludeAttributes(boolean value)
Set the IncludeAttributes property.
|
void |
setMultipleSelect(boolean v)
Set tree select mode
|
void |
setUseTagNameAsLabel(boolean value)
Set the UseTagNameAsLabel property.
|
void |
setXmlRoot(org.w3c.dom.Element newRoot)
Set the root and reinitialize
|
protected boolean |
shouldProcess(org.w3c.dom.Element xmlNode)
Should we show the given xml Element
|
protected boolean |
shouldRecurse(org.w3c.dom.Element xmlNode)
Should we recursiely descend the children of the given xml Element
|
protected void |
treeClick(java.awt.event.MouseEvent event)
Gets called when the tree is clicked.
|
addSelectionInterval, addSelectionPath, addSelectionPaths, addSelectionRow, addSelectionRows, addTreeExpansionListener, addTreeSelectionListener, addTreeWillExpandListener, cancelEditing, clearSelection, clearToggledPaths, collapsePath, collapseRow, convertValueToText, createTreeModel, createTreeModelListener, expandPath, expandRow, fireTreeCollapsed, fireTreeExpanded, fireTreeWillCollapse, fireValueChanged, getAccessibleContext, getAnchorSelectionPath, getCellEditor, getCellRenderer, getClosestPathForLocation, getClosestRowForLocation, getDefaultTreeModel, getDescendantToggledPaths, getDragEnabled, getDropLocation, getDropMode, getEditingPath, getExpandedDescendants, getExpandsSelectedPaths, getInvokesStopCellEditing, getLastSelectedPathComponent, getLeadSelectionPath, getLeadSelectionRow, getMaxSelectionRow, getMinSelectionRow, getModel, getNextMatch, getPathBetweenRows, getPathBounds, getPathForLocation, getPathForRow, getPreferredScrollableViewportSize, getRowBounds, getRowCount, getRowForLocation, getRowForPath, getRowHeight, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getScrollsOnExpand, getSelectionCount, getSelectionModel, getSelectionPath, getSelectionPaths, getSelectionRows, getShowsRootHandles, getToggleClickCount, getTreeExpansionListeners, getTreeSelectionListeners, getTreeWillExpandListeners, getUI, getUIClassID, getVisibleRowCount, hasBeenExpanded, isCollapsed, isCollapsed, isEditable, isEditing, isExpanded, isExpanded, isFixedRowHeight, isLargeModel, isPathEditable, isPathSelected, isRootVisible, isRowSelected, isSelectionEmpty, isVisible, makeVisible, paramString, removeDescendantSelectedPaths, removeDescendantToggledPaths, removeSelectionInterval, removeSelectionPath, removeSelectionPaths, removeSelectionRow, removeSelectionRows, removeTreeExpansionListener, removeTreeSelectionListener, removeTreeWillExpandListener, scrollPathToVisible, scrollRowToVisible, setAnchorSelectionPath, setCellEditor, setCellRenderer, setDragEnabled, setDropMode, setEditable, setExpandedState, setExpandsSelectedPaths, setInvokesStopCellEditing, setLargeModel, setLeadSelectionPath, setModel, setRootVisible, setRowHeight, setScrollsOnExpand, setSelectionInterval, setSelectionModel, setSelectionPath, setSelectionPaths, setSelectionRow, setSelectionRows, setShowsRootHandles, setToggleClickCount, setUI, setVisibleRowCount, startEditingAtPath, stopEditing, treeDidChange, updateUIaddAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, 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, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, 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, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateadd, 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, validateTreeaction, 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, 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, transferFocusUpCyclepublic static final java.lang.String ATTR_NAME
public static final java.lang.String ATTR_LABEL
public static final java.lang.String ATTR_XLINKHREF
public static final java.lang.String NULL_STRING
public XmlTree(org.w3c.dom.Element xmlRoot)
xmlRoot - The root of the xml dom treepublic XmlTree(org.w3c.dom.Element xmlRoot,
boolean openFirstLevel)
xmlRoot - The root of the xml dom treeopenFirstLevel - Should the first level of the jtree be openedpublic XmlTree(org.w3c.dom.Element xmlRoot,
boolean openFirstLevel,
java.lang.String basePath)
xmlRoot - The root of the xml dom treeopenFirstLevel - Should the first level of the jtree be openedbasePath - Where the xml came frompublic javax.swing.ImageIcon getIconForNode(org.w3c.dom.Element node)
node - the nodepublic java.lang.String getToolTipText(java.awt.event.MouseEvent event)
getToolTipText in class javax.swing.JTreeevent - Where the mouse ispublic java.lang.String getToolTipText(org.w3c.dom.Element n)
n - The xml elementpublic void loadTree()
public void setUseTagNameAsLabel(boolean value)
value - The new value for UseTagNameAsLabelpublic boolean getUseTagNameAsLabel()
public void setIncludeAttributes(boolean value)
value - The new value for IncludeAttributespublic boolean getIncludeAttributes()
public java.util.List getSelectedElements()
public void selectElement(org.w3c.dom.Element element)
element - The xml element to selectpublic org.w3c.dom.Element getSelectedElement()
public org.w3c.dom.Element getXmlRoot()
public void setXmlRoot(org.w3c.dom.Element newRoot)
newRoot - The new xml rootprotected void treeClick(java.awt.event.MouseEvent event)
event - Mouse eventpublic void doDoubleClick(XmlTree tree, XmlTree.XmlTreeNode node, org.w3c.dom.Element element)
tree - The tree (this).node - The node that was clicked onelement - The corresponding xml elementpublic void doDoubleClick(XmlTree tree, org.w3c.dom.Element element)
tree - The tree (this)element - The xml elementpublic void doClick(XmlTree tree, XmlTree.XmlTreeNode node, org.w3c.dom.Element element)
tree - The tree (this)node - Tree node that was clickedelement - Corresponding xml nodepublic void doClick(XmlTree tree, org.w3c.dom.Element element)
tree - The tree (this)element - Corresponding xml nodepublic void doRightClick(XmlTree tree, XmlTree.XmlTreeNode node, org.w3c.dom.Element element, java.awt.event.MouseEvent event)
tree - The tree (this)node - Tree node that was clickedelement - Corresponding xml nodeevent - The mouse eventpublic void doRightClick(XmlTree tree, org.w3c.dom.Element element, java.awt.event.MouseEvent event)
tree - The tree (this)element - Corresponding xml nodeevent - The mouse eventpublic java.awt.Component getContents()
public javax.swing.JScrollPane getScroller()
public void defineLabelAttr(java.lang.String tagName,
java.lang.String attrName)
tagName - The tag nameattrName - Attribute that defines the labelpublic void defineLabelChild(java.lang.String tagName,
java.lang.String childTag)
tagName - The tag namechildTag - Tag name of child node to look for labelpublic void defineTooltipChild(java.lang.String tagName,
java.lang.String childTag)
tagName - The tag namechildTag - Tag of the child where we get tooltip textpublic void addXlinkTag(java.lang.String tagName)
tagName - The tag namepublic void addTagsToRecurse(java.util.List tags)
tags - List of tag namespublic void setIconForTag(javax.swing.ImageIcon icon,
java.lang.String tagName)
icon - The icontagName - The tag namepublic void addTagToRecurse(java.lang.String tag)
tag - The tag namepublic void addTagsToProcess(java.util.List tags)
tags - List of tag namespublic void addTagToProcess(java.lang.String tag)
tag - the tag namepublic void addTagsToNotProcessButRecurse(java.util.List tags)
tags - List of tag namespublic void addTagsToNotRecurse(java.util.List tags)
tags - List of tag namespublic void addTagToNotRecurse(java.lang.String tag)
tag - The tag namepublic void addTagsToNotProcess(java.util.List tags)
tags - List of tag namespublic void addTagToNotProcess(java.lang.String tag)
tag - The tag namepublic void fireTreeWillExpand(javax.swing.tree.TreePath treePath)
throws javax.swing.tree.ExpandVetoException
fireTreeWillExpand in class javax.swing.JTreetreePath - Expanding pathjavax.swing.tree.ExpandVetoException - on badnesspublic java.lang.String expandRelativeUrl(XmlTree.XmlTreeNode node, java.lang.String href)
node - the nodehref - the base hrefpublic java.lang.String expandRelativeUrl(java.lang.String href)
href - The (potentially) relative urlpublic static java.lang.String expandRelativeUrl(java.lang.String href,
java.lang.String baseUrlPath)
href - The (potentially) relative urlbaseUrlPath - The base pathprotected org.w3c.dom.Document readXlinkXml(java.lang.String href)
throws java.lang.Exception
href - Points to the xml filejava.lang.Exception - On badnessprotected int getXlinkImportLevel()
protected void expandXlink(XmlTree.XlinkTreeNode node, java.lang.String href)
node - The nodehref - The href to the xml docpublic org.w3c.dom.NodeList getXlinkImportElements(org.w3c.dom.Element root)
root - get the xlink elementsprotected boolean initXlinkRoot(org.w3c.dom.Element root,
org.w3c.dom.Document doc,
java.lang.String url)
root - The root of the xlink loaded xmldoc - The document the xml was created withurl - The urlprotected boolean shouldProcess(org.w3c.dom.Element xmlNode)
xmlNode - protected javax.swing.ImageIcon getIcon(org.w3c.dom.Element xmlNode,
boolean isLeaf)
xmlNode - The nodeisLeaf - Is it a leaf nodeprotected void process(XmlTree.XmlTreeNode parentTreeNode, org.w3c.dom.Element xmlNode)
parentTreeNode - The parent jtree nodexmlNode - The xml node to processprotected boolean shouldRecurse(org.w3c.dom.Element xmlNode)
xmlNode - The xml nodepublic java.lang.String getLabel(org.w3c.dom.Element n)
n - The nodepublic org.w3c.dom.Element getXmlNodeAt(int x,
int y)
x - xy - yprotected org.w3c.dom.Element getXmlNodeAtPath(javax.swing.tree.TreePath path)
path - The pathpublic XmlTree.XmlTreeNode getXmlTreeNodeAt(int x, int y)
x - xy - yprotected XmlTree.XmlTreeNode getXmlTreeNodeAtPath(javax.swing.tree.TreePath path)
path - The tree pathpublic org.w3c.dom.Element getXmlElement(javax.swing.tree.TreeNode treeNode)
treeNode - The tree nodepublic void setMultipleSelect(boolean v)
v - Do multiples?public static void main(java.lang.String[] args)
args - cmd line args