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)  
      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()  
      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()  
      java.lang.String[] getExpandedPathsByNodeName()  
      ProjectData getProjectData()  
      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)  
      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)  
      void setPreferredTreePanelSize​(java.awt.Dimension d)  
      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:
        plugin - front end plugin
      • ProjectDataTreePanel

        public ProjectDataTreePanel​(java.lang.String projectName,
                                    boolean isActiveProject,
                                    FrontEndPlugin plugin,
                                    DomainFileFilter filter)
        Constructor
        Parameters:
        projectName - name of project
        isActiveProject - true if the project is active, and the data tree may be modified
        plugin - front end plugin; will be null if the panel is used in a dialog
        filter - optional filter that is used to hide programs from view
    • 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 - the new name
      • 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)
      • 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 files or folders.
        Returns:
        the number of selected items in the tree.
      • 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)
      • removeTreeMouseListener

        public void removeTreeMouseListener​(java.awt.event.MouseListener l)
      • setPreferredTreePanelSize

        public void setPreferredTreePanelSize​(java.awt.Dimension d)
      • projectRenamed

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

        public void dispose()
      • getActionContext

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

        public DataTree getDataTree()
      • 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