Package groovy.console.ui.text
Class StructuredSyntaxDocumentFilter
java.lang.Object
javax.swing.text.DocumentFilter
groovy.console.ui.text.StructuredSyntaxDocumentFilter
- Direct Known Subclasses:
- GroovyFilter
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionfinal classprotected classNested classes/interfaces inherited from class javax.swing.text.DocumentFilterDocumentFilter.FilterBypass
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected StructuredSyntaxDocumentFilter.LexerNodeThe root of the lexical parsing tree.The position tree of multi-line comments.protected DefaultStyledDocumentstatic final String
- 
Constructor SummaryConstructorsConstructorDescriptionCreates a new instance of StructuredSyntaxDocumentFilter
- 
Method SummaryModifier and TypeMethodDescriptionCreate a new LexerNode for adding to root.Get the root node for lexing the document.voidinsertString(DocumentFilter.FilterBypass fb, int offset, String text, AttributeSet attrs) Insert a string into the document, and then parse it if the parser has been set.protected voidparseDocument(int offset, int length) Parse the Document to update the character styles given an initial start position.voidremove(DocumentFilter.FilterBypass fb, int offset, int length) Remove a string from the document, and then parse it if the parser has been set.voidreplace(DocumentFilter.FilterBypass fb, int offset, int length, String text, AttributeSet attrs) Replace a string in the document, and then parse it if the parser has been set.
- 
Field Details- 
TAB_REPLACEMENT- See Also:
 
- 
lexerThe root of the lexical parsing tree.
- 
styledDocument
- 
mlTextRunSetThe position tree of multi-line comments.
 
- 
- 
Constructor Details- 
StructuredSyntaxDocumentFilterCreates a new instance of StructuredSyntaxDocumentFilter- Parameters:
- document- the styled document to parse
 
 
- 
- 
Method Details- 
createLexerNodeCreate a new LexerNode for adding to root.- Returns:
- a new LexerNode
 
- 
getRootNodeGet the root node for lexing the document. Children can be added such that matching patterns can be further parsed if required.- Returns:
- the root lexing node.
 
- 
insertStringpublic void insertString(DocumentFilter.FilterBypass fb, int offset, String text, AttributeSet attrs) throws BadLocationException Insert a string into the document, and then parse it if the parser has been set.- Overrides:
- insertStringin class- DocumentFilter
- Parameters:
- fb-
- offset-
- text-
- attrs-
- Throws:
- BadLocationException
 
- 
parseDocumentParse the Document to update the character styles given an initial start position. Called by the filter after it has updated the text.- Parameters:
- offset-
- length-
- Throws:
- BadLocationException
 
- 
removepublic void remove(DocumentFilter.FilterBypass fb, int offset, int length) throws BadLocationException Remove a string from the document, and then parse it if the parser has been set.- Overrides:
- removein class- DocumentFilter
- Parameters:
- fb-
- offset-
- length-
- Throws:
- BadLocationException
 
- 
replacepublic void replace(DocumentFilter.FilterBypass fb, int offset, int length, String text, AttributeSet attrs) throws BadLocationException Replace a string in the document, and then parse it if the parser has been set.- Overrides:
- replacein class- DocumentFilter
- Parameters:
- fb-
- offset-
- length-
- text-
- attrs-
- Throws:
- BadLocationException
 
 
-