Package org.fife.ui.rsyntaxtextarea

## Class RSyntaxTextAreaEditorKit

- java.lang.Object
- - javax.swing.text.EditorKit
  - - javax.swing.text.DefaultEditorKit
    - - org.fife.ui.rtextarea.RTextAreaEditorKit
      - - org.fife.ui.rsyntaxtextarea.RSyntaxTextAreaEditorKit

- All Implemented Interfaces:
    `Serializable`, `Cloneable`

      public class RSyntaxTextAreaEditorKit
      extends RTextAreaEditorKit

  An extension of `RTextAreaEditorKit` that adds functionality for programming-specific stuff. There are currently subclasses to handle:
  - Toggling code folds.
  - Aligning "closing" curly braces with their matches, if the current programming language uses curly braces to identify code blocks.
  - Copying the current selection as RTF.
  - Block indentation (increasing the indent of one or multiple lines)
  - Block un-indentation (decreasing the indent of one or multiple lines)
  - Inserting a "code template" when a configurable key (e.g. a space) is pressed
  - Decreasing the point size of all fonts in the text area
  - Increasing the point size of all fonts in the text area
  - Moving the caret to the "matching bracket" of the one at the current caret position
  - Toggling whether the currently selected lines are commented out.
  - Better selection of "words" on mouse double-clicks for programming languages.
  - Better keyboard navigation via Ctrl+arrow keys for programming languages.
  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `protected static class` | `RSyntaxTextAreaEditorKit.BeginWordAction` | Positions the caret at the beginning of the word.
    `static class` | `RSyntaxTextAreaEditorKit.ChangeFoldStateAction` | Expands or collapses the nearest fold.
    `static class` | `RSyntaxTextAreaEditorKit.CloseCurlyBraceAction` | Action that (optionally) aligns a closing curly brace with the line containing its matching opening curly brace.
    `static class` | `RSyntaxTextAreaEditorKit.CloseMarkupTagAction` | (Optionally) completes a closing markup tag.
    `static class` | `RSyntaxTextAreaEditorKit.CollapseAllCommentFoldsAction` | Collapses all comment folds.
    `static class` | `RSyntaxTextAreaEditorKit.CollapseAllFoldsAction` | Collapses all folds.
    `static class` | `RSyntaxTextAreaEditorKit.CopyAsRtfAction` | Action for copying text as RTF.
    `static class` | `RSyntaxTextAreaEditorKit.DecreaseFontSizeAction` | Action for decreasing the font size of all fonts in the text area.
    `static class` | `RSyntaxTextAreaEditorKit.DecreaseIndentAction` | Action for when un-indenting lines (either the current line if there is selection, or all selected lines if there is one).
    `static class` | `RSyntaxTextAreaEditorKit.DeletePrevWordAction` | Deletes the previous word, but differentiates symbols from "words" to match the behavior of code editors.
    `static class` | `RSyntaxTextAreaEditorKit.DumbCompleteWordAction` | Overridden to use the programming language RSTA is displaying when computing words to complete.
    `protected static class` | `RSyntaxTextAreaEditorKit.EndWordAction` | Positions the caret at the end of the word.
    `static class` | `RSyntaxTextAreaEditorKit.ExpandAllFoldsAction` | Expands all folds.
    `static class` | `RSyntaxTextAreaEditorKit.GoToMatchingBracketAction` | Action for moving the caret to the "matching bracket" of the bracket at the caret position (either before or after).
    `static class` | `RSyntaxTextAreaEditorKit.IncreaseFontSizeAction` | Action for increasing the font size of all fonts in the text area.
    `static class` | `RSyntaxTextAreaEditorKit.InsertBreakAction` | Action for when the user presses the Enter key.
    `static class` | `RSyntaxTextAreaEditorKit.InsertTabAction` | Action for inserting tabs.
    `static class` | `RSyntaxTextAreaEditorKit.NextWordAction` | Action to move the selection and/or caret.
    `static class` | `RSyntaxTextAreaEditorKit.PossiblyInsertTemplateAction` | Action for when the user tries to insert a template (that is, they've typed a template ID and pressed the trigger character (a space) in an attempt to do the substitution).
    `static class` | `RSyntaxTextAreaEditorKit.PreviousWordAction` | Action to move the selection and/or caret.
    `static class` | `RSyntaxTextAreaEditorKit.SelectWordAction` | Selects the word around the caret.
    `static class` | `RSyntaxTextAreaEditorKit.ToggleCommentAction` | Action that toggles whether the currently selected lines are commented.
    `static class` | `RSyntaxTextAreaEditorKit.ToggleCurrentFoldAction` | Toggles the fold at the current caret position or line.

    - ### Nested classes/interfaces inherited from class org.fife.ui.rtextarea.RTextAreaEditorKit

      `RTextAreaEditorKit.BeepAction, RTextAreaEditorKit.BeginAction, RTextAreaEditorKit.BeginLineAction, RTextAreaEditorKit.BeginRecordingMacroAction, RTextAreaEditorKit.ClipboardHistoryAction, RTextAreaEditorKit.CopyAction, RTextAreaEditorKit.CutAction, RTextAreaEditorKit.DefaultKeyTypedAction, RTextAreaEditorKit.DeleteLineAction, RTextAreaEditorKit.DeleteNextCharAction, RTextAreaEditorKit.DeletePrevCharAction, RTextAreaEditorKit.DeleteRestOfLineAction, RTextAreaEditorKit.EndAction, RTextAreaEditorKit.EndLineAction, RTextAreaEditorKit.EndRecordingMacroAction, RTextAreaEditorKit.InsertContentAction, RTextAreaEditorKit.InvertSelectionCaseAction, RTextAreaEditorKit.JoinLinesAction, RTextAreaEditorKit.LineMoveAction, RTextAreaEditorKit.LowerSelectionCaseAction, RTextAreaEditorKit.NextBookmarkAction, RTextAreaEditorKit.NextOccurrenceAction, RTextAreaEditorKit.NextVisualPositionAction, RTextAreaEditorKit.PasteAction, RTextAreaEditorKit.PlaybackLastMacroAction, RTextAreaEditorKit.PreviousOccurrenceAction, RTextAreaEditorKit.RedoAction, RTextAreaEditorKit.ScrollAction, RTextAreaEditorKit.SelectAllAction, RTextAreaEditorKit.SelectLineAction, RTextAreaEditorKit.SetReadOnlyAction, RTextAreaEditorKit.SetWritableAction, RTextAreaEditorKit.TimeDateAction, RTextAreaEditorKit.ToggleBookmarkAction, RTextAreaEditorKit.ToggleTextModeAction, RTextAreaEditorKit.UndoAction, RTextAreaEditorKit.UnselectAction, RTextAreaEditorKit.UpperSelectionCaseAction, RTextAreaEditorKit.VerticalPageAction`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static String` | `rstaCloseCurlyBraceAction` |
    `static String` | `rstaCloseMarkupTagAction` |
    `static String` | `rstaCollapseAllCommentFoldsAction` |
    `static String` | `rstaCollapseAllFoldsAction` |
    `static String` | `rstaCollapseFoldAction` |
    `static String` | `rstaCopyAsRtfAction` |
    `static String` | `rstaDecreaseIndentAction` |
    `static String` | `rstaExpandAllFoldsAction` |
    `static String` | `rstaExpandFoldAction` |
    `static String` | `rstaGoToMatchingBracketAction` |
    `static String` | `rstaPossiblyInsertTemplateAction` |
    `static String` | `rstaToggleCommentAction` |
    `static String` | `rstaToggleCurrentFoldAction` |

    - ### Fields inherited from class org.fife.ui.rtextarea.RTextAreaEditorKit

      `clipboardHistoryAction, rtaBeginRecordingMacroAction, rtaDecreaseFontSizeAction, rtaDeleteLineAction, rtaDeletePrevWordAction, rtaDeleteRestOfLineAction, rtaDumbCompleteWordAction, rtaEndRecordingMacroAction, rtaIncreaseFontSizeAction, rtaInvertSelectionCaseAction, rtaJoinLinesAction, rtaLineDownAction, rtaLineUpAction, rtaLowerSelectionCaseAction, rtaNextBookmarkAction, rtaNextOccurrenceAction, rtaPlaybackLastMacroAction, rtaPrevBookmarkAction, rtaPrevOccurrenceAction, rtaRedoAction, rtaScrollDownAction, rtaScrollUpAction, rtaSelectionPageDownAction, rtaSelectionPageLeftAction, rtaSelectionPageRightAction, rtaSelectionPageUpAction, rtaTimeDateAction, rtaToggleBookmarkAction, rtaToggleTextModeAction, rtaUndoAction, rtaUnselectAction, rtaUpperSelectionCaseAction`

    - ### Fields inherited from class javax.swing.text.DefaultEditorKit

      `backwardAction, beepAction, beginAction, beginLineAction, beginParagraphAction, beginWordAction, copyAction, cutAction, defaultKeyTypedAction, deleteNextCharAction, deleteNextWordAction, deletePrevCharAction, deletePrevWordAction, downAction, endAction, endLineAction, EndOfLineStringProperty, endParagraphAction, endWordAction, forwardAction, insertBreakAction, insertContentAction, insertTabAction, nextWordAction, pageDownAction, pageUpAction, pasteAction, previousWordAction, readOnlyAction, selectAllAction, selectionBackwardAction, selectionBeginAction, selectionBeginLineAction, selectionBeginParagraphAction, selectionBeginWordAction, selectionDownAction, selectionEndAction, selectionEndLineAction, selectionEndParagraphAction, selectionEndWordAction, selectionForwardAction, selectionNextWordAction, selectionPreviousWordAction, selectionUpAction, selectLineAction, selectParagraphAction, selectWordAction, upAction, writableAction`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `RSyntaxTextAreaEditorKit()` | Constructor.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Document` | `createDefaultDocument()` | Returns the default document used by `RSyntaxTextArea`s.
    `IconRowHeader` | `createIconRowHeader​(RTextArea textArea)` | Overridden to return a row header that is aware of folding.
    `Action[]` | `getActions()` | Fetches the set of commands that can be used on a text component that is using a model and view produced by this kit.
    `static String` | `getString​(String key)` | Returns localized text for an action.

    - ### Methods inherited from class org.fife.ui.rtextarea.RTextAreaEditorKit

      `createLineNumberList, read`

    - ### Methods inherited from class javax.swing.text.DefaultEditorKit

      `createCaret, getContentType, getViewFactory, read, write, write`

    - ### Methods inherited from class javax.swing.text.EditorKit

      `clone, deinstall, install`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### rstaCloseCurlyBraceAction

          public static final String rstaCloseCurlyBraceAction

      See Also:
        Constant Field Values

    - #### rstaCloseMarkupTagAction

          public static final String rstaCloseMarkupTagAction

      See Also:
        Constant Field Values

    - #### rstaCollapseAllFoldsAction

          public static final String rstaCollapseAllFoldsAction

      See Also:
        Constant Field Values

    - #### rstaCollapseAllCommentFoldsAction

          public static final String rstaCollapseAllCommentFoldsAction

      See Also:
        Constant Field Values

    - #### rstaCollapseFoldAction

          public static final String rstaCollapseFoldAction

      See Also:
        Constant Field Values

    - #### rstaCopyAsRtfAction

          public static final String rstaCopyAsRtfAction

      See Also:
        Constant Field Values

    - #### rstaDecreaseIndentAction

          public static final String rstaDecreaseIndentAction

      See Also:
        Constant Field Values

    - #### rstaExpandAllFoldsAction

          public static final String rstaExpandAllFoldsAction

      See Also:
        Constant Field Values

    - #### rstaExpandFoldAction

          public static final String rstaExpandFoldAction

      See Also:
        Constant Field Values

    - #### rstaGoToMatchingBracketAction

          public static final String rstaGoToMatchingBracketAction

      See Also:
        Constant Field Values

    - #### rstaPossiblyInsertTemplateAction

          public static final String rstaPossiblyInsertTemplateAction

      See Also:
        Constant Field Values

    - #### rstaToggleCommentAction

          public static final String rstaToggleCommentAction

      See Also:
        Constant Field Values

    - #### rstaToggleCurrentFoldAction

          public static final String rstaToggleCurrentFoldAction

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### RSyntaxTextAreaEditorKit

          public RSyntaxTextAreaEditorKit()

      Constructor.

  - ### Method Detail

    - #### createDefaultDocument

          public Document createDefaultDocument()

      Returns the default document used by `RSyntaxTextArea`s.
      Overrides:
        `createDefaultDocument` in class `DefaultEditorKit`
      Returns:
        The document.

    - #### createIconRowHeader

          public IconRowHeader createIconRowHeader​(RTextArea textArea)

      Overridden to return a row header that is aware of folding.
      Overrides:
        `createIconRowHeader` in class `RTextAreaEditorKit`
      Parameters:
        `textArea` - The text area.
      Returns:
        The icon row header.

    - #### getActions

          public Action[] getActions()

      Fetches the set of commands that can be used on a text component that is using a model and view produced by this kit.
      Overrides:
        `getActions` in class `RTextAreaEditorKit`
      Returns:
        the command list

    - #### getString

          public static String getString​(String key)

      Returns localized text for an action. There's definitely a better place for this functionality.
      Parameters:
        `key` - The key into the action resource bundle.
      Returns:
        The localized text.