pub trait ActionExt: 'static {
Show 13 methods fn activate(&self, parameter: Option<&Variant>); fn change_state(&self, value: &Variant); fn is_enabled(&self) -> bool; fn name(&self) -> GString; fn parameter_type(&self) -> Option<VariantType>; fn state(&self) -> Option<Variant>; fn state_hint(&self) -> Option<Variant>; fn state_type(&self) -> Option<VariantType>; fn connect_enabled_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; fn connect_name_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; fn connect_parameter_type_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; fn connect_state_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; fn connect_state_type_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
}
Expand description

Trait containing all Action methods.

Implementors

Action, PropertyAction, SimpleAction

Required Methods

Activates the action.

parameter must be the correct type of parameter for the action (ie: the parameter type given at construction time). If the parameter type was None then parameter must also be None.

If the parameter GVariant is floating, it is consumed.

parameter

the parameter to the activation

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

The action must be stateful and value must be of the correct type. See state_type().

This call merely requests a change. The action may refuse to change its state or may change its state to something other than value. See state_hint().

If the value GVariant is floating, it is consumed.

value

the new state

Checks if self is currently enabled.

An action must be enabled in order to be activated or in order to have its state changed from outside callers.

Returns

whether the action is enabled

Queries the name of self.

Returns

the name of the action

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

When activating the action using activate(), the glib::Variant given to that function must be of the type returned by this function.

In the case that this function returns None, you must not give any glib::Variant, but None instead.

Returns

the parameter type

Queries the current state of self.

If the action is not stateful then None will be returned. If the action is stateful then the type of the return value is the type given by state_type().

The return value (if non-None) should be freed with g_variant_unref() when it is no longer required.

Returns

the current state of the action

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

If None is returned it either means that the action is not stateful or that there is no hint about the valid range of values for the state of the action.

If a glib::Variant array is returned then each item in the array is a possible value for the state. If a glib::Variant pair (ie: two-tuple) is returned then the tuple specifies the inclusive lower and upper bound of valid values for the state.

In any case, the information is merely a hint. It may be possible to have a state value outside of the hinted range and setting a value within the range may fail.

The return value (if non-None) should be freed with g_variant_unref() when it is no longer required.

Returns

the state range hint

Queries the type of the state of self.

If the action is stateful (e.g. created with SimpleAction::new_stateful()) then this function returns the glib::VariantType of the state. This is the type of the initial value given as the state. All calls to change_state() must give a glib::Variant of this type and state() will return a glib::Variant of the same type.

If the action is not stateful (e.g. created with SimpleAction::new()) then this function will return None. In that case, state() will return None and you must not call change_state().

Returns

the state type, if the action is stateful

Implementors