Package adams.gui.tools
Class AbstractManagementPanelWithProperties<T extends Comparable>
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- adams.gui.core.BasePanel
-
- adams.gui.tools.AbstractManagementPanel<T>
-
- adams.gui.tools.AbstractManagementPanelWithProperties<T>
-
- All Implemented Interfaces:
CleanUpHandler
,MenuBarProvider
,ImageObserver
,MenuContainer
,Serializable
,Accessible
- Direct Known Subclasses:
EmailAddressBookPanel
,FileChooserBookmarksManagementPanel
public abstract class AbstractManagementPanelWithProperties<T extends Comparable> extends AbstractManagementPanel<T>
Ancestor panel for properties-based management panels.- Version:
- $Revision$
- 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 Properties
m_Properties
the underlying properties.-
Fields inherited from class adams.gui.tools.AbstractManagementPanel
m_ButtonAdd, m_ButtonClear, m_ButtonLoad, m_ButtonRefresh, m_ButtonRemove, m_ButtonUpdate, m_FileChooser, m_MenuBar, m_MenuItemEditAdd, m_MenuItemEditClear, m_MenuItemEditRemove, m_MenuItemEditUpdate, m_MenuItemFileRefresh, m_ModelValues, m_PanelSearch, m_PanelTable, m_PanelValues, m_TableValues
-
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 AbstractManagementPanelWithProperties()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract String
createKey(T value)
Creates the key for storing the object in the properties.protected boolean
exists(T value)
Checks whether the object already exists.protected abstract T
fromString(String s)
Turns the string obtained from the properties file into an object.protected String
getID(T value)
Returns the ID from the object.protected abstract Properties
getProperties()
Returns the properties to work with.protected List<T>
loadAll()
Loads all the objects.protected boolean
remove(T value)
Removes the object.protected boolean
store(T value)
Stores the object.protected abstract boolean
storeProperties()
Saves the properties on disk.protected abstract String
toString(T value)
Turns the object into a string to be stored in the properties file.-
Methods inherited from class adams.gui.tools.AbstractManagementPanel
addActionListener, addChangeListener, addDocumentListener, addFields, addListener, addObject, addOtherMenus, addToEditMenu, addToFileMenu, canAddObject, canClearFields, cleanUp, clear, fieldsToObject, finishInit, getFileChooser, getItemName, getManagedClass, getMaximumColumnWidth, getMenuBar, getSelectedValues, initGUI, isReadOnly, loadValue, newTableModel, objectToFields, refresh, removeObjects, update, updateButtons, updateMenu, updateObject
-
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_Properties
protected Properties m_Properties
the underlying properties.
-
-
Method Detail
-
getProperties
protected abstract Properties getProperties()
Returns the properties to work with. Loads them, if necessary.- Returns:
- the properties
-
storeProperties
protected abstract boolean storeProperties()
Saves the properties on disk.- Returns:
- true if successfully saved
-
createKey
protected abstract String createKey(T value)
Creates the key for storing the object in the properties.- Parameters:
value
- the object to create the key from- Returns:
- the generated key
-
fromString
protected abstract T fromString(String s)
Turns the string obtained from the properties file into an object.- Parameters:
s
- the string to parse- Returns:
- the generated object, null if failed to generate
-
toString
protected abstract String toString(T value)
Turns the object into a string to be stored in the properties file.- Parameters:
value
- the object to convert- Returns:
- the generated strings
-
loadAll
protected List<T> loadAll()
Loads all the objects.- Specified by:
loadAll
in classAbstractManagementPanel<T extends Comparable>
- Returns:
- all available Objects
-
exists
protected boolean exists(T value)
Checks whether the object already exists.- Specified by:
exists
in classAbstractManagementPanel<T extends Comparable>
- Parameters:
value
- the value to look for- Returns:
- true if already available
-
store
protected boolean store(T value)
Stores the object.- Specified by:
store
in classAbstractManagementPanel<T extends Comparable>
- Parameters:
value
- the value to store- Returns:
- true if successfully stored
-
remove
protected boolean remove(T value)
Removes the object.- Specified by:
remove
in classAbstractManagementPanel<T extends Comparable>
- Parameters:
value
- the value to remove- Returns:
- true if successfully removed
-
getID
protected String getID(T value)
Returns the ID from the object.- Overrides:
getID
in classAbstractManagementPanel<T extends Comparable>
- Parameters:
value
- the object to get the ID from- Returns:
- the ID, null if it could not be retrieved
-
-