edu.rice.cs.drjava.model.definitions.indent
Class ActionStartStmtOfBracePlus

java.lang.Object
  extended by edu.rice.cs.drjava.model.definitions.indent.IndentRuleWithTrace
      extended by edu.rice.cs.drjava.model.definitions.indent.IndentRuleAction
          extended by edu.rice.cs.drjava.model.definitions.indent.ActionStartStmtOfBracePlus
All Implemented Interfaces:
IndentRule

public class ActionStartStmtOfBracePlus
extends IndentRuleAction

Indents the current line in the document to the indent level of the start of the brace enclosing the start of the current line, plus the given suffix.

Version:
$Id: ActionStartStmtOfBracePlus.java 4691 2008-12-02 23:33:27Z dlsmith $

Field Summary
 
Fields inherited from class edu.rice.cs.drjava.model.definitions.indent.IndentRuleWithTrace
NO, TERMINUS_RULE, YES
 
Constructor Summary
ActionStartStmtOfBracePlus(int suffix)
          Constructs a new rule with the given suffix string.
 
Method Summary
 boolean indentLine(AbstractDJDocument doc, Indenter.IndentReason reason)
          Properly indents the line that the caret is currently on.
 
Methods inherited from class edu.rice.cs.drjava.model.definitions.indent.IndentRuleWithTrace
_addToIndentTrace, getRuleName, indentLine, printLastIndentTrace, setRuleTraceEnabled, testIndentLine, testIndentLine
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ActionStartStmtOfBracePlus

public ActionStartStmtOfBracePlus(int suffix)
Constructs a new rule with the given suffix string.

Parameters:
suffix - String to append to indent level of brace
Method Detail

indentLine

public boolean indentLine(AbstractDJDocument doc,
                          Indenter.IndentReason reason)
Properly indents the line that the caret is currently on. Replaces all whitespace characters at the beginning of the line with the appropriate spacing or characters. Assumes read lock is already held.

Specified by:
indentLine in interface IndentRule
Overrides:
indentLine in class IndentRuleWithTrace
Parameters:
doc - AbstractDJDocument containing the line to be indented.
reason - The reason that the indentation is taking place
Returns:
true if the caller should update the current location itself, false if the indenter has already handled it