Module java.desktop

Class DocumentFilter.FilterBypass

  • Enclosing class:
    DocumentFilter


    public abstract static class DocumentFilter.FilterBypass
    extends Object
    Used as a way to circumvent calling back into the Document to change it. Document implementations that wish to support a DocumentFilter must provide an implementation that will not callback into the DocumentFilter when the following methods are invoked from the DocumentFilter.
    Since:
    1.4
    • Constructor Detail

      • FilterBypass

        public FilterBypass​()
    • Method Detail

      • getDocument

        public abstract Document getDocument​()
        Returns the Document the mutation is occurring on.
        Returns:
        Document that remove/insertString will operate on
      • remove

        public abstract void remove​(int offset,
                                    int length)
                             throws BadLocationException
        Removes the specified region of text, bypassing the DocumentFilter.
        Parameters:
        offset - the offset from the beginning >= 0
        length - 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 abstract void insertString​(int offset,
                                          String string,
                                          AttributeSet attr)
                                   throws BadLocationException
        Inserts the specified text, bypassing the DocumentFilter.
        Parameters:
        offset - 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 insert
        attr - 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 abstract void replace​(int offset,
                                     int length,
                                     String string,
                                     AttributeSet attrs)
                              throws BadLocationException
        Deletes the region of text from offset to offset + length, and replaces it with text.
        Parameters:
        offset - Location in Document
        length - Length of text to delete
        string - Text to insert, null indicates no text to insert
        attrs - AttributeSet indicating attributes of inserted text, null is legal.
        Throws:
        BadLocationException - the given insert is not a valid position within the document