GSimpleAction.def 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. DEFINITION MODULE FOR "C" GSimpleAction ;
  2. (*
  3. m2-GTK4 - GSimpleAction: the simplest GAction implementation.
  4. Mapped onto <gio/gsimpleaction.h>.
  5. A parameterless action is created with a NIL parameter type:
  6. action := g_simple_action_new("quit", NIL);
  7. A stateful action carries an initial GVariant state:
  8. action := g_simple_action_new_stateful("bold", NIL,
  9. g_variant_new_boolean(0));
  10. Signals:
  11. "activate" void(GSimpleAction*, GVariant *parameter, gpointer)
  12. "change-state" void(GSimpleAction*, GVariant *value, gpointer)
  13. Both callbacks have the same (action, variant, data) shape.
  14. *)
  15. FROM SYSTEM IMPORT ADDRESS;
  16. EXPORT UNQUALIFIED
  17. GSimpleAction,
  18. g_simple_action_new, g_simple_action_new_stateful,
  19. g_simple_action_set_enabled, g_simple_action_set_state;
  20. TYPE
  21. GSimpleAction = ADDRESS;
  22. (* GSimpleAction *g_simple_action_new(const gchar *name,
  23. const GVariantType *parameter_type) *)
  24. PROCEDURE g_simple_action_new (name: ARRAY OF CHAR;
  25. parameter_type: ADDRESS) : GSimpleAction;
  26. (* GSimpleAction *g_simple_action_new_stateful(const gchar *name,
  27. const GVariantType *parameter_type,
  28. GVariant *state) *)
  29. PROCEDURE g_simple_action_new_stateful (name: ARRAY OF CHAR;
  30. parameter_type: ADDRESS;
  31. state: ADDRESS) : GSimpleAction;
  32. (* void g_simple_action_set_enabled(GSimpleAction *simple, gboolean enabled) *)
  33. PROCEDURE g_simple_action_set_enabled (simple: GSimpleAction;
  34. enabled: INTEGER);
  35. (* void g_simple_action_set_state(GSimpleAction *simple, GVariant *value) *)
  36. PROCEDURE g_simple_action_set_state (simple: GSimpleAction; value: ADDRESS);
  37. END GSimpleAction.