Class Actionable

All Implemented Interfaces:
PointerInterface

public class Actionable extends Interface
The `GtkActionable` interface provides a convenient way of asscociating
widgets with actions.

It primarily consists of two properties: [property@Gtk.Actionable:action-name]
and [property@Gtk.Actionable:action-target]. There are also some convenience
APIs for setting these properties.

The action will be looked up in action groups that are found among
the widgets ancestors. Most commonly, these will be the actions with
the “win.” or “app.” prefix that are associated with the
`GtkApplicationWindow` or `GtkApplication`, but other action groups that
are added with [method@Gtk.Widget.insert_action_group] will be consulted
as well.

https://docs.gtk.org/gtk4/iface.Actionable.html

  • Constructor Details

  • Method Details

    • getClassHandler

      public static ClassHandler getClassHandler()
    • getActionName

      public Str getActionName()
      Gets the action name for @actionable.
      Returns:
      the action name
    • getActionTargetValue

      public Variant getActionTargetValue()
      Gets the current target value of @actionable.
      Returns:
      the current target value
    • setActionName

      public void setActionName(@Nullable Str action_name)
      Specifies the name of the action with which this widget should be
      associated.

      If @action_name is %NULL then the widget will be unassociated from
      any previous action.

      Usually this function is used when the widget is located (or will be
      located) within the hierarchy of a `GtkApplicationWindow`.

      Names are of the form “win.save” or “app.quit” for actions on the
      containing [class@ApplicationWindow] or its associated [class@Application],
      respectively. This is the same form used for actions in the [class@Gio.Menu]
      associated with the window.
      Parameters:
      action_name - an action name
    • setActionName

      public void setActionName(String action_name)
      Specifies the name of the action with which this widget should be
      associated.

      If @action_name is %NULL then the widget will be unassociated from
      any previous action.

      Usually this function is used when the widget is located (or will be
      located) within the hierarchy of a `GtkApplicationWindow`.

      Names are of the form “win.save” or “app.quit” for actions on the
      containing [class@ApplicationWindow] or its associated [class@Application],
      respectively. This is the same form used for actions in the [class@Gio.Menu]
      associated with the window.
      Parameters:
      action_name - an action name
    • setActionTarget

      public void setActionTarget(@Nonnull Str format_string, Object... _elipse)
      Sets the target of an actionable widget.

      This is a convenience function that calls [ctor@GLib.Variant.new] for
      @format_string and uses the result to call
      [method@Gtk.Actionable.set_action_target_value].

      If you are setting a string-valued target and want to set
      the action name at the same time, you can use
      [method@Gtk.Actionable.set_detailed_action_name].
      Parameters:
      format_string - a [struct@GLib.Variant] format string
      _elipse - arguments appropriate for @format_string
    • setActionTarget

      public void setActionTarget(String format_string, Object... _elipse)
      Sets the target of an actionable widget.

      This is a convenience function that calls [ctor@GLib.Variant.new] for
      @format_string and uses the result to call
      [method@Gtk.Actionable.set_action_target_value].

      If you are setting a string-valued target and want to set
      the action name at the same time, you can use
      [method@Gtk.Actionable.set_detailed_action_name].
      Parameters:
      format_string - a [struct@GLib.Variant] format string
      _elipse - arguments appropriate for @format_string
    • setActionTargetValue

      public void setActionTargetValue(@Nullable Variant target_value)
      Sets the target value of an actionable widget.

      If @target_value is %NULL then the target value is unset.

      The target value has two purposes. First, it is used as the parameter
      to activation of the action associated with the `GtkActionable` widget.
      Second, it is used to determine if the widget should be rendered as
      “active” — the widget is active if the state is equal to the given target.

      Consider the example of associating a set of buttons with a [iface@Gio.Action]
      with string state in a typical “radio button” situation. Each button
      will be associated with the same action, but with a different target
      value for that action. Clicking on a particular button will activate
      the action with the target of that button, which will typically cause
      the action’s state to change to that value. Since the action’s state
      is now equal to the target value of the button, the button will now
      be rendered as active (and the other buttons, with different targets,
      rendered inactive).
      Parameters:
      target_value - a [struct@GLib.Variant] to set as the target value
    • setDetailedActionName

      public void setDetailedActionName(@Nonnull Str detailed_action_name)
      Sets the action-name and associated string target value of an
      actionable widget.

      @detailed_action_name is a string in the format accepted by
      [func@Gio.Action.parse_detailed_name].
      Parameters:
      detailed_action_name - the detailed action name
    • setDetailedActionName

      public void setDetailedActionName(String detailed_action_name)
      Sets the action-name and associated string target value of an
      actionable widget.

      @detailed_action_name is a string in the format accepted by
      [func@Gio.Action.parse_detailed_name].
      Parameters:
      detailed_action_name - the detailed action name
    • getTypeID

      public static long getTypeID()
    • getParentTypeID

      public static long getParentTypeID()
    • getTypeSize

      public static TypeSystem.TypeSize getTypeSize()
    • getParentTypeSize

      public static TypeSystem.TypeSize getParentTypeSize()
    • getInstanceSize

      public static int getInstanceSize()