GActionEntry

This struct defines a single action. It is for use with gio.action_map.ActionMap.addActionEntries.

The order of the items in the structure are intended to reflect frequency of use. It is permissible to use an incomplete initialiser in order to leave some of the later values as null. All values after @name are optional. Additional optional fields may be added in the future.

See gio.action_map.ActionMap.addActionEntries for an example.

Members

Variables

activate
void function(GSimpleAction* action, VariantC* parameter, void* userData) activate;

the callback to connect to the "activate" signal of the action. Since GLib 2.40, this can be null for stateful actions, in which case the default handler is used. For boolean-stated actions with no parameter, this is a toggle. For other state types (and parameter type equal to the state type) this will be a function that just calls @change_state (which you should provide).

changeState
void function(GSimpleAction* action, VariantC* value, void* userData) changeState;

the callback to connect to the "change-state" signal of the action. All stateful actions should provide a handler here; stateless actions should not.

name
const(char)* name;

the name of the action

padding
size_t[3] padding;
parameterType
const(char)* parameterType;

the type of the parameter that must be passed to the activate function for this action, given as a single GVariant type string (or null for no parameter)

state
const(char)* state;

the initial state for this action, given in [GVariant text format][gvariant-text]. The state is parsed with no extra type information, so type tags must be added to the string if they are necessary. Stateless actions should give null here.