Interface SimpleAction.ActivateCallback

All Superinterfaces:
FunctionPointer
Enclosing class:
SimpleAction
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 SimpleAction.ActivateCallback extends FunctionPointer

Functional interface declaration of the ActivateCallback callback.

See Also:
  • Method Details

    • run

      void run(@Nullable Variant parameter)

      Indicates that the action was just activated.

      parameter will always be of the expected type, i.e. the parameter type specified when the action was created. If an incorrect type is given when activating the action, this signal is not emitted.

      Since GLib 2.40, if no handler is connected to this signal then the default behaviour for boolean-stated actions with a null parameter type is to toggle them via the GSimpleAction::change-state signal. For stateful actions where the state type is equal to the parameter type, the default is to forward them directly to GSimpleAction::change-state. This should allow almost all users of GSimpleAction to connect only one handler or the other.

      Since:
      2.28
    • upcall

      default void upcall(MemorySegment sourceSimpleAction, MemorySegment parameter)
      The upcall method is called from native code. The parameters are marshaled and run(Variant) is executed.
    • toCallback

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