|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.JTree project35.desktopDeployment.NavigationTree
public class NavigationTree
Does management of tree nodes. It is one of the two main UI classes that make the Project35 windows work. The most difficult part of writing this was trying to manage tree events in the following situation:
Copyright (c) Kevin Garwood, Tim Booth and University of Manchester 2007. All rights reserved. Licensed under the Academic Free License version 3.0. For more information on the terms and conditions, please see the file "LICENSE" that is included in this distribution.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class javax.swing.JTree |
---|
javax.swing.JTree.AccessibleJTree, javax.swing.JTree.DynamicUtilTreeNode, javax.swing.JTree.EmptySelectionModel, javax.swing.JTree.TreeModelHandler, javax.swing.JTree.TreeSelectionRedirector |
Nested classes/interfaces inherited from class javax.swing.JComponent |
---|
javax.swing.JComponent.AccessibleJComponent |
Nested classes/interfaces inherited from class java.awt.Container |
---|
java.awt.Container.AccessibleAWTContainer |
Nested classes/interfaces inherited from class java.awt.Component |
---|
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy |
Field Summary |
---|
Fields inherited from class javax.swing.JTree |
---|
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, treeModel, treeModelListener, VISIBLE_ROW_COUNT_PROPERTY, visibleRowCount |
Fields inherited from class javax.swing.JComponent |
---|
accessibleContext, 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 |
---|
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 | |
---|---|
NavigationTree(Project35UIFactory project35UIFactory)
|
Method Summary | |
---|---|
void |
acknowledgeChangesMade()
|
void |
addChangeListener(javax.swing.event.ChangeListener changeListener)
|
void |
addNode(RecordNameProvider parentRecordNameProvider,
RecordNameProvider childRecordNameProvider)
|
void |
addSubTree(RecordModel parentRecordNameProvider,
RecordNameProvider childSubTreeRecordNameProvider)
|
NavigationTreeNode |
addSubTreeNode(NavigationTreeNode parentNode,
RecordNameProvider childRecordNameProvider,
java.util.ArrayList changeListeners)
|
void |
addSubTrees(RecordModel parentRecordNameProvider,
java.util.ArrayList subTreeRoots)
|
void |
addToKeyList(NavigationTreeNode node)
|
java.util.ArrayList |
applySearch(java.lang.String searchMask)
|
void |
changeFont(java.awt.Font font)
|
void |
deleteNode(RecordNameProvider recordNameProvider)
|
boolean |
fileHasErrors()
indicates whether the current file has errors |
NavigationTreeNode |
getActiveNode()
|
NavigationTreeNode |
getNodeFromRecordNameProvider(RecordNameProvider recordNameProvider)
|
java.util.ArrayList |
getRecordModels()
|
NavigationTreeNode |
getRoot()
|
void |
markNodeWithComments(RecordNameProvider recordNameProvider)
|
boolean |
nodesAddedOrDeleted()
|
void |
pasteNode(RecordNameProvider targetRecordNameProvider,
RecordNameProvider pasteRecordNameProvider)
|
void |
pasteNode(RecordNameProvider targetRecordNameProvider,
RecordNameProvider pasteRecordNameProvider,
boolean promptUserForAcceptingChanges)
the idea here is to "paste" pasteModel in place of targetModel in the tree. |
void |
resetDisplay()
|
void |
setActiveNode(RecordNameProvider recordNameProvider)
|
void |
setNodesAddedOrDeleted(boolean nodesAddedOrDeleted)
|
void |
setRecordView(RecordView recordView)
|
void |
setRoot(NavigationTreeNode rootNode)
|
void |
setRoot(RecordModel rootRecordModel)
|
void |
setSelectedNode(NavigationTreeNode node)
|
void |
shiftSelectedNode(boolean directionIsUp)
|
void |
shiftSelectedNodeDown()
|
void |
shiftSelectedNodeUp()
|
void |
showChanges()
|
void |
showError(RecordModel recordModel)
tells the tree to paint the node associated with a recordModel so that it indicates an error. |
void |
showNode(NavigationTreeNode node)
|
void |
showNode(RecordNameProvider recordNameProvider)
|
void |
stateChanged(javax.swing.event.ChangeEvent event)
|
void |
updateDateFields()
|
void |
updateNode(NavigationTreeNode node)
|
void |
updateNode(RecordNameProvider recordNameProvider)
|
Methods inherited from class javax.swing.JTree |
---|
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, 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, setEditable, setExpandedState, setExpandsSelectedPaths, setInvokesStopCellEditing, setLargeModel, setLeadSelectionPath, setModel, setRootVisible, setRowHeight, setScrollsOnExpand, setSelectionInterval, setSelectionModel, setSelectionPath, setSelectionPaths, setSelectionRow, setSelectionRows, setShowsRootHandles, setToggleClickCount, setUI, setVisibleRowCount, startEditingAtPath, stopEditing, treeDidChange, updateUI |
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, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, 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, update |
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, transferFocusBackward, 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, 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, transferFocusUpCycle |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public NavigationTree(Project35UIFactory project35UIFactory)
Method Detail |
---|
public boolean nodesAddedOrDeleted()
public NavigationTreeNode getNodeFromRecordNameProvider(RecordNameProvider recordNameProvider)
public java.util.ArrayList getRecordModels()
public void addChangeListener(javax.swing.event.ChangeListener changeListener)
public void acknowledgeChangesMade()
public void setNodesAddedOrDeleted(boolean nodesAddedOrDeleted)
public NavigationTreeNode getRoot()
public void showChanges()
public void resetDisplay()
public void updateDateFields()
public void pasteNode(RecordNameProvider targetRecordNameProvider, RecordNameProvider pasteRecordNameProvider)
public void pasteNode(RecordNameProvider targetRecordNameProvider, RecordNameProvider pasteRecordNameProvider, boolean promptUserForAcceptingChanges)
public void shiftSelectedNodeUp()
public void shiftSelectedNodeDown()
public void shiftSelectedNode(boolean directionIsUp)
public java.util.ArrayList applySearch(java.lang.String searchMask)
public void setRecordView(RecordView recordView)
public void showNode(RecordNameProvider recordNameProvider)
showNode
in interface NavigationView
public void markNodeWithComments(RecordNameProvider recordNameProvider)
public void showNode(NavigationTreeNode node)
public void updateNode(RecordNameProvider recordNameProvider)
public void updateNode(NavigationTreeNode node)
public void setRoot(RecordModel rootRecordModel)
public NavigationTreeNode getActiveNode()
public void setRoot(NavigationTreeNode rootNode)
public void addToKeyList(NavigationTreeNode node)
public void addSubTrees(RecordModel parentRecordNameProvider, java.util.ArrayList subTreeRoots)
public void addSubTree(RecordModel parentRecordNameProvider, RecordNameProvider childSubTreeRecordNameProvider)
public NavigationTreeNode addSubTreeNode(NavigationTreeNode parentNode, RecordNameProvider childRecordNameProvider, java.util.ArrayList changeListeners)
public void addNode(RecordNameProvider parentRecordNameProvider, RecordNameProvider childRecordNameProvider)
public void deleteNode(RecordNameProvider recordNameProvider)
public void setActiveNode(RecordNameProvider recordNameProvider)
setActiveNode
in interface NavigationView
public void setSelectedNode(NavigationTreeNode node)
public void stateChanged(javax.swing.event.ChangeEvent event)
stateChanged
in interface javax.swing.event.ChangeListener
public void showError(RecordModel recordModel)
recordModel
- the record model object that holds information for
a single record.public boolean fileHasErrors()
public void changeFont(java.awt.Font font)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |