1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
// This file was generated by gir (https://github.com/gtk-rs/gir)
// from gir-files (https://github.com/gtk-rs/gir-files)
// DO NOT EDIT
use glib::prelude::*;
glib::wrapper! {
/// The [`ShortcutManager`][crate::ShortcutManager] interface is used to implement
/// shortcut scopes.
///
/// This is important for [`Native`][crate::Native] widgets that have their
/// own surface, since the event controllers that are used to implement
/// managed and global scopes are limited to the same native.
///
/// Examples for widgets implementing [`ShortcutManager`][crate::ShortcutManager] are
/// [`Window`][crate::Window] and [`Popover`][crate::Popover].
///
/// Every widget that implements [`ShortcutManager`][crate::ShortcutManager] will be used as a
/// [`ShortcutScope::Managed`][crate::ShortcutScope::Managed].
///
/// # Implements
///
/// [`ShortcutManagerExt`][trait@crate::prelude::ShortcutManagerExt]
#[doc(alias = "GtkShortcutManager")]
pub struct ShortcutManager(Interface<ffi::GtkShortcutManager, ffi::GtkShortcutManagerInterface>);
match fn {
type_ => || ffi::gtk_shortcut_manager_get_type(),
}
}
impl ShortcutManager {
pub const NONE: Option<&'static ShortcutManager> = None;
}
mod sealed {
pub trait Sealed {}
impl<T: super::IsA<super::ShortcutManager>> Sealed for T {}
}
/// Trait containing all [`struct@ShortcutManager`] methods.
///
/// # Implementors
///
/// [`AboutDialog`][struct@crate::AboutDialog], [`AppChooserDialog`][struct@crate::AppChooserDialog], [`ApplicationWindow`][struct@crate::ApplicationWindow], [`Assistant`][struct@crate::Assistant], [`ColorChooserDialog`][struct@crate::ColorChooserDialog], [`Dialog`][struct@crate::Dialog], [`EmojiChooser`][struct@crate::EmojiChooser], [`FileChooserDialog`][struct@crate::FileChooserDialog], [`FontChooserDialog`][struct@crate::FontChooserDialog], [`MessageDialog`][struct@crate::MessageDialog], [`PageSetupUnixDialog`][struct@crate::PageSetupUnixDialog], [`PopoverMenu`][struct@crate::PopoverMenu], [`Popover`][struct@crate::Popover], [`PrintUnixDialog`][struct@crate::PrintUnixDialog], [`ShortcutManager`][struct@crate::ShortcutManager], [`ShortcutsWindow`][struct@crate::ShortcutsWindow], [`Window`][struct@crate::Window]
pub trait ShortcutManagerExt: IsA<ShortcutManager> + sealed::Sealed + 'static {}
impl<O: IsA<ShortcutManager>> ShortcutManagerExt for O {}