pub trait AccelLabelExt: 'static {
    fn accel(&self) -> (u32, ModifierType);
    fn accel_widget(&self) -> Option<Widget>;
    fn accel_width(&self) -> u32;
    fn refetch(&self) -> bool;
    fn set_accel(&self, accelerator_key: u32, accelerator_mods: ModifierType);
    fn set_accel_closure(&self, accel_closure: Option<&Closure>);
    fn set_accel_widget(&self, accel_widget: Option<&impl IsA<Widget>>);
    fn accel_closure(&self) -> Option<Closure>;
    fn connect_accel_closure_notify<F: Fn(&Self) + 'static>(
        f: F
    ) -> SignalHandlerId; fn connect_accel_widget_notify<F: Fn(&Self) + 'static>(
        f: F
    ) -> SignalHandlerId; }
Expand description

Trait containing all AccelLabel methods.



Required Methods

Gets the keyval and modifier mask set with set_accel().


return location for the keyval


return location for the modifier mask

Fetches the widget monitored by this accelerator label. See set_accel_widget().


the object monitored by the accelerator label, or None.

Returns the width needed to display the accelerator key(s). This is used by menus to align all of the MenuItem widgets, and shouldn’t be needed by applications.


the width needed to display the accelerator key(s).

Recreates the string representing the accelerator keys. This should not be needed since the string is automatically updated whenever accelerators are added or removed from the associated widget.


always returns false.

Manually sets a keyval and modifier mask as the accelerator rendered by self.

If a keyval and modifier are explicitly set then these values are used regardless of any associated accel closure or widget.

Providing an accelerator_key of 0 removes the manual setting.


a keyval, or 0


the modifier mask for the accel

Sets the closure to be monitored by this accelerator label. The closure must be connected to an accelerator group; see AccelGroupExtManual::connect_accel_group(). Passing None for accel_closure will dissociate self from its current closure, if any.


the closure to monitor for accelerator changes, or None

Sets the widget to be monitored by this accelerator label. Passing None for accel_widget will dissociate self from its current widget, if any.


the widget to be monitored, or None