org.esa.beam.framework.ui.product
Class ProductTree

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JTree
                  extended by org.esa.beam.framework.ui.product.ProductTree
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible, Scrollable, PopupMenuFactory

public class ProductTree
extends JTree
implements PopupMenuFactory

A tree-view component for multiple Products. Clients can register one or more ProductTreeListeners on this component.

Version:
$Revision$ $Date$
Author:
Norman Fomferra, Sabine Embacher
See Also:
ProductTreeListener, Product, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JTree
JTree.AccessibleJTree, JTree.DropLocation, JTree.DynamicUtilTreeNode, JTree.EmptySelectionModel, JTree.TreeModelHandler, JTree.TreeSelectionRedirector
 
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 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
ProductTree()
          Constructs a new single selection ProductTree.
ProductTree(boolean multipleSelect)
          Constructs a new ProductTree with the given selection mode.
 
Method Summary
 void addProductTreeListener(ProductTreeListener listener)
          Adds a new product tree listener to this product tree component.
 JPopupMenu createPopup(Object context)
           
 JPopupMenu createPopupMenu(Component component)
          Creates the popup menu for the given component.
 JPopupMenu createPopupMenu(MouseEvent event)
          Creates the popup menu for the given mouse event.
 void deregisterActiveProductNodes(ProductNode... nodes)
           
 void deregisterOpenedProductNodes(ProductNode... nodes)
          Deregisters "opened" product nodes, e.g. visible nodes, nodes currently edited, etc.
 void expand(Object toExpand)
           
 CommandManager getCommandManager()
           
 ProductTreeModel getModel()
           
 void registerActiveProductNodes(ProductNode... nodes)
           
 void registerOpenedProductNodes(ProductNode... nodes)
          Registers "opened" product nodes, e.g. visible nodes, nodes currently edited, etc.
 void removeProductTreeListener(ProductTreeListener listener)
          Removes a product tree listener from this product tree component.
 void select(Object toSelect)
          Selects the specified object in this tree's model.
 void setCommandManager(CommandManager commandManager)
           
 void setCommandUIFactory(CommandUIFactory commandUIFactory)
           
 void setModel(TreeModel newModel)
          Sets the TreeModel that will provide the data.
 
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, getDropLocation, getDropMode, getEditingPath, getExpandedDescendants, getExpandsSelectedPaths, getInvokesStopCellEditing, getLastSelectedPathComponent, getLeadSelectionPath, getLeadSelectionRow, getMaxSelectionRow, getMinSelectionRow, 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, 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, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, 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

ProductTree

public ProductTree()
Constructs a new single selection ProductTree.


ProductTree

public ProductTree(boolean multipleSelect)
Constructs a new ProductTree with the given selection mode.

Parameters:
multipleSelect - whether or not the tree is multiple selection capable
Method Detail

getModel

public ProductTreeModel getModel()
Overrides:
getModel in class JTree

setModel

public void setModel(TreeModel newModel)
Sets the TreeModel that will provide the data.

Overrides:
setModel in class JTree
Parameters:
newModel - the TreeModel that is to provide the data. Must be an instance of ProductTreeModel. description: The TreeModel that will provide the data.

select

public void select(Object toSelect)
Selects the specified object in this tree's model. If the given object has no representation in the tree, the current selection will not be changed.

Parameters:
toSelect - the object whose representation in the tree will be selected.

expand

public void expand(Object toExpand)

registerOpenedProductNodes

public void registerOpenedProductNodes(ProductNode... nodes)
Registers "opened" product nodes, e.g. visible nodes, nodes currently edited, etc. Opened product nodes may be differently displayed.

Parameters:
nodes - The products nodes which are in process.
See Also:
registerActiveProductNodes(org.esa.beam.framework.datamodel.ProductNode...)

deregisterOpenedProductNodes

public void deregisterOpenedProductNodes(ProductNode... nodes)
Deregisters "opened" product nodes, e.g. visible nodes, nodes currently edited, etc. Opened product nodes may be diffently displayed.

Parameters:
nodes - The products nodes which are in process.
See Also:
deregisterActiveProductNodes(org.esa.beam.framework.datamodel.ProductNode...)

registerActiveProductNodes

public void registerActiveProductNodes(ProductNode... nodes)

deregisterActiveProductNodes

public void deregisterActiveProductNodes(ProductNode... nodes)

createPopupMenu

public JPopupMenu createPopupMenu(Component component)
Description copied from interface: PopupMenuFactory
Creates the popup menu for the given component. This method is called by the PopupMenuHandler registered on the given component.

Specified by:
createPopupMenu in interface PopupMenuFactory
Parameters:
component - the source component
See Also:
PopupMenuFactory, PopupMenuHandler

createPopupMenu

public JPopupMenu createPopupMenu(MouseEvent event)
Description copied from interface: PopupMenuFactory
Creates the popup menu for the given mouse event. This method is called by the PopupMenuHandler registered on the event fired component.

Specified by:
createPopupMenu in interface PopupMenuFactory
Parameters:
event - the fired mouse event
See Also:
PopupMenuFactory, PopupMenuHandler

addProductTreeListener

public void addProductTreeListener(ProductTreeListener listener)
Adds a new product tree listener to this product tree component.

Parameters:
listener - the listener to be added.

removeProductTreeListener

public void removeProductTreeListener(ProductTreeListener listener)
Removes a product tree listener from this product tree component.

Parameters:
listener - the listener to be removed.

setCommandManager

public void setCommandManager(CommandManager commandManager)

getCommandManager

public CommandManager getCommandManager()

setCommandUIFactory

public void setCommandUIFactory(CommandUIFactory commandUIFactory)

createPopup

public JPopupMenu createPopup(Object context)


Copyright © 2002-2013 Brockmann Consult GmbH. All Rights Reserved.