Package adams.gui.tools.wekainvestigator
Class InvestigatorPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- adams.gui.core.BasePanel
-
- adams.gui.workspace.AbstractWorkspacePanel
-
- adams.gui.tools.wekainvestigator.InvestigatorPanel
-
- All Implemented Interfaces:
CleanUpHandler
,StatusMessageHandler
,MenuBarProvider
,ImageObserver
,MenuContainer
,Serializable
,Accessible
public class InvestigatorPanel extends AbstractWorkspacePanel implements StatusMessageHandler, CleanUpHandler
The main panel for the Investigator.- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
-
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 Modifier and Type Field Description static String
FILENAME
the name of the props file.static String
FILENAME_SHORTCUTS
the name of the shortcut props file.protected BaseAction
m_ActionFileClassAttribute
the action for selecting the class attribute heuristic.protected BaseAction
m_ActionFileClear
the action for clearing all datasets.protected BaseAction
m_ActionFileClose
the action for closing the investigator.protected BaseAction
m_ActionFileOpen
the action for loading a dataset.protected BaseAction
m_ActionFileRelationName
the action for selecting the relation name heuristic.protected BaseAction
m_ActionFileStopJob
the action for stopping a job.protected BaseAction
m_ActionTabCloseAllTabs
the action for closing all tabs.protected BaseAction
m_ActionTabCloseTab
the action for closing a tab.protected BaseAction
m_ActionTabCopyTab
the action for copying a tab.protected BaseAction
m_ActionTabLoadParameters
the action for loading parameters for a tab.protected BaseAction
m_ActionTabSaveParameters
the action for saving parmeters of a tab.protected BaseAction
m_ActionTabUndoCloseTab
the action for undoing closed a tab.protected AbstractClassAttributeHeuristic
m_ClassAttributeHeuristic
the heuristic for selecting the class attribute.protected DataContainerList
m_Data
the data loaded.protected WekaFileChooser
m_FileChooser
the filechooser for datasets.protected InvestigatorJob
m_Job
the title of the current job.protected StringBuilder
m_Log
the log.protected JMenuBar
m_MenuBar
the menu bar.protected BaseMenu
m_MenuFileSources
the submenu for a sources.protected JCheckBoxMenuItem
m_MenuItemOptionsCalculateModelSize
the menu item for enabling/disabling model size calculation.protected JCheckBoxMenuItem
m_MenuItemOptionsSortAttributeNames
the menu item for enabling/disabling sorting of attribute names.protected JCheckBoxMenuItem
m_MenuItemOptionsUndoEnabled
the menu item for enabling/disabling undo.protected BaseMenu
m_MenuTabNewTab
the submenu for a new tab.protected static Properties
m_Properties
the properties.protected RecentFilesHandlerWithCommandline<JMenu>
m_RecentFilesHandler
the recent files handler.protected AbstractRelationNameHeuristic
m_RelationNameHeuristic
the heuristic for updating the relation name.protected static Properties
m_ShortcutProperties
the shortcut properties.protected BaseStatusBar
m_StatusBar
the status bar.protected DateFormat
m_StatusBarDateFormat
for timestamps in the statusbar.protected InvestigatorTabbedPane
m_TabbedPane
the tabbed pane for the tabs.protected Thread
m_Worker
for executing operations (loading files etc).static String
SESSION_FILE
the file to store the recent files in.-
Fields inherited from class adams.gui.workspace.AbstractWorkspacePanel
m_TitleGenerator
-
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
-
-
Constructor Summary
Constructors Constructor Description InvestigatorPanel()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addDefaultTabs()
Adds the default tabs.String
addRecentFile(File file, weka.core.converters.AbstractFileLoader loader)
Adds the specified file/loader combination to the recent files list.boolean
calculateModelSize()
Returns whether model sizes should get calculated.void
chooseClassAttributeHeuristic()
Lets the user choose the class attribute heuristic.void
chooseRelationNameHeuristic()
Lets the user choose the relation name heuristic.void
cleanUp()
Cleans up data structures, frees up memory.void
clear()
Removes all currently loaded datasets.void
clearLog()
Empties the log.void
executionFinished()
Gets called when a job finishes.void
fireDataChange(WekaInvestigatorDataEvent e)
Notifies all the tabs that the data has changed.AbstractClassAttributeHeuristic
getClassAttributeHeuristic()
Returns the current class attribute heuristic.DataContainerList
getData()
Returns the currently loaded data.protected String
getDefaultTitle()
Returns the default title.StringBuilder
getLog()
Returns the internal log buffer.JMenuBar
getMenuBar()
Creates a menu bar (singleton per panel object).static Properties
getProperties()
Returns the properties that define the investigator.AbstractRelationNameHeuristic
getRelationNameHeuristic()
Returns the current relation name heuristic.static Properties
getShortcutProperties()
Returns the properties that define the shortcuts.boolean
getSortAttributeNames()
Returns whether to sort the attribute names.InvestigatorTabbedPane
getTabbedPane()
Returns the underlying tabbed pane.protected String
getTimestampPrefix()
Return the timestamp prefix for logs.protected void
initActions()
Initializes the actions.protected void
initGUI()
Initializes the widgets.protected void
initialize()
Initializes the members.boolean
isBusy()
Returns whether the tab is busy.boolean
isUndoEnabled()
Returns whether undo is enabled.void
logAndShowMessage(String msg)
Logs the error message and shows it in the status bar.void
logError(String msg, String title)
Logs the error message and also displays an error dialog.void
logMessage(String msg)
Logs the message.InvestigatorManagerPanel
newWindow()
Displays a new preview window/frame.void
openFile()
Lets user select a dataset.void
openFile(File file)
Lets user select a dataset.void
openRecent(RecentItemEvent<JMenu,RecentFilesHandlerWithCommandline.Setup> e)
For opening a recently used file.void
setClassAttributeHeuristic(AbstractClassAttributeHeuristic value)
Sets the class attribute heuristic.void
setRelationNameHeuristic(AbstractRelationNameHeuristic value)
Sets the relation name heuristic.void
setSortAttributeNames(boolean value)
Sets whether to sort the attribute names.void
setUndoEnabled(boolean value)
Sets the undo state.void
showStatus(String msg)
Displays a message.boolean
startExecution(InvestigatorJob job)
Starts a job.void
stopExecution()
Stops the evaluation.protected void
toggleSortAttributeNames()
Toggles the "sort attribute names" option.protected void
toggleUndo()
Toggles the undo state.protected void
updateActions()
Updates the actions.weka.core.Instances
updateClassAttribute(weka.core.Instances data)
Updates the class attribute, if not set.protected void
updateMenu()
updates the enabled state of the menu items.weka.core.Instances
updateRelationName(File file, weka.core.Instances data)
Updates the relation name.protected void
updateTitle()
Updates the title of the dialog.-
Methods inherited from class adams.gui.workspace.AbstractWorkspacePanel
close, finishInit, getTitle, getTitleGenerator, logError, logError, logMessage, setTitle, update
-
Methods inherited from class adams.gui.core.BasePanel
afterHide, afterShow, beforeHide, beforeShow, closeParent, getParentChild, getParentDialog, getParentFrame, getParentInternalFrame, getParentTitle, initFileChooser, main, printErrorMessage, printException, saveComponent, setEnabledCascade, setEnabledCascade, setParentTitle, setVisible
-
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, 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
-
-
-
-
Field Detail
-
SESSION_FILE
public static final String SESSION_FILE
the file to store the recent files in.- See Also:
- Constant Field Values
-
FILENAME
public static final String FILENAME
the name of the props file.- See Also:
- Constant Field Values
-
FILENAME_SHORTCUTS
public static final String FILENAME_SHORTCUTS
the name of the shortcut props file.- See Also:
- Constant Field Values
-
m_Properties
protected static Properties m_Properties
the properties.
-
m_ShortcutProperties
protected static Properties m_ShortcutProperties
the shortcut properties.
-
m_TabbedPane
protected InvestigatorTabbedPane m_TabbedPane
the tabbed pane for the tabs.
-
m_StatusBar
protected BaseStatusBar m_StatusBar
the status bar.
-
m_MenuBar
protected JMenuBar m_MenuBar
the menu bar.
-
m_MenuFileSources
protected BaseMenu m_MenuFileSources
the submenu for a sources.
-
m_ActionFileClose
protected BaseAction m_ActionFileClose
the action for closing the investigator.
-
m_MenuItemOptionsUndoEnabled
protected JCheckBoxMenuItem m_MenuItemOptionsUndoEnabled
the menu item for enabling/disabling undo.
-
m_MenuItemOptionsCalculateModelSize
protected JCheckBoxMenuItem m_MenuItemOptionsCalculateModelSize
the menu item for enabling/disabling model size calculation.
-
m_MenuItemOptionsSortAttributeNames
protected JCheckBoxMenuItem m_MenuItemOptionsSortAttributeNames
the menu item for enabling/disabling sorting of attribute names.
-
m_ActionFileClear
protected BaseAction m_ActionFileClear
the action for clearing all datasets.
-
m_ActionFileOpen
protected BaseAction m_ActionFileOpen
the action for loading a dataset.
-
m_ActionFileClassAttribute
protected BaseAction m_ActionFileClassAttribute
the action for selecting the class attribute heuristic.
-
m_ActionFileRelationName
protected BaseAction m_ActionFileRelationName
the action for selecting the relation name heuristic.
-
m_ActionFileStopJob
protected BaseAction m_ActionFileStopJob
the action for stopping a job.
-
m_MenuTabNewTab
protected BaseMenu m_MenuTabNewTab
the submenu for a new tab.
-
m_ActionTabCopyTab
protected BaseAction m_ActionTabCopyTab
the action for copying a tab.
-
m_ActionTabSaveParameters
protected BaseAction m_ActionTabSaveParameters
the action for saving parmeters of a tab.
-
m_ActionTabLoadParameters
protected BaseAction m_ActionTabLoadParameters
the action for loading parameters for a tab.
-
m_ActionTabCloseTab
protected BaseAction m_ActionTabCloseTab
the action for closing a tab.
-
m_ActionTabUndoCloseTab
protected BaseAction m_ActionTabUndoCloseTab
the action for undoing closed a tab.
-
m_ActionTabCloseAllTabs
protected BaseAction m_ActionTabCloseAllTabs
the action for closing all tabs.
-
m_Log
protected StringBuilder m_Log
the log.
-
m_Data
protected DataContainerList m_Data
the data loaded.
-
m_FileChooser
protected WekaFileChooser m_FileChooser
the filechooser for datasets.
-
m_RecentFilesHandler
protected RecentFilesHandlerWithCommandline<JMenu> m_RecentFilesHandler
the recent files handler.
-
m_ClassAttributeHeuristic
protected AbstractClassAttributeHeuristic m_ClassAttributeHeuristic
the heuristic for selecting the class attribute.
-
m_RelationNameHeuristic
protected AbstractRelationNameHeuristic m_RelationNameHeuristic
the heuristic for updating the relation name.
-
m_StatusBarDateFormat
protected DateFormat m_StatusBarDateFormat
for timestamps in the statusbar.
-
m_Worker
protected Thread m_Worker
for executing operations (loading files etc).
-
m_Job
protected InvestigatorJob m_Job
the title of the current job.
-
-
Method Detail
-
initialize
protected void initialize()
Initializes the members.- Overrides:
initialize
in classAbstractWorkspacePanel
-
addDefaultTabs
public void addDefaultTabs()
Adds the default tabs.
-
initActions
protected void initActions()
Initializes the actions.
-
updateActions
protected void updateActions()
Updates the actions.
-
getMenuBar
public JMenuBar getMenuBar()
Creates a menu bar (singleton per panel object). Can be used in frames.- Specified by:
getMenuBar
in interfaceMenuBarProvider
- Specified by:
getMenuBar
in classAbstractWorkspacePanel
- Returns:
- the menu bar
-
updateTitle
protected void updateTitle()
Updates the title of the dialog.- Specified by:
updateTitle
in classAbstractWorkspacePanel
-
updateMenu
protected void updateMenu()
updates the enabled state of the menu items.- Specified by:
updateMenu
in classAbstractWorkspacePanel
-
getDefaultTitle
protected String getDefaultTitle()
Returns the default title.- Specified by:
getDefaultTitle
in classAbstractWorkspacePanel
- Returns:
- the default title
-
isBusy
public boolean isBusy()
Returns whether the tab is busy.- Returns:
- true if busy
-
startExecution
public boolean startExecution(InvestigatorJob job)
Starts a job.- Parameters:
job
- the job to execute
-
stopExecution
public void stopExecution()
Stops the evaluation.
-
executionFinished
public void executionFinished()
Gets called when a job finishes.
-
getTimestampPrefix
protected String getTimestampPrefix()
Return the timestamp prefix for logs.- Returns:
- the prefix
-
logMessage
public void logMessage(String msg)
Logs the message.- Specified by:
logMessage
in classAbstractWorkspacePanel
- Parameters:
msg
- the log message
-
logAndShowMessage
public void logAndShowMessage(String msg)
Logs the error message and shows it in the status bar.- Parameters:
msg
- the error message
-
logError
public void logError(String msg, String title)
Logs the error message and also displays an error dialog.- Specified by:
logError
in classAbstractWorkspacePanel
- Parameters:
msg
- the error messagetitle
- the title for the dialog
-
getLog
public StringBuilder getLog()
Returns the internal log buffer.- Returns:
- the buffer
-
clearLog
public void clearLog()
Empties the log.
-
getData
public DataContainerList getData()
Returns the currently loaded data.- Returns:
- the data
-
fireDataChange
public void fireDataChange(WekaInvestigatorDataEvent e)
Notifies all the tabs that the data has changed.- Parameters:
e
- the event to send
-
getTabbedPane
public InvestigatorTabbedPane getTabbedPane()
Returns the underlying tabbed pane.- Returns:
- the tabbed pane
-
updateClassAttribute
public weka.core.Instances updateClassAttribute(weka.core.Instances data)
Updates the class attribute, if not set.- Parameters:
data
- the data to update- Returns:
- the (potentially) updated data
-
updateRelationName
public weka.core.Instances updateRelationName(File file, weka.core.Instances data)
Updates the relation name.- Parameters:
file
- the file the data was loaded fromdata
- the data to update- Returns:
- the (potentially) updated data
-
addRecentFile
public String addRecentFile(File file, weka.core.converters.AbstractFileLoader loader)
Adds the specified file/loader combination to the recent files list.- Parameters:
file
- the file to addloader
- the associated loader, if null uses auto-detect for loader- Returns:
- null if successful or no recent files being managed, otherwise error message
-
clear
public void clear()
Removes all currently loaded datasets.
-
openFile
public void openFile()
Lets user select a dataset.
-
openFile
public void openFile(File file)
Lets user select a dataset.
-
openRecent
public void openRecent(RecentItemEvent<JMenu,RecentFilesHandlerWithCommandline.Setup> e)
For opening a recently used file.- Parameters:
e
- the event
-
chooseClassAttributeHeuristic
public void chooseClassAttributeHeuristic()
Lets the user choose the class attribute heuristic.
-
setClassAttributeHeuristic
public void setClassAttributeHeuristic(AbstractClassAttributeHeuristic value)
Sets the class attribute heuristic.- Parameters:
value
- the heuristic
-
getClassAttributeHeuristic
public AbstractClassAttributeHeuristic getClassAttributeHeuristic()
Returns the current class attribute heuristic.- Returns:
- the heuristic
-
chooseRelationNameHeuristic
public void chooseRelationNameHeuristic()
Lets the user choose the relation name heuristic.
-
setRelationNameHeuristic
public void setRelationNameHeuristic(AbstractRelationNameHeuristic value)
Sets the relation name heuristic.- Parameters:
value
- the heuristic
-
getRelationNameHeuristic
public AbstractRelationNameHeuristic getRelationNameHeuristic()
Returns the current relation name heuristic.- Returns:
- the heuristic
-
isUndoEnabled
public boolean isUndoEnabled()
Returns whether undo is enabled.- Returns:
- true if enabled
-
setUndoEnabled
public void setUndoEnabled(boolean value)
Sets the undo state.- Parameters:
value
- true if to enable
-
toggleUndo
protected void toggleUndo()
Toggles the undo state.
-
calculateModelSize
public boolean calculateModelSize()
Returns whether model sizes should get calculated.- Returns:
- true if to calculate
-
setSortAttributeNames
public void setSortAttributeNames(boolean value)
Sets whether to sort the attribute names.- Parameters:
value
- true if to sort
-
getSortAttributeNames
public boolean getSortAttributeNames()
Returns whether to sort the attribute names.- Returns:
- true if to sort
-
toggleSortAttributeNames
protected void toggleSortAttributeNames()
Toggles the "sort attribute names" option.
-
newWindow
public InvestigatorManagerPanel newWindow()
Displays a new preview window/frame.- Returns:
- the new panel
-
showStatus
public void showStatus(String msg)
Displays a message.- Specified by:
showStatus
in interfaceStatusMessageHandler
- Parameters:
msg
- the message to display
-
cleanUp
public void cleanUp()
Cleans up data structures, frees up memory.- Specified by:
cleanUp
in interfaceCleanUpHandler
- Overrides:
cleanUp
in classAbstractWorkspacePanel
-
getProperties
public static Properties getProperties()
Returns the properties that define the investigator.- Returns:
- the properties
-
getShortcutProperties
public static Properties getShortcutProperties()
Returns the properties that define the shortcuts.- Returns:
- the properties
-
-