Package icyllis.modernui.text

# Class Selection

java.lang.Object
icyllis.modernui.text.Selection

@ParametersAreNonnullByDefault public final class Selection extends Object
Utility class for manipulating cursors and selections in CharSequences. A cursor is a selection where the start and end are at the same offset.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final Object`
  `SELECTION_END`
  `static final Object`
  `SELECTION_START`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static boolean`
  `extendDown(Spannable text, Layout layout)`
  Move the selection end to the buffer offset physically below the current selection end.
  `static boolean`
  `extendLeft(Spannable text, Layout layout)`
  Move the selection end to the buffer offset physically to the left of the current selection end.
  `static boolean`
  `extendRight(Spannable text, Layout layout)`
  Move the selection end to the buffer offset physically to the right of the current selection end.
  `static void`
  `extendSelection(Spannable text, int index)`
  Move the selection edge to offset `index`.
  `static boolean`
  `extendToLeftEdge(Spannable text, Layout layout)`
  `static boolean`
  `extendToRightEdge(Spannable text, Layout layout)`
  `static boolean`
  `extendUp(Spannable text, Layout layout)`
  Move the selection end to the buffer offset physically above the current selection end.
  `static int`
  `getSelectionEnd(CharSequence text)`
  Return the offset of the selection edge or cursor, or -1 if there is no selection or cursor.
  `static int`
  `getSelectionStart(CharSequence text)`
  Return the offset of the selection anchor or cursor, or -1 if there is no selection or cursor.
  `static boolean`
  `moveDown(Spannable text, Layout layout)`
  Move the cursor to the buffer offset physically below the current offset, to the end of the buffer if it is on the bottom line but not at the end, or return false if the cursor is already at the end of the buffer.
  `static boolean`
  `moveLeft(Spannable text, Layout layout)`
  Move the cursor to the buffer offset physically to the left of the current offset, or return false if the cursor is already at the left edge of the line and there is not another line to move it to.
  `static boolean`
  `moveRight(Spannable text, Layout layout)`
  Move the cursor to the buffer offset physically to the right of the current offset, or return false if the cursor is already at at the right edge of the line and there is not another line to move it to.
  `static boolean`
  `moveToFollowing(Spannable text, WordIterator iter, boolean extendSelection)`
  `static boolean`
  `moveToLeftEdge(Spannable text, Layout layout)`
  `static boolean`
  `moveToPreceding(Spannable text, WordIterator iter, boolean extendSelection)`
  `static boolean`
  `moveToRightEdge(Spannable text, Layout layout)`
  `static boolean`
  `moveUp(Spannable text, Layout layout)`
  Move the cursor to the buffer offset physically above the current offset, to the beginning if it is on the top line but not at the start, or return false if the cursor is already on the top line.
  `static void`
  `removeSelection(Spannable text)`
  Remove the selection or cursor, if any, from the text.
  `static void`
  `selectAll(Spannable text)`
  Select the entire text.
  `static void`
  `setSelection(Spannable text, int index)`
  Move the cursor to offset `index`.
  `static void`
  `setSelection(Spannable text, int start, int stop)`
  Set the selection anchor to `start` and the selection edge to `stop`.

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

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

- ## Field Details

  - ### SELECTION_START

    public static final Object SELECTION_START

  - ### SELECTION_END

    public static final Object SELECTION_END

- ## Method Details

  - ### getSelectionStart

    public static int getSelectionStart(CharSequence text)
    Return the offset of the selection anchor or cursor, or -1 if there is no selection or cursor.

  - ### getSelectionEnd

    public static int getSelectionEnd(CharSequence text)
    Return the offset of the selection edge or cursor, or -1 if there is no selection or cursor.

  - ### setSelection

    public static void setSelection(Spannable text, int start, int stop)
    Set the selection anchor to `start` and the selection edge to `stop`.

  - ### setSelection

    public static void setSelection(Spannable text, int index)
    Move the cursor to offset `index`.

  - ### selectAll

    public static void selectAll(Spannable text)
    Select the entire text.

  - ### extendSelection

    public static void extendSelection(Spannable text, int index)
    Move the selection edge to offset `index`.

  - ### removeSelection

    public static void removeSelection(Spannable text)
    Remove the selection or cursor, if any, from the text.

  - ### moveUp

    public static boolean moveUp(Spannable text, Layout layout)
    Move the cursor to the buffer offset physically above the current offset, to the beginning if it is on the top line but not at the start, or return false if the cursor is already on the top line.

  - ### moveDown

    public static boolean moveDown(Spannable text, Layout layout)
    Move the cursor to the buffer offset physically below the current offset, to the end of the buffer if it is on the bottom line but not at the end, or return false if the cursor is already at the end of the buffer.

  - ### moveLeft

    public static boolean moveLeft(Spannable text, Layout layout)
    Move the cursor to the buffer offset physically to the left of the current offset, or return false if the cursor is already at the left edge of the line and there is not another line to move it to.

  - ### moveRight

    public static boolean moveRight(Spannable text, Layout layout)
    Move the cursor to the buffer offset physically to the right of the current offset, or return false if the cursor is already at at the right edge of the line and there is not another line to move it to.

  - ### extendUp

    public static boolean extendUp(Spannable text, Layout layout)
    Move the selection end to the buffer offset physically above the current selection end.

  - ### extendDown

    public static boolean extendDown(Spannable text, Layout layout)
    Move the selection end to the buffer offset physically below the current selection end.

  - ### extendLeft

    public static boolean extendLeft(Spannable text, Layout layout)
    Move the selection end to the buffer offset physically to the left of the current selection end.

  - ### extendRight

    public static boolean extendRight(Spannable text, Layout layout)
    Move the selection end to the buffer offset physically to the right of the current selection end.

  - ### extendToLeftEdge

    public static boolean extendToLeftEdge(Spannable text, Layout layout)

  - ### extendToRightEdge

    public static boolean extendToRightEdge(Spannable text, Layout layout)

  - ### moveToLeftEdge

    public static boolean moveToLeftEdge(Spannable text, Layout layout)

  - ### moveToRightEdge

    public static boolean moveToRightEdge(Spannable text, Layout layout)

  - ### moveToPreceding

    public static boolean moveToPreceding(Spannable text, WordIterator iter, boolean extendSelection)

  - ### moveToFollowing

    public static boolean moveToFollowing(Spannable text, WordIterator iter, boolean extendSelection)