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

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.ActionBracePlus
All Implemented Interfaces:
IndentRule

public class ActionBracePlus
extends IndentRuleAction

Aligns indentation of the current line to the character that opened the enclosing block or expression list. Optional additional whitespaces can be passed through the constructor.

Version:
$Id: ActionBracePlus.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
ActionBracePlus(int ct)
           
 
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

ActionBracePlus

public ActionBracePlus(int ct)
Parameters:
ct - The additional whitespaces to be inserted.
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.

Preconditions: must be inside a brace.

Specified by:
indentLine in interface IndentRule
Overrides:
indentLine in class IndentRuleWithTrace
Parameters:
doc - AbstractDJDocument containing the line to be indented.
reason - The reason that indentation was initiated, specified in Indenter
Returns:
true if the caller should update the current location, false if the indenter has already done this.