- java.lang.Object
-
- javax.swing.text.DocumentFilter
-
public class DocumentFilter extends Object
DocumentFilter
, as the name implies, is a filter for theDocument
mutation methods. When aDocument
containing aDocumentFilter
is modified (either throughinsert
orremove
), it forwards the appropriate method invocation to theDocumentFilter
. 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 inFilterBypass
. Subclasses should NOT call back into the Document for the modification instead call into the superclass or theFilterBypass
.When
remove
orinsertString
is invoked on theDocumentFilter
, theDocumentFilter
may callback into theFilterBypass
multiple times, or for different regions, but it should not callback into theFilterBypass
after returning from theremove
orinsertString
method.By default, text related document mutation methods such as
insertString
,replace
andremove
inAbstractDocument
useDocumentFilter
when available, andElement
related mutation methods such ascreate
,insert
andremoveElement
inDefaultStyledDocument
do not useDocumentFilter
. If a method doesn't follow these defaults, this must be explicitly stated in the method documentation.- Since:
- 1.4
- See Also:
Document
,AbstractDocument
,DefaultStyledDocument
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static class
DocumentFilter.FilterBypass
Used as a way to circumvent calling back into the Document to change it.
-
Constructor Summary
Constructors Constructor and Description DocumentFilter()
-
Method Summary
Methods Modifier and Type Method and Description void
insertString(DocumentFilter.FilterBypass fb, int offset, String string, AttributeSet attr)
Invoked prior to insertion of text into the specified Document.void
remove(DocumentFilter.FilterBypass fb, int offset, int length)
Invoked prior to removal of the specified region in the specified Document.void
replace(DocumentFilter.FilterBypass fb, int offset, int length, String text, AttributeSet attrs)
Invoked prior to replacing a region of text in the specified Document.
-
-
-
Method Detail
-
remove
public void remove(DocumentFilter.FilterBypass fb, int offset, int length) throws 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 theFilterBypass
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:
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, String string, AttributeSet attr) throws 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:
BadLocationException
- the given insert position is not a valid position within the document
-
replace
public void replace(DocumentFilter.FilterBypass fb, int offset, int length, String text, AttributeSet attrs) throws BadLocationException
Invoked prior to replacing a region of text in the specified Document. Subclasses that want to conditionally allow replace 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
- Location in Documentlength
- Length of text to deletetext
- Text to insert, null indicates no text to insertattrs
- AttributeSet indicating attributes of inserted text, null is legal.- Throws:
BadLocationException
- the given insert position is not a valid position within the document
-
-
Nederlandse vertaling
U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.
Bij voorbaat dank.
Document heeft de 11/06/2005 gemaakt, de laatste keer de 04/03/2020 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/java-api-rf-javax/swing/text/documentfilter.html
De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.
Referenties
Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.