Package adams.gui.workspace
Class AbstractWorkspaceManagerPanel<T extends AbstractWorkspacePanel>
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- adams.gui.core.BasePanel
-
- adams.gui.workspace.AbstractWorkspaceManagerPanel<T>
-
- Type Parameters:
T- the type of workspace panel to handle
- All Implemented Interfaces:
CleanUpHandler,AbstractNamedHistoryPanel.HistoryEntrySelectionListener,ImageObserver,MenuContainer,Serializable,Accessible
- Direct Known Subclasses:
AbstractSerializableWorkspaceManagerPanel,MultiExperimenter,RemoteControlCenterManagerPanel
public abstract class AbstractWorkspaceManagerPanel<T extends AbstractWorkspacePanel> extends BasePanel implements CleanUpHandler, AbstractNamedHistoryPanel.HistoryEntrySelectionListener
Ancestor for workspace managers.- 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 protected BaseFlatButtonm_ButtonAddthe button for adding a panel.protected BaseFlatButtonm_ButtonRemovethe button for removing a panel.protected AbstractWorkspaceListPanel<T>m_Historythe history panel.protected BasePanelm_PanelButtonsthe panel for the buttons.protected BasePanelm_PanelHistorythe history panel.protected BasePanelm_PanelWorkspacethe actual panel for displaying the other panels.protected BaseSplitPanem_SplitPanethe split pane for the components.-
Fields inherited from class adams.gui.core.BasePanel
m_FileChooser
-
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 AbstractWorkspaceManagerPanel()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddPanel(T panel, String name)Adds the given experimenter panel.voidcleanUp()Cleans up data structures, frees up memory.voidclear()Removes all panels.intcount()Returns the number of experimenter panels.protected voidfinishInit()finishes the initialization.TgetCurrentPanel()Returns the currently selected panel, if any.protected abstract StringgetDefaultWorkspaceName()The default name for a workspace.AbstractWorkspaceListPanelgetEntryPanel()Returns the panel with the workspace entries.AbstractWorkspaceListPanel<T>getHistory()Returns the underlying history panel.TgetPanel(int index)Returns the panel with at the specified index.TgetPanel(String name)Returns the panel with the specified name.voidhistoryEntrySelected(AbstractNamedHistoryPanel.HistoryEntrySelectionEvent e)Gets called whenever a history entry gets selected.protected voidinitGUI()For initializing the GUI.protected abstract TnewWorkspace(boolean init)Returns a new workspace instance.protected abstract AbstractWorkspaceListPanel<T>newWorkspaceList()Instantiates a new panel for workspaces.booleanremovePanel(int index)Removes the panel at the specified index.booleanremovePanel(String name)Removes the panel with the given name.protected voidupdateButtons()Updates the buttons.-
Methods inherited from class adams.gui.core.BasePanel
afterHide, afterShow, beforeHide, beforeShow, closeParent, getParentChild, getParentDialog, getParentFrame, getParentInternalFrame, getParentTitle, initFileChooser, initialize, 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
-
m_SplitPane
protected BaseSplitPane m_SplitPane
the split pane for the components.
-
m_History
protected AbstractWorkspaceListPanel<T extends AbstractWorkspacePanel> m_History
the history panel.
-
m_PanelWorkspace
protected BasePanel m_PanelWorkspace
the actual panel for displaying the other panels.
-
m_PanelHistory
protected BasePanel m_PanelHistory
the history panel.
-
m_PanelButtons
protected BasePanel m_PanelButtons
the panel for the buttons.
-
m_ButtonAdd
protected BaseFlatButton m_ButtonAdd
the button for adding a panel.
-
m_ButtonRemove
protected BaseFlatButton m_ButtonRemove
the button for removing a panel.
-
-
Method Detail
-
finishInit
protected void finishInit()
finishes the initialization.- Overrides:
finishInitin classBasePanel
-
getDefaultWorkspaceName
protected abstract String getDefaultWorkspaceName()
The default name for a workspace.- Returns:
- the default
-
newWorkspace
protected abstract T newWorkspace(boolean init)
Returns a new workspace instance.- Parameters:
init- whether to initialize the workspace- Returns:
- the workspace
-
clear
public void clear()
Removes all panels.
-
count
public int count()
Returns the number of experimenter panels.- Returns:
- the number of panels
-
newWorkspaceList
protected abstract AbstractWorkspaceListPanel<T> newWorkspaceList()
Instantiates a new panel for workspaces.- Returns:
- the list panel
-
getHistory
public AbstractWorkspaceListPanel<T> getHistory()
Returns the underlying history panel.- Returns:
- the panel
-
addPanel
public void addPanel(T panel, String name)
Adds the given experimenter panel.- Parameters:
panel- the panel to addname- the name for the panel
-
removePanel
public boolean removePanel(String name)
Removes the panel with the given name.- Parameters:
name- the name of the panel to remove- Returns:
- true if successfully removed
-
removePanel
public boolean removePanel(int index)
Removes the panel at the specified index.- Parameters:
index- the index of the panel to remove- Returns:
- true if successfully removed
-
getPanel
public T getPanel(int index)
Returns the panel with at the specified index.- Parameters:
index- the index of the panel to retrieved- Returns:
- the panel, null if not found
-
getPanel
public T getPanel(String name)
Returns the panel with the specified name.- Parameters:
name- the name of the panel to retrieve- Returns:
- the panel, null if not found
-
getCurrentPanel
public T getCurrentPanel()
Returns the currently selected panel, if any.- Returns:
- the panel, null if none available
-
getEntryPanel
public AbstractWorkspaceListPanel getEntryPanel()
Returns the panel with the workspace entries.- Returns:
- the panel entries
-
historyEntrySelected
public void historyEntrySelected(AbstractNamedHistoryPanel.HistoryEntrySelectionEvent e)
Gets called whenever a history entry gets selected.- Specified by:
historyEntrySelectedin interfaceAbstractNamedHistoryPanel.HistoryEntrySelectionListener- Parameters:
e- the event
-
updateButtons
protected void updateButtons()
Updates the buttons.
-
cleanUp
public void cleanUp()
Cleans up data structures, frees up memory.- Specified by:
cleanUpin interfaceCleanUpHandler
-
-