org.joone.edit.jedit.tokenmarker
Class TokenMarker
- java.lang.Object
-
- org.joone.edit.jedit.tokenmarker.TokenMarker
-
- Direct Known Subclasses:
- CTokenMarker, HTMLTokenMarker
public abstract class TokenMarker extends java.lang.ObjectA token marker that splits lines of text into tokens. Each token carries a length field and an indentification tag that can be mapped to a color for painting that token.For performance reasons, the linked list of tokens is reused after each line is tokenized. Therefore, the return value of
markTokensshould only be used for immediate painting. Notably, it cannot be cached.- See Also:
org.syntax.jedit.Token
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description classTokenMarker.LineInfoInner class for storing information about tokenized lines.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voiddeleteLines(int index, int lines)Informs the token marker that line have been deleted from the document.intgetLineCount()Returns the number of lines in this token marker.voidinsertLines(int index, int lines)Informs the token marker that lines have been inserted into the document.booleanisNextLineRequested()Returns true if the next line should be repainted.TokenmarkTokens(javax.swing.text.Segment line, int lineIndex)A wrapper for the lower-levelmarkTokensImplmethod that is called to split a line up into tokens.booleansupportsMultilineTokens()Returns if the token marker supports tokens that span multiple lines.
-
-
-
Method Detail
-
markTokens
public Token markTokens(javax.swing.text.Segment line, int lineIndex)
A wrapper for the lower-levelmarkTokensImplmethod that is called to split a line up into tokens.- Parameters:
line- The linelineIndex- The line number
-
supportsMultilineTokens
public boolean supportsMultilineTokens()
Returns if the token marker supports tokens that span multiple lines. If this is true, the object using this token marker is required to pass all lines in the document to themarkTokens()method (in turn).The default implementation returns true; it should be overridden to return false on simpler token markers for increased speed.
-
insertLines
public void insertLines(int index, int lines)Informs the token marker that lines have been inserted into the document. This inserts a gap in thelineInfoarray.- Parameters:
index- The first line numberlines- The number of lines
-
deleteLines
public void deleteLines(int index, int lines)Informs the token marker that line have been deleted from the document. This removes the lines in question from thelineInfoarray.- Parameters:
index- The first line numberlines- The number of lines
-
getLineCount
public int getLineCount()
Returns the number of lines in this token marker.
-
isNextLineRequested
public boolean isNextLineRequested()
Returns true if the next line should be repainted. This will return true after a line has been tokenized that starts a multiline token that continues onto the next line.
-
-
DataMelt 3.0 © DataMelt by jWork.ORG