1use glib::translate::*;
4
5use crate::{ShortcutTrigger, ffi, prelude::*};
6
7impl ShortcutTrigger {
8 #[cfg(feature = "v4_24")]
22 #[cfg_attr(docsrs, doc(cfg(feature = "v4_24")))]
23 #[doc(alias = "gtk_shortcut_trigger_create_with_aliases")]
24 pub fn create_with_aliases(key: gdk::Key, modifiers: gdk::ModifierType) -> ShortcutTrigger {
25 assert_initialized_main_thread!();
26 unsafe {
27 from_glib_full(ffi::gtk_shortcut_trigger_create_with_aliases(
28 key.into_glib(),
29 modifiers.into_glib(),
30 ))
31 }
32 }
33}
34
35pub trait ShortcutTriggerExtManual: IsA<ShortcutTrigger> {
39 #[doc(alias = "gtk_shortcut_trigger_compare")]
40 fn compare(&self, trigger2: &impl IsA<ShortcutTrigger>) -> std::cmp::Ordering {
41 unsafe {
42 from_glib(ffi::gtk_shortcut_trigger_compare(
43 ToGlibPtr::<*mut ffi::GtkShortcutTrigger>::to_glib_none(self.as_ref()).0
44 as glib::ffi::gconstpointer,
45 ToGlibPtr::<*mut ffi::GtkShortcutTrigger>::to_glib_none(trigger2.as_ref()).0
46 as glib::ffi::gconstpointer,
47 ))
48 }
49 }
50
51 #[doc(alias = "gtk_shortcut_trigger_equal")]
52 fn equal(&self, trigger2: &impl IsA<ShortcutTrigger>) -> bool {
53 unsafe {
54 from_glib(ffi::gtk_shortcut_trigger_equal(
55 ToGlibPtr::<*mut ffi::GtkShortcutTrigger>::to_glib_none(self.as_ref()).0
56 as glib::ffi::gconstpointer,
57 ToGlibPtr::<*mut ffi::GtkShortcutTrigger>::to_glib_none(trigger2.as_ref()).0
58 as glib::ffi::gconstpointer,
59 ))
60 }
61 }
62
63 #[doc(alias = "gtk_shortcut_trigger_hash")]
64 fn hash(&self) -> u32 {
65 unsafe {
66 ffi::gtk_shortcut_trigger_hash(
67 ToGlibPtr::<*mut ffi::GtkShortcutTrigger>::to_glib_none(self.as_ref()).0
68 as glib::ffi::gconstpointer,
69 )
70 }
71 }
72}
73
74impl<O: IsA<ShortcutTrigger>> ShortcutTriggerExtManual for O {}