Class AbstractTextEditor.LineStartAction

  • All Implemented Interfaces:
    IAction
    Enclosing class:
    AbstractTextEditor

    protected class AbstractTextEditor.LineStartAction
    extends TextNavigationAction
    This action implements smart home. Instead of going to the start of a line it does the following: - if smart home/end is enabled and the caret is after the line's first non-whitespace then the caret is moved directly before it - if the caret is before the line's first non-whitespace the caret is moved to the beginning of the line - if the caret is at the beginning of the line the caret is moved directly before the line's first non-whitespace character
    Since:
    2.1
    • Constructor Detail

      • LineStartAction

        public LineStartAction​(StyledText textWidget,
                               boolean doSelect)
        Creates a new line start action.
        Parameters:
        textWidget - the styled text widget
        doSelect - a boolean flag which tells if the text up to the beginning of the line should be selected
    • Method Detail

      • getLineStartPosition

        protected int getLineStartPosition​(IDocument document,
                                           String line,
                                           int length,
                                           int offset)
        Computes the offset of the line start position.
        Parameters:
        document - the document where to compute the line start position
        line - the line to determine the start position of
        length - the length of the line
        offset - the caret position in the document
        Returns:
        the offset of the line start
        Since:
        3.0