Interface

GioAction

Description [src]

interface Gio.Action : GObject.Object

GAction represents a single named action.

The main interface to an action is that it can be activated with g_action_activate(). This results in the ‘activate’ signal being emitted. An activation has a GVariant parameter (which may be NULL). The correct type for the parameter is determined by a static parameter type (which is given at construction time).

An action may optionally have a state, in which case the state may be set with g_action_change_state(). This call takes a GVariant. The correct type for the state is determined by a static state type (which is given at construction time).

The state may have a hint associated with it, specifying its valid range.

GAction is merely the interface to the concept of an action, as described above. Various implementations of actions exist, including GSimpleAction.

In all cases, the implementing class is responsible for storing the name of the action, the parameter type, the enabled state, the optional state type and the state and emitting the appropriate signals when these change. The implementor is responsible for filtering calls to g_action_activate() and g_action_change_state() for type safety and for the state being enabled.

Probably the only useful thing to do with a GAction is to put it inside of a GSimpleActionGroup.

Prerequisite

In order to implement Action, your type must inherit from GObject.

Functions

g_action_name_is_valid

Checks if action_name is valid.

g_action_parse_detailed_name

Parses a detailed action name into its separate name and target components.

g_action_print_detailed_name

Formats a detailed action name from action_name and target_value.

Instance methods

g_action_activate

Activates the action.

Available since: 2.28

g_action_change_state

Request for the state of action to be changed to value.

Available since: 2.30

g_action_get_enabled

Checks if action is currently enabled.

Available since: 2.28

g_action_get_name

Queries the name of action.

Available since: 2.28

g_action_get_parameter_type

Queries the type of the parameter that must be given when activating action.

Available since: 2.28

g_action_get_state

Queries the current state of action.

Available since: 2.28

g_action_get_state_hint

Requests a hint about the valid range of values for the state of action.

Available since: 2.28

g_action_get_state_type

Queries the type of the state of action.

Available since: 2.28

Properties

Gio.Action:enabled

If action is currently enabled.

Available since: 2.28

Gio.Action:name

The name of the action. This is mostly meaningful for identifying the action once it has been added to a GActionGroup. It is immutable.

Available since: 2.28

Gio.Action:parameter-type

The type of the parameter that must be given when activating the action. This is immutable, and may be NULL if no parameter is needed when activating the action.

Available since: 2.28

Gio.Action:state

The state of the action, or NULL if the action is stateless.

Available since: 2.28

Gio.Action:state-type

The GVariantType of the state that the action has, or NULL if the action is stateless. This is immutable.

Available since: 2.28

Interface structure

struct GioActionInterface {
  GTypeInterface g_iface;
  const gchar* (* get_name) (
    GAction* action
  );
  const GVariantType* (* get_parameter_type) (
    GAction* action
  );
  const GVariantType* (* get_state_type) (
    GAction* action
  );
  GVariant* (* get_state_hint) (
    GAction* action
  );
  gboolean (* get_enabled) (
    GAction* action
  );
  GVariant* (* get_state) (
    GAction* action
  );
  void (* change_state) (
    GAction* action,
    GVariant* value
  );
  void (* activate) (
    GAction* action,
    GVariant* parameter
  );
  
}
Interface members
g_iface
GTypeInterface
 No description available.
get_name
const gchar* (* get_name) (
    GAction* action
  )
 No description available.
get_parameter_type
const GVariantType* (* get_parameter_type) (
    GAction* action
  )
 No description available.
get_state_type
const GVariantType* (* get_state_type) (
    GAction* action
  )
 No description available.
get_state_hint
GVariant* (* get_state_hint) (
    GAction* action
  )
 No description available.
get_enabled
gboolean (* get_enabled) (
    GAction* action
  )
 No description available.
get_state
GVariant* (* get_state) (
    GAction* action
  )
 No description available.
change_state
void (* change_state) (
    GAction* action,
    GVariant* value
  )
 No description available.
activate
void (* activate) (
    GAction* action,
    GVariant* parameter
  )
 No description available.

Virtual methods

Gio.Action.activate

Activates the action.

Gio.Action.change_state

Request for the state of action to be changed to value.

Gio.Action.get_enabled

Checks if action is currently enabled.

Gio.Action.get_name

Queries the name of action.

Gio.Action.get_parameter_type

Queries the type of the parameter that must be given when activating action.

Gio.Action.get_state

Queries the current state of action.

Gio.Action.get_state_hint

Requests a hint about the valid range of values for the state of action.

Gio.Action.get_state_type

Queries the type of the state of action.