Class ProjectDataTreePanel

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

    public class ProjectDataTreePanel
    extends javax.swing.JPanel
    Panel that contains a DataTree for showing project data. Controls whether the data tree supports drag and drop operations.
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JPanel

        javax.swing.JPanel.AccessibleJPanel
      • 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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Field Summary

      • 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
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addTreeMouseListener​(java.awt.event.MouseListener l)
      Add a mouse listener to the data tree.
      void addTreeSelectionListener​(GTreeSelectionListener l)
      Add the tree selection listener to the data tree.
      void checkOpen​(java.awt.event.MouseEvent e)  
      void closeRootFolder()
      Close the root folder for this data tree.
      void dispose()
      Notification that panel is being disposed.
      void findAndSelect​(java.lang.String s)
      Find a node that has the given name and select it.
      ActionContext getActionContext​(ComponentProvider provider, java.awt.event.MouseEvent e)
      Get the data tree node that is selected.
      DataTree getDataTree()
      get the data tree for this data tree panel.
      java.lang.String[] getExpandedPathsByNodeName()  
      ProjectData getProjectData()
      Get the project data that this data tree panel is operating on.
      DomainFile getSelectedDomainFile()
      Get the last selected domain file.
      DomainFolder getSelectedDomainFolder()
      Get the last selected domain folder.
      int getSelectedItemCount()
      Get the number of selected items in the tree.
      javax.swing.tree.TreeSelectionModel getTreeSelectionModel()  
      void projectRenamed​(java.lang.String newName)
      Notification that the project was renamed; update the root node name and reload the node.
      void removeTreeMouseListener​(java.awt.event.MouseListener l)
      Remove the mouse listener from the data tree.
      void removeTreeSelectionListener​(GTreeSelectionListener l)
      Remove the tree selection listener from the data tree.
      void selectDomainFile​(DomainFile domainFile)  
      void selectDomainFiles​(java.util.Set<DomainFile> files)  
      void selectDomainFolder​(DomainFolder domainFolder)  
      void selectRootDataFolder()
      Select the root data folder (not root node in the tree which shows the project name).
      void setDomainFileFilter​(DomainFileFilter filter)
      Set the filter on this data tree.
      void setExpandedPathsByNodeName​(java.lang.String[] stringPaths)  
      void setHelpLocation​(HelpLocation helpLocation)
      Set the help location for the data tree.
      void setPreferredTreePanelSize​(java.awt.Dimension d)
      Set the preferred size of the scroll pane that contains the data tree.
      void setProjectData​(java.lang.String projectName, ProjectData projectData)
      Set the project data for this data tree and populate it with nodes for the users in the project.
      void setTreeFilterEnabled​(boolean enabled)
      Adds or removes the filter from the tree.
      void updateProjectName​(java.lang.String newName)
      Update the project name.
      • Methods inherited from class javax.swing.JPanel

        getAccessibleContext, getUI, getUIClassID, paramString, setUI, 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, 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, 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, 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, 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
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • ProjectDataTreePanel

        public ProjectDataTreePanel​(FrontEndPlugin plugin)
        Construct an empty panel that is going to be used as the active panel.
        Parameters:
        tool - front end tool
      • ProjectDataTreePanel

        public ProjectDataTreePanel​(java.lang.String projectName,
                                    boolean isActiveProject,
                                    FrontEndPlugin plugin,
                                    DomainFileFilter filter)
        Construct a new DataTreePanel.
        Parameters:
        projectName - name of project
        projectData - object that provides access to all the user data folders in a project
        isActiveProject - true if the project is active, and the data tree may be modified
        tool - front end tool; will be null if the panel is used in a dialog
        actionMgr - class to handle enablement of actions; an ActionManager is passed in when several data tree panels all need to use the same ActionManager, e.g., the viewed projects in the front end tool; actionMgr will be null if the panel is used in a dialog
    • Method Detail

      • getTreeSelectionModel

        public javax.swing.tree.TreeSelectionModel getTreeSelectionModel()
      • setProjectData

        public void setProjectData​(java.lang.String projectName,
                                   ProjectData projectData)
        Set the project data for this data tree and populate it with nodes for the users in the project.
        Parameters:
        projectName - name of project
        projectData - data that has the root folder for the project
      • updateProjectName

        public void updateProjectName​(java.lang.String newName)
        Update the project name.
        Parameters:
        newName -
      • closeRootFolder

        public void closeRootFolder()
        Close the root folder for this data tree.
      • selectRootDataFolder

        public void selectRootDataFolder()
        Select the root data folder (not root node in the tree which shows the project name).
      • selectDomainFolder

        public void selectDomainFolder​(DomainFolder domainFolder)
      • selectDomainFiles

        public void selectDomainFiles​(java.util.Set<DomainFile> files)
      • selectDomainFile

        public void selectDomainFile​(DomainFile domainFile)
      • setHelpLocation

        public void setHelpLocation​(HelpLocation helpLocation)
        Set the help location for the data tree.
      • setDomainFileFilter

        public void setDomainFileFilter​(DomainFileFilter filter)
        Set the filter on this data tree.
        Parameters:
        filter - determines what should be included in the data tree
      • getSelectedItemCount

        public int getSelectedItemCount()
        Get the number of selected items in the tree. These could be either DomainFile's or DomainFolder's.
      • getSelectedDomainFolder

        public DomainFolder getSelectedDomainFolder()
        Get the last selected domain folder.
        Returns:
        null if no domain folder is selected.
      • getSelectedDomainFile

        public DomainFile getSelectedDomainFile()
        Get the last selected domain file.
        Returns:
        null if no domain file is selected.
      • addTreeSelectionListener

        public void addTreeSelectionListener​(GTreeSelectionListener l)
        Add the tree selection listener to the data tree. When the listener is notified of the selection change, it should call getSelectedDomainFolder() and getSelectedDomainFile() to get the last selected object.
        Parameters:
        l - listener to add
      • removeTreeSelectionListener

        public void removeTreeSelectionListener​(GTreeSelectionListener l)
        Remove the tree selection listener from the data tree.
        Parameters:
        l - listener to remove
      • addTreeMouseListener

        public void addTreeMouseListener​(java.awt.event.MouseListener l)
        Add a mouse listener to the data tree.
      • removeTreeMouseListener

        public void removeTreeMouseListener​(java.awt.event.MouseListener l)
        Remove the mouse listener from the data tree.
      • setPreferredTreePanelSize

        public void setPreferredTreePanelSize​(java.awt.Dimension d)
        Set the preferred size of the scroll pane that contains the data tree.
      • getProjectData

        public ProjectData getProjectData()
        Get the project data that this data tree panel is operating on.
      • projectRenamed

        public void projectRenamed​(java.lang.String newName)
        Notification that the project was renamed; update the root node name and reload the node.
      • dispose

        public void dispose()
        Notification that panel is being disposed.
      • getActionContext

        public ActionContext getActionContext​(ComponentProvider provider,
                                              java.awt.event.MouseEvent e)
        Get the data tree node that is selected.
        Parameters:
        e - mouse event for the popup; may be null if this is being called as a result of the key binding pressed
        Returns:
        null if there is no selection
      • getDataTree

        public DataTree getDataTree()
        get the data tree for this data tree panel.
      • setTreeFilterEnabled

        public void setTreeFilterEnabled​(boolean enabled)
        Adds or removes the filter from the tree.
        Parameters:
        enabled - Tree adds the filter; false removes it
      • getExpandedPathsByNodeName

        public java.lang.String[] getExpandedPathsByNodeName()
      • setExpandedPathsByNodeName

        public void setExpandedPathsByNodeName​(java.lang.String[] stringPaths)
      • checkOpen

        public void checkOpen​(java.awt.event.MouseEvent e)
      • findAndSelect

        public void findAndSelect​(java.lang.String s)
        Find a node that has the given name and select it.
        Parameters:
        s - node name