Package adams.gui.core
Class AbstractQuickSearchPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- adams.gui.core.BasePanel
-
- adams.gui.core.AbstractQuickSearchPanel
-
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
- Direct Known Subclasses:
ClassQuickSearchPanel
,StringQuickSearchPanel
public class AbstractQuickSearchPanel extends BasePanel
Ancestor for panels that .- 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 Set<ChangeListener>
m_CancelListeners
the cancel listeners (hitting ESC).protected Set<ChangeListener>
m_ChangeListeners
the change listeners.protected DelayedActionRunnable
m_DelayedAction
for updating the search etc.protected AbstractItemFilter
m_ItemFilter
the filter to use.protected SearchableBaseList
m_ListItems
the flow editor for displaying the items.protected Set<ListSelectionListener>
m_SelectionListeners
the selection listeners (double click or enter).protected BaseTextField
m_TextSearch
the search panel.-
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 AbstractQuickSearchPanel()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
acceptItem(String item)
Checks whether the item should be used.void
addCancelListener(ChangeListener l)
Adds the cancel listener to notify when the user hits ESC.void
addChangeListener(ChangeListener l)
Adds the change listener to notify whenever the selected item changes.void
addSelectionListener(ListSelectionListener l)
Adds the selection listener to notify whenever the user selects an item (double click or enter).void
clearSearch()
Clears the search box.AbstractItemFilter
getItemFilter()
Returns the current item filter in use.int
getSelectedItemIndex()
Returns the index of the user-selected item in the original list of items.protected void
initGUI()
For initializing the GUI.protected void
initialize()
Initializes the listeners.protected void
notifyCancelListeners()
Notifies all cancel listeners.protected void
notifyChangeListeners()
Notifies all change listeners.protected void
notifySelectionListeners()
Notifies all selection listeners.void
removeCancelListener(ChangeListener l)
Removes the cancel listener from notifications when the user hits ESC.void
removeChangeListener(ChangeListener l)
Removes the change listener from notifications whenever the selected item changes.void
removeSelectionListener(ListSelectionListener l)
Removes the selection listener from notifications whenever the user selects an item (double click or enter).void
requestFocus()
Requests the search box to get the focus.void
setItemFilter(AbstractItemFilter value)
Sets the item filter to use for filtering the items.protected void
updateModel(String[] items)
Updates the model, applies the item filter to the items.-
Methods inherited from class adams.gui.core.BasePanel
afterHide, afterShow, beforeHide, beforeShow, closeParent, finishInit, 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, 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_TextSearch
protected BaseTextField m_TextSearch
the search panel.
-
m_ListItems
protected SearchableBaseList m_ListItems
the flow editor for displaying the items.
-
m_ChangeListeners
protected Set<ChangeListener> m_ChangeListeners
the change listeners.
-
m_SelectionListeners
protected Set<ListSelectionListener> m_SelectionListeners
the selection listeners (double click or enter).
-
m_CancelListeners
protected Set<ChangeListener> m_CancelListeners
the cancel listeners (hitting ESC).
-
m_DelayedAction
protected DelayedActionRunnable m_DelayedAction
for updating the search etc.
-
m_ItemFilter
protected AbstractItemFilter m_ItemFilter
the filter to use.
-
-
Method Detail
-
initialize
protected void initialize()
Initializes the listeners.- Overrides:
initialize
in classBasePanel
-
addChangeListener
public void addChangeListener(ChangeListener l)
Adds the change listener to notify whenever the selected item changes.- Parameters:
l
- the listener to add
-
removeChangeListener
public void removeChangeListener(ChangeListener l)
Removes the change listener from notifications whenever the selected item changes.- Parameters:
l
- the listener to remove
-
notifyChangeListeners
protected void notifyChangeListeners()
Notifies all change listeners.
-
addSelectionListener
public void addSelectionListener(ListSelectionListener l)
Adds the selection listener to notify whenever the user selects an item (double click or enter).- Parameters:
l
- the listener to add
-
removeSelectionListener
public void removeSelectionListener(ListSelectionListener l)
Removes the selection listener from notifications whenever the user selects an item (double click or enter).- Parameters:
l
- the listener to remove
-
notifySelectionListeners
protected void notifySelectionListeners()
Notifies all selection listeners.
-
addCancelListener
public void addCancelListener(ChangeListener l)
Adds the cancel listener to notify when the user hits ESC.- Parameters:
l
- the listener to add
-
removeCancelListener
public void removeCancelListener(ChangeListener l)
Removes the cancel listener from notifications when the user hits ESC.- Parameters:
l
- the listener to remove
-
notifyCancelListeners
protected void notifyCancelListeners()
Notifies all cancel listeners.
-
setItemFilter
public void setItemFilter(AbstractItemFilter value)
Sets the item filter to use for filtering the items.- Parameters:
value
- the filter to use
-
getItemFilter
public AbstractItemFilter getItemFilter()
Returns the current item filter in use.- Returns:
- the filter in use
-
acceptItem
protected boolean acceptItem(String item)
Checks whether the item should be used.- Parameters:
item
- the item to check- Returns:
- true if to use
-
updateModel
protected void updateModel(String[] items)
Updates the model, applies the item filter to the items.- Parameters:
items
- the items to filter and then use
-
getSelectedItemIndex
public int getSelectedItemIndex()
Returns the index of the user-selected item in the original list of items.- Returns:
- the index
-
clearSearch
public void clearSearch()
Clears the search box.
-
requestFocus
public void requestFocus()
Requests the search box to get the focus.- Overrides:
requestFocus
in classJComponent
-
-