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 fromGObject.

Implementations

Functions

g_action_name_is_valid

Checks if action_name is valid.

since: 2.38

g_action_parse_detailed_name

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

since: 2.38

g_action_print_detailed_name

Formats a detailed action name from action_name and target_value.

since: 2.38

Instance methods

g_action_activate

Activates the action.

since: 2.28

g_action_change_state

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

since: 2.30

g_action_get_enabled

Checks if action is currently enabled.

since: 2.28

g_action_get_name

Queries the name of action.

since: 2.28

g_action_get_parameter_type

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

since: 2.28

g_action_get_state

Queries the current state of action.

since: 2.28

g_action_get_state_hint

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

since: 2.28

g_action_get_state_type

Queries the type of the state of action.

since: 2.28

Properties

Gio.Action:enabled

If action is currently enabled.

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.

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.

since: 2.28

Gio.Action:state

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

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.

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
  );
  
}

The virtual function table for GAction.

Interface members
g_iface
GTypeInterface
 

No description available.

get_name
const gchar* (* get_name) (
    GAction* action
  )
 

The virtual function pointer for g_action_get_name().

get_parameter_type
const GVariantType* (* get_parameter_type) (
    GAction* action
  )
 

The virtual function pointer for g_action_get_parameter_type().

get_state_type
const GVariantType* (* get_state_type) (
    GAction* action
  )
 

The virtual function pointer for g_action_get_state_type().

get_state_hint
GVariant* (* get_state_hint) (
    GAction* action
  )
 

The virtual function pointer for g_action_get_state_hint().

get_enabled
gboolean (* get_enabled) (
    GAction* action
  )
 

The virtual function pointer for g_action_get_enabled().

get_state
GVariant* (* get_state) (
    GAction* action
  )
 

The virtual function pointer for g_action_get_state().

change_state
void (* change_state) (
    GAction* action,
    GVariant* value
  )
 

The virtual function pointer for g_action_change_state().

activate
void (* activate) (
    GAction* action,
    GVariant* parameter
  )
 

The virtual function pointer for g_action_activate(). Note that GAction does not have an ‘activate’ signal but that implementations of it may have one.

Virtual methods

Gio.Action.activate

Activates the action.

since: 2.28

Gio.Action.change_state

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

since: 2.30

Gio.Action.get_enabled

Checks if action is currently enabled.

since: 2.28

Gio.Action.get_name

Queries the name of action.

since: 2.28

Gio.Action.get_parameter_type

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

since: 2.28

Gio.Action.get_state

Queries the current state of action.

since: 2.28

Gio.Action.get_state_hint

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

since: 2.28

Gio.Action.get_state_type

Queries the type of the state of action.

since: 2.28