Class JXFindPanel

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.Scrollable
    Direct Known Subclasses:
    JXFindBar

    public class JXFindPanel
    extends AbstractPatternPanel
    JXFindPanel is a basic find panel suitable for use in dialogs. It offers case-sensitivity, wrapped searching, and reverse searching.
    Author:
    unascribed from JDNC, Jeanette Winzenburg
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JPanel

        javax.swing.JPanel.AccessibleJPanel
      • Nested classes/interfaces inherited from class javax.swing.JComponent

        javax.swing.JComponent.AccessibleJComponent
      • Nested classes/interfaces inherited from class java.awt.Container

        java.awt.Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Constructor Summary

      Constructors 
      Constructor Description
      JXFindPanel()
      Default constructor for the find panel.
      JXFindPanel​(Searchable searchable)
      Construct search panel targeted to specific Searchable component.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addNotify()
      Notifies this component that it now has a parent component.
      protected void bind()
      Configure and bind components to/from PatternModel.
      protected void build()
      Compose and layout all the subcomponents.
      protected void doFind()
      Common standalone method to perform search.
      protected int doSearch()
      Performs search and returns index of the next match.
      void findNext()
      Action callback for FindNext action.
      void findPrevious()
      Action callback for FindPrevious action.
      protected void init()
      Initializes component and its listeners and models.
      protected void initComponents()
      Create and initialize components.
      protected void initExecutables()
      creates and registers all "executable" actions.
      void match()
      Action callback for Find action.
      protected void refreshEmptyFromModel()
      called from listening to empty property of PatternModel.
      void setSearchable​(Searchable searchable)
      Sets the Searchable targeted of this find widget.
      protected void showFoundMessage()
      Report that suitable match is found.
      protected void showNotFoundMessage()
      Report that no match is found.
      protected void updateLocaleState​(java.util.Locale locale)
      Updates locale-dependent state.
      • Methods inherited from class javax.swing.JPanel

        getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
      • Methods inherited from class javax.swing.JComponent

        addAncestorListener, 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, paintBorder, paintChildren, 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, 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.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, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • FIND_NEXT_ACTION_COMMAND

        public static final java.lang.String FIND_NEXT_ACTION_COMMAND
        See Also:
        Constant Field Values
      • FIND_PREVIOUS_ACTION_COMMAND

        public static final java.lang.String FIND_PREVIOUS_ACTION_COMMAND
        See Also:
        Constant Field Values
      • wrapCheck

        protected javax.swing.JCheckBox wrapCheck
      • backCheck

        protected javax.swing.JCheckBox backCheck
    • Constructor Detail

      • JXFindPanel

        public JXFindPanel()
        Default constructor for the find panel. Constructs panel not targeted to any component.
      • JXFindPanel

        public JXFindPanel​(Searchable searchable)
        Construct search panel targeted to specific Searchable component.
        Parameters:
        searchible - Component where search widget will try to locate and select information using methods of the Searchible interface.
    • Method Detail

      • setSearchable

        public void setSearchable​(Searchable searchable)
        Sets the Searchable targeted of this find widget. Triggers a search with null pattern to release the old searchable, if any.
        Parameters:
        searchable - Component where search widget will try to locate and select information using methods of the Searchable interface.
      • addNotify

        public void addNotify()
        Notifies this component that it now has a parent component. When this method is invoked, the chain of parent components is set up with KeyboardAction event listeners.
        Overrides:
        addNotify in class javax.swing.JComponent
      • init

        protected void init()
        Initializes component and its listeners and models.
      • bind

        protected void bind()
        Configure and bind components to/from PatternModel.
        Overrides:
        bind in class AbstractPatternPanel
      • refreshEmptyFromModel

        protected void refreshEmptyFromModel()
        called from listening to empty property of PatternModel. this implementation calls super and additionally synchs the enabled state of FIND_NEXT_ACTION_COMMAND, FIND_PREVIOUS_ACTION_COMMAND to !empty.
        Overrides:
        refreshEmptyFromModel in class AbstractPatternPanel
      • match

        public void match()
        Action callback for Find action. Find next/previous match using current setting of direction flag.
        Specified by:
        match in class AbstractPatternPanel
      • findNext

        public void findNext()
        Action callback for FindNext action. Sets direction flag to forward and calls find.
      • findPrevious

        public void findPrevious()
        Action callback for FindPrevious action. Sets direction flag to previous and calls find.
      • doFind

        protected void doFind()
        Common standalone method to perform search. Used by the action callback methods for Find/FindNext/FindPrevious actions. Finds next/previous match using current setting of direction flag. Result is being reporred using showFoundMessage and showNotFoundMessage methods respectively.
        See Also:
        match(), findNext(), findPrevious()
      • doSearch

        protected int doSearch()
        Performs search and returns index of the next match.
        Returns:
        Index of the next match in document.
      • showFoundMessage

        protected void showFoundMessage()
        Report that suitable match is found.
      • showNotFoundMessage

        protected void showNotFoundMessage()
        Report that no match is found.
      • initExecutables

        protected void initExecutables()
        creates and registers all "executable" actions. Meaning: the actions bound to a callback method on this.
        Overrides:
        initExecutables in class AbstractPatternPanel
      • build

        protected void build()
        Compose and layout all the subcomponents.