|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.rice.cs.drjava.model.definitions.reducedmodel.AbstractReducedModel
edu.rice.cs.drjava.model.definitions.reducedmodel.ReducedModelComment
public class ReducedModelComment
Keeps track of newlines, comment blocks, and single and double-quoted strings. This reduced sub-model is used for coloring purposes. Given the information contained here, the DefinitionsEditorKit can paint strings, comments, and regular code in different colors. DefinitionsEditorKit colors keywords by directly reading DefinitionsDocument, the "full-scale" model.
| Field Summary | |
|---|---|
(package private) TokenList.Iterator |
_walker
Can be used by other classes to walk through the list of comment chars |
| Fields inherited from class edu.rice.cs.drjava.model.definitions.reducedmodel.AbstractReducedModel |
|---|
_cursor, _tokens, PTR_CHAR |
| Fields inherited from interface edu.rice.cs.drjava.model.definitions.reducedmodel.ReducedModelStates |
|---|
FREE, INSIDE_BLOCK_COMMENT, INSIDE_DOUBLE_QUOTE, INSIDE_LINE_COMMENT, INSIDE_SINGLE_QUOTE, STUTTER |
| Constructor Summary | |
|---|---|
ReducedModelComment()
Constructor. |
|
| Method Summary | |
|---|---|
private void |
_checkPreviousInsertBackSlash()
Checks before point of insertion to make sure we don't need to combine backslash with another backslash (yes, they too can be escaped). |
private void |
_checkPreviousInsertCommentChar(String special)
Checks before the place of insert to make sure there are no preceding slashes with which the inserted slash must combine. |
private void |
_checkPreviousInsertSpecial(String special)
Checks before point of insertion to make sure we don't need to combine. |
private int |
_getDistToStart(TokenList.Iterator copyCursor)
Returns distance to previous newline (not including the newline itself). |
private String |
_getQuoteType(String quote)
Helper function for insertNewQuote. |
private void |
_insertNewEndOfLine()
|
private void |
_insertNewQuote(String quote)
Helper function for insertQuote. |
private void |
_updateBasedOnCurrentState()
USE RULES: Inserting between braces: This should be called from between the two characters of the broken double comment. |
void |
delete(int count)
Update the BraceReduction to reflect text deletion. |
(package private) int |
getDistToEnclosingBraceStart(int distToEnclosingBrace)
Computes the distance to the beginning of the line (except first) containing the brace enclosing the current location given the distnace to this brace. |
int |
getDistToNextNewline()
Returns the distance to the gap before the next newline (end of document if no newline) |
int |
getDistToStart()
Gets distance to the previous newline character (not including newline char). |
int |
getDistToStart(int relLoc)
Returns distance to previous newline where relLoc is the distance back from the cursor to start searching. |
ReducedModelState |
getStateAtCurrent()
Returns the state of the _cursor iterator. |
void |
insertChar(char ch)
Inserts a character into the reduced model. |
protected void |
insertGapBetweenMultiCharBrace(int length)
Inserts a gap between the characters in a multiple character brace. |
void |
insertNewline()
Inserts an end-of-line character. |
void |
insertQuote(String quote)
Inserts the specified quote character. |
private void |
insertSpecial(String special)
Inserts one of three special chars, (*),(/), or (\). |
boolean |
isOpenComment()
|
boolean |
isShadowed()
|
boolean |
isWeaklyShadowed()
|
void |
move(int count)
Updates the BraceReduction to reflect cursor movement. |
protected ReducedModelState |
moveWalkerGetState(int relLocation)
Returns the state at the relLocation, where relLocation is the location relative to the walker |
protected void |
resetWalkerLocationToCursor()
Resets the walker to the current position in document |
int |
walkerOffset()
|
| Methods inherited from class edu.rice.cs.drjava.model.definitions.reducedmodel.AbstractReducedModel |
|---|
_augmentCurrentGap, _augmentGapToLeft, _gapToLeft, _gapToRight, _insertGap, _insertNewGap, absOffset, absOffset, current, getBlockOffset, getLength, getState, makeCopyCursor, next, prev, setBlockOffset, simpleString |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
volatile TokenList.Iterator _walker
| Constructor Detail |
|---|
public ReducedModelComment()
| Method Detail |
|---|
public void insertChar(char ch)
AbstractReducedModel
insertChar in class AbstractReducedModelprivate void insertSpecial(String special)
private void _checkPreviousInsertSpecial(String special)
private void _checkPreviousInsertBackSlash()
private void _checkPreviousInsertCommentChar(String special)
public void insertNewline()
private void _insertNewEndOfLine()
public void insertQuote(String quote)
quote - the type of quote to insertprivate void _insertNewQuote(String quote)
quote - the quote to insertpublic ReducedModelState getStateAtCurrent()
public int walkerOffset()
private String _getQuoteType(String quote)
quote - the type of quote to insert
protected void insertGapBetweenMultiCharBrace(int length)
insertGapBetweenMultiCharBrace in class AbstractReducedModellength - the size of the Gap to be inserted in charactersprivate void _updateBasedOnCurrentState()
public void move(int count)
count - indicates the direction and magnitude of cursor movementpublic void delete(int count)
Update the BraceReduction to reflect text deletion.
Negative values delete text to the left of the cursor, positive values delete text to the right. Always move count spaces to make sure we can delete.
count - indicates the size and direction of text deletion.public boolean isShadowed()
public boolean isWeaklyShadowed()
public boolean isOpenComment()
protected ReducedModelState moveWalkerGetState(int relLocation)
moveWalkerGetState in class AbstractReducedModelrelLocation - distance from walker to get state at.protected void resetWalkerLocationToCursor()
resetWalkerLocationToCursor in class AbstractReducedModelpublic int getDistToStart()
private int _getDistToStart(TokenList.Iterator copyCursor)
int getDistToEnclosingBraceStart(int distToEnclosingBrace)
public int getDistToStart(int relLoc)
public int getDistToNextNewline()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||