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
.
Functions
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_get_parameter_type
Queries the type of the parameter that must be given when activating
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
Properties
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-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 |
|
No description available. |
|
get_name |
|
The virtual function pointer for |
|
get_parameter_type |
|
The virtual function pointer for |
|
get_state_type |
|
The virtual function pointer for |
|
get_state_hint |
|
The virtual function pointer for |
|
get_enabled |
|
The virtual function pointer for |
|
get_state |
|
The virtual function pointer for |
|
change_state |
|
The virtual function pointer for |
|
activate |
|
The virtual function pointer for |
Virtual methods
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_hint
Requests a hint about the valid range of values for the state of
action
.
since: 2.28