edu.northwestern.at.utils.swing
Class SearchAndReplaceDialog

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Dialog
                  extended by javax.swing.JDialog
                      extended by edu.northwestern.at.utils.swing.ModalDialog
                          extended by edu.northwestern.at.utils.swing.SearchAndReplaceDialog
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class SearchAndReplaceDialog
extends ModalDialog

Performs search and replace text operations for JTextComponent.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JDialog
javax.swing.JDialog.AccessibleJDialog
 
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
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
 
Field Summary
protected  int batchEditDepth
          Counts depth of nested batch edits.
protected  javax.swing.text.Document docReplace
          Replace text as document.
protected  javax.swing.text.Document docSearch
          Search text as document.
protected  javax.swing.ButtonModel modelBackwards
           
protected  javax.swing.ButtonModel modelCase
           
protected  javax.swing.ButtonModel modelForwards
           
protected  javax.swing.ButtonModel modelWord
          Models for options.
protected  java.lang.Object parent
          Parent component to which this search dialog belongs.
protected  javax.swing.JButton replaceAllButton
           
protected  javax.swing.JButton replaceButton
           
protected  boolean searchBackwards
          True to search up (towards beginning of text).
protected  javax.swing.JButton searchButton
          Dialog buttons.
protected  java.lang.String searchData
          The search data.
protected  int searchIndex
          Current index of search text.
protected  XTextField searchText1
          Search text field in search pane.
protected  XTextField searchText2
          Search text field in replace pane.
protected  javax.swing.JTabbedPane tabbedPane
          Tabbed pane to hold search and replace dialogs.
protected  javax.swing.text.JTextComponent textPane
          JTextComponent containing document to search.
 
Fields inherited from class edu.northwestern.at.utils.swing.ModalDialog
usePlatformPositionForDefaultButton
 
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Dialog
DEFAULT_MODALITY_TYPE
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
SearchAndReplaceDialog(java.lang.Object parent, javax.swing.text.JTextComponent textPane, int index)
          Create search and replace dialog.
 
Method Summary
 void doReplaceAll()
          Do replace all.
protected  void info(java.lang.String message)
          Display information message.
 int searchNext(boolean doReplace, boolean showWarnings)
          Search for next occurrence of matching text.
protected  void setFocusOn(java.awt.Component component)
          Set focus to specified component.
 void setSelectedIndex(int index)
          Select Search or Replace dialog pane.
 void setSelection(int selBegin, int selEnd, boolean selBackwards)
          Set the selected text interval.
protected  void warning(java.lang.String message)
          Display warning message.
 
Methods inherited from class edu.northwestern.at.utils.swing.ModalDialog
add, add, add, add, add, addButton, addDefaultButton, fixDefaultButtonPosition, getUsePlatformPositionForDefaultButton, paintImmediately, setInitialFocus, setUsePlatformPositionForDefaultButton, setVisible, show, showUnpacked, showUnpacked
 
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setModalityType, setResizable, setTitle, setUndecorated, show, toBack
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

parent

protected java.lang.Object parent
Parent component to which this search dialog belongs.


textPane

protected javax.swing.text.JTextComponent textPane
JTextComponent containing document to search.


tabbedPane

protected javax.swing.JTabbedPane tabbedPane
Tabbed pane to hold search and replace dialogs.


searchText1

protected XTextField searchText1
Search text field in search pane.


searchText2

protected XTextField searchText2
Search text field in replace pane.


docSearch

protected javax.swing.text.Document docSearch
Search text as document.


docReplace

protected javax.swing.text.Document docReplace
Replace text as document.


searchButton

protected javax.swing.JButton searchButton
Dialog buttons.


replaceButton

protected javax.swing.JButton replaceButton

replaceAllButton

protected javax.swing.JButton replaceAllButton

modelWord

protected javax.swing.ButtonModel modelWord
Models for options. Allow automatic sharing of settings between search and replace panes.


modelCase

protected javax.swing.ButtonModel modelCase

modelBackwards

protected javax.swing.ButtonModel modelBackwards

modelForwards

protected javax.swing.ButtonModel modelForwards

searchIndex

protected int searchIndex
Current index of search text.


searchBackwards

protected boolean searchBackwards
True to search up (towards beginning of text).


searchData

protected java.lang.String searchData
The search data.


batchEditDepth

protected int batchEditDepth
Counts depth of nested batch edits.

Constructor Detail

SearchAndReplaceDialog

public SearchAndReplaceDialog(java.lang.Object parent,
                              javax.swing.text.JTextComponent textPane,
                              int index)
Create search and replace dialog.

Parameters:
parent - Parent component of this dialog.
textPane - JTextComponent which owns this dialog.
index - 0 to show search pane, 1 to show replace pane.
Method Detail

setFocusOn

protected void setFocusOn(java.awt.Component component)
Set focus to specified component.

Parameters:
component - Component to receive focus.

setSelectedIndex

public void setSelectedIndex(int index)
Select Search or Replace dialog pane.

Parameters:
index - 0 for search, 1 for replace.

searchNext

public int searchNext(boolean doReplace,
                      boolean showWarnings)
Search for next occurrence of matching text.

Parameters:
doReplace - True to replace text, false to find text.
showWarnings - True to display "not found" messages.

doReplaceAll

public void doReplaceAll()
Do replace all.


setSelection

public void setSelection(int selBegin,
                         int selEnd,
                         boolean selBackwards)
Set the selected text interval.

Parameters:
selBegin - Beginning offset of selection.
selEnd - Ending offset of selection.
selBackwards - True to select backwards, else forwards.

warning

protected void warning(java.lang.String message)
Display warning message.

Parameters:
message - The text of the warning message.

info

protected void info(java.lang.String message)
Display information message.

Parameters:
message - The text of the information message.