javax.swing.text
Class DocumentFilter
java.lang.Object
|
+--javax.swing.text.DocumentFilter
- public class DocumentFilter
- extends java.lang.Object
DocumentFilter, as the name implies, is a filter for the
Document mutation methods. When a Document
containing a DocumentFilter is modified (either through
insert or remove), it forwards the appropriate
method invocation to the DocumentFilter. The
default implementation allows the modification to
occur. Subclasses can filter the modifications by conditionally invoking
methods on the superclass, or invoking the necessary methods on
the passed in FilterBypass. Subclasses should NOT call back
into the Document for the modification
instead call into the superclass or the FilterBypass.
When remove or insertString is invoked
on the DocumentFilter, the DocumentFilter
may callback into the
FilterBypass multiple times, or for different regions, but
it should not callback into the FilterBypass after returning
from the remove or insertString method.
- Since:
- 1.4
- See Also:
Document
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DocumentFilter
public DocumentFilter()
remove
public void remove(DocumentFilter.FilterBypass fb,
int offset,
int length)
throws javax.swing.text.BadLocationException
- Invoked prior to removal of the specified region in the
specified Document. Subclasses that want to conditionally allow
removal should override this and only call supers implementation as
necessary, or call directly into the
FilterBypass as
necessary.
- Parameters:
fb - FilterBypass that can be used to mutate Documentoffset - the offset from the beginning >= 0length - the number of characters to remove >= 0- Throws:
javax.swing.text.BadLocationException - some portion of the removal range
was not a valid part of the document. The location in the exception
is the first bad position encountered.
insertString
public void insertString(DocumentFilter.FilterBypass fb,
int offset,
java.lang.String string,
javax.swing.text.AttributeSet attr)
throws javax.swing.text.BadLocationException
- Invoked prior to insertion of text into the
specified Document. Subclasses that want to conditionally allow
insertion should override this and only call supers implementation as
necessary, or call directly into the FilterBypass.
- Parameters:
fb - FilterBypass that can be used to mutate Documentoffset - the offset into the document to insert the content >= 0.
All positions that track change at or after the given location
will move.string - the string to insertattr - the attributes to associate with the inserted
content. This may be null if there are no attributes.- Throws:
javax.swing.text.BadLocationException - the given insert position is not a
valid position within the document