|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.fife.ui.rsyntaxtextarea.AbstractJFlexTokenMaker
org.fife.ui.rsyntaxtextarea.AbstractJFlexCTokenMaker
public abstract class AbstractJFlexCTokenMaker
Base class for JFlex-based token makers using C-style syntax. This class knows how to auto-indent after opening braces and parens.
| Field Summary | |
|---|---|
protected Token |
currentToken
Used in the creation of the linked list. |
protected Token |
firstToken
The first token in the returned linked list. |
protected Token |
previousToken
Used in the creation of the linked list. |
| Fields inherited from class org.fife.ui.rsyntaxtextarea.AbstractJFlexTokenMaker |
|---|
offsetShift, s, start |
| Constructor Summary | |
|---|---|
AbstractJFlexCTokenMaker()
|
|
| Method Summary | |
|---|---|
void |
addNullToken()
Adds a null token to the end of the current linked list of tokens. |
void |
addToken(char[] array,
int start,
int end,
int tokenType,
int startOffset)
Adds the token specified to the current linked list of tokens. |
void |
addToken(char[] array,
int start,
int end,
int tokenType,
int startOffset,
boolean hyperlink)
Adds the token specified to the current linked list of tokens. |
void |
addToken(Segment segment,
int start,
int end,
int tokenType,
int startOffset)
Adds the token specified to the current linked list of tokens. |
boolean |
getCurlyBracesDenoteCodeBlocks()
Returns true always as C-style languages use curly braces
to denote code blocks. |
int |
getLastTokenTypeOnLine(Segment text,
int initialTokenType)
Returns the last token on this line's type if the token is "unfinished", or Token.NULL if it was finished. |
String[] |
getLineCommentStartAndEnd()
Returns the text to place at the beginning and end of a line to "comment" it in a this programming language. |
boolean |
getMarkOccurrencesOfTokenType(int type)
Returns whether tokens of the specified type should have "mark occurrences" enabled for the current programming language. |
boolean |
getShouldIndentNextLineAfter(Token t)
The default implementation returns false always. |
protected void |
resetTokenList()
Deletes the linked list of tokens so we can begin anew. |
void |
setWhitespaceVisible(boolean visible,
RSyntaxTextArea textArea)
Sets whether tokens are generated that "show" whitespace. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.fife.ui.rsyntaxtextarea.TokenMaker |
|---|
getTokenList |
| Field Detail |
|---|
protected Token firstToken
protected Token currentToken
protected Token previousToken
| Constructor Detail |
|---|
public AbstractJFlexCTokenMaker()
| Method Detail |
|---|
public boolean getCurlyBracesDenoteCodeBlocks()
true always as C-style languages use curly braces
to denote code blocks.
getCurlyBracesDenoteCodeBlocks in interface TokenMakertrue always.public boolean getShouldIndentNextLineAfter(Token t)
false always. Languages
that wish to better support auto-indentation can override this method.
getShouldIndentNextLineAfter in interface TokenMakert - The token the previous line ends with.
public void addNullToken()
addNullToken in interface TokenMaker
public void addToken(Segment segment,
int start,
int end,
int tokenType,
int startOffset)
segment - Segment to get text from.start - Start offset in segment of token.end - End offset in segment of token.tokenType - The token's type.startOffset - The offset in the document at which this token
occurs.
public void addToken(char[] array,
int start,
int end,
int tokenType,
int startOffset)
addToken in interface TokenMakerarray - The character array.start - The starting offset in the array.end - The ending offset in the array.tokenType - The token's type.startOffset - The offset in the document at which this token
occurs.
public void addToken(char[] array,
int start,
int end,
int tokenType,
int startOffset,
boolean hyperlink)
array - The character array.start - The starting offset in the array.end - The ending offset in the array.tokenType - The token's type.startOffset - The offset in the document at which this token
occurs.hyperlink - Whether this token is a hyperlink.
public int getLastTokenTypeOnLine(Segment text,
int initialTokenType)
Token.NULL if it was finished. For example, if C-style
syntax highlighting is being implemented, and text
contained a line of code that contained the beginning of a comment but
no end-comment marker ("*\/"), then this method would return
Token.COMMENT_MULTILINE for that line. This is useful
for doing syntax highlighting.
getLastTokenTypeOnLine in interface TokenMakertext - The line of tokens to examine.initialTokenType - The token type to start with (i.e., the value
of getLastTokenTypeOnLine for the line before
text).
Token.NULL
if the line was completed.public String[] getLineCommentStartAndEnd()
getLineCommentStartAndEnd in interface TokenMakernull value for either means there
is no string to add for that part. A value of
null for the array means this language
does not support commenting/uncommenting lines.public boolean getMarkOccurrencesOfTokenType(int type)
Token.IDENTIFIER.
Subclasses can override this method to support other token types, such
as Token.VARIABLE.
getMarkOccurrencesOfTokenType in interface TokenMakertype - The token type.
protected void resetTokenList()
getLastTokenTypeOnLine or
getTokenList.
public void setWhitespaceVisible(boolean visible,
RSyntaxTextArea textArea)
setWhitespaceVisible in interface TokenMakervisible - Whether whitespace should be visible.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||