Interface Text.MoveCursorCallback

All Superinterfaces:
FunctionPointer
Enclosing class:
Text
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public static interface Text.MoveCursorCallback extends FunctionPointer

Functional interface declaration of the MoveCursorCallback callback.

See Also:
  • Method Details

    • run

      void run(MovementStep step, int count, boolean extend)

      Emitted when the user initiates a cursor movement.

      If the cursor is not visible in self, this signal causes the viewport to be moved instead.

      This is a keybinding signal.

      Applications should not connect to it, but may emit it with GObjects#signalEmitByName if they need to control the cursor programmatically.

      The default bindings for this signal come in two variants, the variant with the Shift modifier extends the selection, the variant without it does not. There are too many key combinations to list them all here.

      • , , , move by individual characters/lines
      • Ctrl+, etc. move by words/paragraphs
      • Home and End move to the ends of the buffer
    • upcall

      default void upcall(MemorySegment sourceText, int step, int count, int extend)
      The upcall method is called from native code. The parameters are marshaled and run(MovementStep, int, boolean) is executed.
    • toCallback

      default MemorySegment toCallback(Arena arena)
      Creates a native function pointer to the upcall(MemorySegment, int, int, int) method.
      Specified by:
      toCallback in interface FunctionPointer
      Parameters:
      arena - the arena in which the function pointer is allocated
      Returns:
      the native function pointer