Package org.fife.ui.rsyntaxtextarea
Class RSyntaxTextAreaEditorKit.InsertBreakAction
- java.lang.Object
-
- javax.swing.AbstractAction
-
- javax.swing.text.TextAction
-
- org.fife.ui.rtextarea.RecordableTextAction
-
- org.fife.ui.rtextarea.RTextAreaEditorKit.InsertBreakAction
-
- org.fife.ui.rsyntaxtextarea.RSyntaxTextAreaEditorKit.InsertBreakAction
-
- All Implemented Interfaces:
java.awt.event.ActionListener
,java.io.Serializable
,java.lang.Cloneable
,java.util.EventListener
,javax.swing.Action
- Direct Known Subclasses:
AbstractJFlexCTokenMaker.CStyleInsertBreakAction
- Enclosing class:
- RSyntaxTextAreaEditorKit
public static class RSyntaxTextAreaEditorKit.InsertBreakAction extends RTextAreaEditorKit.InsertBreakAction
Action for when the user presses the Enter key. This is here so we can be smart and "auto-indent" for programming languages.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private static long
serialVersionUID
-
Constructor Summary
Constructors Constructor Description InsertBreakAction()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
actionPerformedImpl(java.awt.event.ActionEvent e, RTextArea textArea)
The actual meat of the action.private static int
atEndOfLine(int pos, java.lang.String s, int sLen)
private static int
getOpenBraceCount(RSyntaxDocument doc, int languageIndex)
protected void
handleInsertBreak(RSyntaxTextArea textArea, boolean noSelection)
Actually inserts the newline into the document, and auto-indents if appropriate.private void
handleInsertBreakWithoutSelection(RSyntaxTextArea textArea)
private static boolean
isAllWhitespace(java.lang.String str, int from, int to)
private void
possiblyCloseCurlyBrace(RSyntaxTextArea textArea, java.lang.String leadingWS)
-
Methods inherited from class org.fife.ui.rtextarea.RTextAreaEditorKit.InsertBreakAction
getMacroID, isEnabled
-
Methods inherited from class org.fife.ui.rtextarea.RecordableTextAction
actionPerformed, getAccelerator, getDescription, getIcon, getMnemonic, getName, getShortDescription, isRecordable, setAccelerator, setMnemonic, setMnemonic, setName, setProperties, setRecordable, setShortDescription
-
Methods inherited from class javax.swing.text.TextAction
augmentList, getFocusedComponent, getTextComponent
-
Methods inherited from class javax.swing.AbstractAction
addPropertyChangeListener, clone, firePropertyChange, getKeys, getPropertyChangeListeners, getValue, putValue, removePropertyChangeListener, setEnabled
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
-
Method Detail
-
actionPerformedImpl
public void actionPerformedImpl(java.awt.event.ActionEvent e, RTextArea textArea)
Description copied from class:RecordableTextAction
The actual meat of the action. If you wish to subclass this action and modify its behavior, this is the method to override.- Overrides:
actionPerformedImpl
in classRTextAreaEditorKit.InsertBreakAction
- Parameters:
e
- The action being performed.textArea
- The text area "receiving" the action.- See Also:
RecordableTextAction.actionPerformed(java.awt.event.ActionEvent)
-
atEndOfLine
private static int atEndOfLine(int pos, java.lang.String s, int sLen)
- Returns:
- The first location in the string past
pos
that is NOT a whitespace char, or-1
if only whitespace chars followpos
(or it is the end position in the string).
-
getOpenBraceCount
private static int getOpenBraceCount(RSyntaxDocument doc, int languageIndex)
-
handleInsertBreak
protected void handleInsertBreak(RSyntaxTextArea textArea, boolean noSelection)
Actually inserts the newline into the document, and auto-indents if appropriate. This method can be called by token makers who implement a custom action for inserting newlines.- Parameters:
textArea
- The text area to examine.noSelection
- Whether there is no selection.
-
handleInsertBreakWithoutSelection
private void handleInsertBreakWithoutSelection(RSyntaxTextArea textArea) throws javax.swing.text.BadLocationException
- Throws:
javax.swing.text.BadLocationException
-
isAllWhitespace
private static boolean isAllWhitespace(java.lang.String str, int from, int to)
-
possiblyCloseCurlyBrace
private void possiblyCloseCurlyBrace(RSyntaxTextArea textArea, java.lang.String leadingWS)
-
-