|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.awt.Component
java.awt.Container
java.awt.Window
java.awt.Dialog
javax.swing.JDialog
de.calcom.cclib.text.FindReplaceDialog
public class FindReplaceDialog
Dialog to manage find and replace on a Document
shown
in a JEditorPane
.
The component has a 'pluggable' interface about how to deal with the event that one document has been searched to the end. If it is constructed with a FindReplaceListener, it shows an additional checkbox 'Whole project' where the user can select, if a group of documents shall be searched instead of a single document.
If only one document is searched, the dialog searches only in the document currently shown in the editor.
By adding a FindReplaceListener listening for FindReplaceEvents, the FindReplaceDialog notifies other classes about the fact that a group of documents shall be searched instead of only the current one.
Initially FindReplaceDialog notifies the listener that the first document in the group shall be loaded into the editor.
After loading the first document and resuming the find or replace operation, the listener gets informed that the end of a document has been reached. A handling method for that event should cause the editor to load the next document in the group before it resumes the find or replace operation.
Example for an implementation of FindReplaceListener:
IMPORTANT: the methods of the FindReplaceListener need to call either resumeOperation() or terminateOperation() on the FindReplaceDialog, that fired the FindReplaceEvent. Otherwise the FindReplaceDialog could 'hang'.
FindReplaceDialog frd = new FindReplaceDialog(aFrame, myEditorPane, new MyFindReplaceListener()); protected class MyFindReplaceListener implements FindReplaceListener { public void getNextDocument(FindReplaceEvent e) { if(documentsLeft()) { // documentsLeft() is a method coded somewhere else myEditorPane.setDocument(nextDocument()); // nextDocument() is a method coded somewhere else ((FindReplaceDialog) e.getSource()).resumeOperation(); } else { ((FindReplaceDialog) e.getSource()).terminateOperation(); } } public void getFirstDocument(FindReplaceEvent e) { myEditorPane.setDocument(firstDocument()); // firstDocument() is a method coded somewhere else ((FindReplaceDialog) e.getSource()).resumeOperation(); } }
Added i18n support for application SimplyHTML in version 1.5
Document
,
JEditorPane
,
Serialized FormNested 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 | |
---|---|
static int |
MODE_DOCUMENT
|
static int |
MODE_PROJECT
|
static int |
OP_FIND
|
static int |
OP_NONE
|
static int |
OP_REPLACE
|
static int |
RO_ALL
|
static int |
RO_DONE
|
static int |
RO_NO
|
static int |
RO_YES
|
static boolean |
STATE_LOCKED
|
static boolean |
STATE_UNLOCKED
|
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 | |
---|---|
FindReplaceDialog()
Construct a FindReplaceDialog . |
|
FindReplaceDialog(java.awt.Frame owner,
javax.swing.JEditorPane editor)
Construct a FindReplaceDialog . |
|
FindReplaceDialog(java.awt.Frame owner,
javax.swing.JEditorPane editor,
FindReplaceListener listener)
Construct a FindReplaceDialog . |
Method Summary | |
---|---|
void |
addFindReplaceListener(FindReplaceListener listener)
add an event listener to this dialog. |
void |
centerDialog(java.awt.Frame owner)
Center this dialog window relative to its owning Frame . |
void |
removeFindReplaceListener(FindReplaceListener listener)
remove an event listener from this dialog. |
void |
resumeOperation()
Resume the current operation after a getFirstDocument or getNextDocument event was fired |
void |
setEditor(javax.swing.JEditorPane editor)
Set the JEditorPane holding the document to be searched |
void |
setMode(int mode)
Set the mode. |
void |
terminateOperation()
Terminate the current operation |
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, setVisible, 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, 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, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, transferFocusBackward, transferFocusUpCycle |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final boolean STATE_LOCKED
public static final boolean STATE_UNLOCKED
public static final int RO_YES
public static final int RO_NO
public static final int RO_ALL
public static final int RO_DONE
public static final int MODE_DOCUMENT
public static final int MODE_PROJECT
public static final int OP_NONE
public static final int OP_FIND
public static final int OP_REPLACE
Constructor Detail |
---|
public FindReplaceDialog()
FindReplaceDialog
.
Does not show the dialog window, as fields 'editor' and 'doc' have to be set separately before the dialog is operable.
JEditorPane
,
Document
,
Frame
public FindReplaceDialog(java.awt.Frame owner, javax.swing.JEditorPane editor)
FindReplaceDialog
.
Shows the dialog window modal, packed and centered over the owning
Frame
after construction.
Using this constructor implies the dialog shall be used in mode MODE_DOCUMENT
owner
- the Frame
that owns this dialogeditor
- JEditorPane
displaying the
Document
to seach inJEditorPane
,
Document
,
Frame
public FindReplaceDialog(java.awt.Frame owner, javax.swing.JEditorPane editor, FindReplaceListener listener)
FindReplaceDialog
.
Shows the dialog window modal, packed and centered over the owning
Frame
after construction.
Using this constructor implies the dialog shall be used in mode MODE_PROJECT
owner
- the Frame
that owns this dialogeditor
- JEditorPane
displaying the
Document
to seach inlistener
- listener for handling FindReplaceEventsJEditorPane
,
Document
,
Frame
Method Detail |
---|
public void addFindReplaceListener(FindReplaceListener listener)
listener
- the event listener to addpublic void removeFindReplaceListener(FindReplaceListener listener)
listener
- the event listener to removepublic void resumeOperation()
public void terminateOperation()
public void setEditor(javax.swing.JEditorPane editor)
editor
- the JEditorPane holding the document to be searchedJEditorPane
public void setMode(int mode)
Switches between
mode
- one of MODE_DOCUMENT and MODE_PROJECTpublic void centerDialog(java.awt.Frame owner)
Frame
.
owner
- Frame
owning this dialogFrame
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |