Indicates that the action just received a request to change its
state.
@value will always be of the correct state type. In the event that
an incorrect type was given, no signal will be emitted.
If no handler is connected to this signal then the default
behaviour is to call g_simple_action_set_state() to set the state
to the requested value. If you connect a signal handler then no
default action is taken. If the state should change then you must
call g_simple_action_set_state() from the handler.
An example of a 'change-state' handler:
|[<!-- language="C" -->
static void
change_volume_state (GSimpleAction *action,
GVariant *value,
gpointer user_data)
{
gint requested;
requested = g_variant_get_int32 (value);
// Volume only goes from 0 to 10
if (0 <= requested && requested <= 10)
g_simple_action_set_state (action, value);
}
]|
The handler need not set the state to the requested value.
It could set it to any value at all, or take some other action.
Indicates that the action just received a request to change its state.
@value will always be of the correct state type. In the event that an incorrect type was given, no signal will be emitted.
If no handler is connected to this signal then the default behaviour is to call g_simple_action_set_state() to set the state to the requested value. If you connect a signal handler then no default action is taken. If the state should change then you must call g_simple_action_set_state() from the handler.
An example of a 'change-state' handler: |[<!-- language="C" --> static void change_volume_state (GSimpleAction *action, GVariant *value, gpointer user_data) { gint requested;
requested = g_variant_get_int32 (value);
// Volume only goes from 0 to 10 if (0 <= requested && requested <= 10) g_simple_action_set_state (action, value); } ]|
The handler need not set the state to the requested value. It could set it to any value at all, or take some other action.