Package ghidra.framework.main.datatree
Class ProjectDataTreePanel
- java.lang.Object
- 
- java.awt.Component
- 
- java.awt.Container
- 
- javax.swing.JComponent
- 
- javax.swing.JPanel
- 
- ghidra.framework.main.datatree.ProjectDataTreePanel
 
 
 
 
 
- 
- All Implemented Interfaces:
- java.awt.image.ImageObserver,- java.awt.MenuContainer,- java.io.Serializable,- javax.accessibility.Accessible
 
 public class ProjectDataTreePanel extends javax.swing.JPanelPanel 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.JPaneljavax.swing.JPanel.AccessibleJPanel
 - 
Nested classes/interfaces inherited from class javax.swing.JComponentjavax.swing.JComponent.AccessibleJComponent
 
- 
 - 
Field Summary- 
Fields inherited from class javax.swing.JComponentlistenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
- 
 - 
Constructor SummaryConstructors Constructor Description ProjectDataTreePanel(FrontEndPlugin plugin)Construct an empty panel that is going to be used as the active panelProjectDataTreePanel(java.lang.String projectName, boolean isActiveProject, FrontEndPlugin plugin, DomainFileFilter filter)Constructor
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddTreeMouseListener(java.awt.event.MouseListener l)voidaddTreeSelectionListener(GTreeSelectionListener l)Add the tree selection listener to the data tree.voidcheckOpen(java.awt.event.MouseEvent e)voidcloseRootFolder()Close the root folder for this data tree.voiddispose()voidfindAndSelect(java.lang.String s)Find a node that has the given name and select it.ActionContextgetActionContext(ComponentProvider provider, java.awt.event.MouseEvent e)Get the data tree node that is selectedDataTreegetDataTree()java.lang.String[]getExpandedPathsByNodeName()ProjectDatagetProjectData()DomainFilegetSelectedDomainFile()Get the last selected domain file.DomainFoldergetSelectedDomainFolder()Get the last selected domain folder.intgetSelectedItemCount()Get the number of selected items in the tree.javax.swing.tree.TreeSelectionModelgetTreeSelectionModel()voidprojectRenamed(java.lang.String newName)Notification that the project was renamed; update the root node name and reload the nodevoidremoveTreeMouseListener(java.awt.event.MouseListener l)voidremoveTreeSelectionListener(GTreeSelectionListener l)Remove the tree selection listener from the data tree.voidselectDomainFile(DomainFile domainFile)voidselectDomainFiles(java.util.Set<DomainFile> files)voidselectDomainFolder(DomainFolder domainFolder)voidselectRootDataFolder()Select the root data folder (not root node in the tree which shows the project name).voidsetDomainFileFilter(DomainFileFilter filter)Set the filter on this data tree.voidsetExpandedPathsByNodeName(java.lang.String[] stringPaths)voidsetHelpLocation(HelpLocation helpLocation)voidsetPreferredTreePanelSize(java.awt.Dimension d)voidsetProjectData(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.voidsetTreeFilterEnabled(boolean enabled)Adds or removes the filter from the tree.voidupdateProjectName(java.lang.String newName)Update the project name.- 
Methods inherited from class javax.swing.JPanelgetAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 - 
Methods inherited from class javax.swing.JComponentaddAncestorListener, 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.Containeradd, 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.Componentaction, 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
 
- 
 
- 
- 
- 
Constructor Detail- 
ProjectDataTreePanelpublic ProjectDataTreePanel(FrontEndPlugin plugin) Construct an empty panel that is going to be used as the active panel- Parameters:
- plugin- front end plugin
 
 - 
ProjectDataTreePanelpublic 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- 
getTreeSelectionModelpublic javax.swing.tree.TreeSelectionModel getTreeSelectionModel() 
 - 
setProjectDatapublic 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
 
 - 
updateProjectNamepublic void updateProjectName(java.lang.String newName) Update the project name.- Parameters:
- newName-
 
 - 
closeRootFolderpublic void closeRootFolder() Close the root folder for this data tree.
 - 
selectRootDataFolderpublic void selectRootDataFolder() Select the root data folder (not root node in the tree which shows the project name).
 - 
selectDomainFolderpublic void selectDomainFolder(DomainFolder domainFolder) 
 - 
selectDomainFilespublic void selectDomainFiles(java.util.Set<DomainFile> files) 
 - 
selectDomainFilepublic void selectDomainFile(DomainFile domainFile) 
 - 
setHelpLocationpublic void setHelpLocation(HelpLocation helpLocation) 
 - 
setDomainFileFilterpublic void setDomainFileFilter(DomainFileFilter filter) Set the filter on this data tree.- Parameters:
- filter- determines what should be included in the data tree
 
 - 
getSelectedItemCountpublic 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.
 
 - 
getSelectedDomainFolderpublic DomainFolder getSelectedDomainFolder() Get the last selected domain folder.- Returns:
- null if no domain folder is selected.
 
 - 
getSelectedDomainFilepublic DomainFile getSelectedDomainFile() Get the last selected domain file.- Returns:
- null if no domain file is selected.
 
 - 
addTreeSelectionListenerpublic void addTreeSelectionListener(GTreeSelectionListener l) Add the tree selection listener to the data tree. When the listener is notified of the selection change, it should callgetSelectedDomainFolder()andgetSelectedDomainFile()to get the last selected object.- Parameters:
- l- listener to add
 
 - 
removeTreeSelectionListenerpublic void removeTreeSelectionListener(GTreeSelectionListener l) Remove the tree selection listener from the data tree.- Parameters:
- l- listener to remove
 
 - 
addTreeMouseListenerpublic void addTreeMouseListener(java.awt.event.MouseListener l) 
 - 
removeTreeMouseListenerpublic void removeTreeMouseListener(java.awt.event.MouseListener l) 
 - 
setPreferredTreePanelSizepublic void setPreferredTreePanelSize(java.awt.Dimension d) 
 - 
getProjectDatapublic ProjectData getProjectData() 
 - 
projectRenamedpublic 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
 
 - 
disposepublic void dispose() 
 - 
getActionContextpublic 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
 
 - 
getDataTreepublic DataTree getDataTree() 
 - 
setTreeFilterEnabledpublic void setTreeFilterEnabled(boolean enabled) Adds or removes the filter from the tree.- Parameters:
- enabled- Tree adds the filter; false removes it
 
 - 
getExpandedPathsByNodeNamepublic java.lang.String[] getExpandedPathsByNodeName() 
 - 
setExpandedPathsByNodeNamepublic void setExpandedPathsByNodeName(java.lang.String[] stringPaths) 
 - 
checkOpenpublic void checkOpen(java.awt.event.MouseEvent e) 
 - 
findAndSelectpublic void findAndSelect(java.lang.String s) Find a node that has the given name and select it.- Parameters:
- s- node name
 
 
- 
 
-