public class IlvDiagrammerTree extends JTree
IlvDiagrammer as a tree.
This component connects itself automatically to the "current" diagram component in a component hierarchy. All you have to do is create the tree, and add it to a hierarchy that also contains one or more diagram components.
The icons of the tree items are automatically generated reduced "screen dumps" of the real objects of the diagram. The same icon is used for objects that are considered "equal", as defined by a hash function.
The default hash function can be changed through the
setIconHashFunction(ilog.views.diagrammer.application.IlvDiagrammerHashFunction) method.
You could decide, for example, that you want to differentiate, among all
the objects of tag "activity", the objects with different values
for the "implementation" property. Here is how you would do this:
tree.setIconHashFunction(new IlvDiagrammerHashFunction(){
public Object hashCode(IlvDiagrammer diagrammer, Object obj)
{
return diagrammer.getTag(obj) + " " + diagrammer.getObjectProperty(obj, "implementation");
}
});
Styling Options
The rendering of the tree items can be customized
through the style sheet of the diagram component. To do this, you must call
setStyleApplicationComponents(true)
on the diagram component, and you must define special rules with the
"DiagrammerTree" pseudo-class, like the following:
node:DiagrammerTree {
foreground : "blue";
}
Like in the diagram itself, you can style the tree items according
to the different kinds of nodes and links, for example:
node[state="Error"]:DiagrammerTree {
foreground : "red";
}
You can also use the following additional pseudo-classes:
:selected applies the rule only to the selected item in the tree.
:expanded applies the rule only if the tree item is expanded.
:leaf applies the rule only if the tree item is a leaf.
:focus applies the rule only if the tree item has the keyboard focus.
javax.swing.tree.DefaultTreeCellRenderer
class (which is a subclass of javax.swing.JLabel).
The most useful properties are typically foreground, background,
font, text and icon.JTree.AccessibleJTree, JTree.DropLocation, JTree.DynamicUtilTreeNode, JTree.EmptySelectionModel, JTree.TreeModelHandler, JTree.TreeSelectionRedirectorJComponent.AccessibleJComponentContainer.AccessibleAWTContainerComponent.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategyANCHOR_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, treeModel, treeModelListener, VISIBLE_ROW_COUNT_PROPERTY, visibleRowCountlistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWaccessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH| Constructor and Description |
|---|
IlvDiagrammerTree()
Creates a new Diagrammer tree with the default resource bundle
"ilog.views.diagrammer.application.tree". |
IlvDiagrammerTree(ResourceBundle bundle)
Creates a new Diagrammer tree with the specified resource bundle.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addNotify()
Notifies this component that it now has a parent component.
|
IlvDiagrammer |
getDiagrammer()
Returns the diagram component to which this component is currently attached.
|
Icon |
getIcon()
Returns the icon to be used when this component is displayed in a frame.
|
IlvDiagrammerHashFunction |
getIconHashFunction()
Returns the object used to determine which objects will have the same icon
in the tree.
|
int |
getIconSize()
Returns the size of the icons for the tree items representing the nodes and links.
|
Icon |
getRootIcon()
Returns the icon for the root of the tree.
|
String |
getRootLabel()
Returns the label for the root of the tree.
|
String |
getTitle()
Returns the title to be used when this component is displayed in a frame.
|
protected String |
makeTreeNodeItemLabel(Object sdmObject,
String labelProperty)
Creates the tree item label for an SDM object.
|
void |
removeNotify()
Notifies this component that it no longer has a parent component.
|
void |
setDiagrammer(IlvDiagrammer diagrammer)
Sets the diagram component to which this component is attached.
|
void |
setIconHashFunction(IlvDiagrammerHashFunction iconHashFunction)
Changes the object used to determine which objects will have the same icon
in the tree.
|
void |
setIconSize(int iconSize)
Changes the size of the icons for the tree items representing the nodes and links.
|
void |
setRootIcon(Icon rootIcon)
Changes the icon for the root of the tree.
|
void |
setRootLabel(String rootLabel)
Changes the label for the root of the tree.
|
void |
updateIcons()
Resets the cache containing the icons of the tree items and repaints
the tree.
|
addSelectionInterval, addSelectionPath, addSelectionPaths, addSelectionRow, addSelectionRows, addTreeExpansionListener, addTreeSelectionListener, addTreeWillExpandListener, cancelEditing, clearSelection, clearToggledPaths, collapsePath, collapseRow, convertValueToText, createTreeModel, createTreeModelListener, expandPath, expandRow, fireTreeCollapsed, fireTreeExpanded, fireTreeWillCollapse, fireTreeWillExpand, 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, getToolTipText, 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, 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, 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 IlvDiagrammerTree(ResourceBundle bundle)
bundle - resource bundlepublic IlvDiagrammerTree()
"ilog.views.diagrammer.application.tree".public void addNotify()
addNotify in class JComponentpublic void removeNotify()
removeNotify in class JComponentpublic void setRootLabel(String rootLabel)
rootLabel - The new label for the root.public String getRootLabel()
public void setRootIcon(Icon rootIcon)
rootIcon - The new icon for the root.public Icon getRootIcon()
public int getIconSize()
public void setIconSize(int iconSize)
iconSize - The new icon size.public IlvDiagrammer getDiagrammer()
public void setDiagrammer(IlvDiagrammer diagrammer)
You do not usually need to call this method, because this component is attached automatically to the current diagram component of the Swing hierarchy.
diagrammer - The new diagram component to which this component is attached.public IlvDiagrammerHashFunction getIconHashFunction()
IlvDiagrammerHashFunction.IlvDiagrammerHashFunction object.public void setIconHashFunction(IlvDiagrammerHashFunction iconHashFunction)
IlvDiagrammerHashFunction.iconHashFunction - The new IlvDiagrammerHashFunction object.public void updateIcons()
public String getTitle()
public Icon getIcon()
protected String makeTreeNodeItemLabel(Object sdmObject, String labelProperty)
sdmObject - The SDM object to be displayed in the tree.labelProperty - The label property.© Copyright 2024 Rogue Wave Software, Inc., a Perforce company.. All Rights Reserved.