ActionIF

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

Members

Functions

activate
void activate(Variant parameter)

Activates the action.

changeState
void changeState(Variant value)

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

getActionStruct
GAction* getActionStruct()

Get the main Gtk struct

getEnabled
bool getEnabled()

Checks if @action is currently enabled.

getName
string getName()

Queries the name of @action.

getParameterType
VariantType getParameterType()

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

getState
Variant getState()

Queries the current state of @action.

getStateHint
Variant getStateHint()

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

getStateType
VariantType getStateType()

Queries the type of the state of @action.

getStruct
void* getStruct()

the main Gtk struct as a void*

Static functions

nameIsValid
bool nameIsValid(string actionName)

Checks if @action_name is valid.

parseDetailedName
bool parseDetailedName(string detailedName, string actionName, Variant targetValue)

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

printDetailedName
string printDetailedName(string actionName, Variant targetValue)

Formats a detailed action name from @action_name and @target_value.

Meta