libadwaita/auto/
squeezer_page.rs1#![allow(deprecated)]
6
7use crate::ffi;
8use glib::{
9 prelude::*,
10 signal::{connect_raw, SignalHandlerId},
11 translate::*,
12};
13use std::boxed::Box as Box_;
14
15glib::wrapper! {
16 #[doc(alias = "AdwSqueezerPage")]
17 pub struct SqueezerPage(Object<ffi::AdwSqueezerPage, ffi::AdwSqueezerPageClass>);
18
19 match fn {
20 type_ => || ffi::adw_squeezer_page_get_type(),
21 }
22}
23
24impl SqueezerPage {
25 #[cfg_attr(feature = "v1_4", deprecated = "Since 1.4")]
26 #[allow(deprecated)]
27 #[doc(alias = "adw_squeezer_page_get_child")]
28 #[doc(alias = "get_child")]
29 pub fn child(&self) -> gtk::Widget {
30 unsafe { from_glib_none(ffi::adw_squeezer_page_get_child(self.to_glib_none().0)) }
31 }
32
33 #[cfg_attr(feature = "v1_4", deprecated = "Since 1.4")]
34 #[allow(deprecated)]
35 #[doc(alias = "adw_squeezer_page_get_enabled")]
36 #[doc(alias = "get_enabled")]
37 #[doc(alias = "enabled")]
38 pub fn is_enabled(&self) -> bool {
39 unsafe { from_glib(ffi::adw_squeezer_page_get_enabled(self.to_glib_none().0)) }
40 }
41
42 #[cfg_attr(feature = "v1_4", deprecated = "Since 1.4")]
43 #[allow(deprecated)]
44 #[doc(alias = "adw_squeezer_page_set_enabled")]
45 #[doc(alias = "enabled")]
46 pub fn set_enabled(&self, enabled: bool) {
47 unsafe {
48 ffi::adw_squeezer_page_set_enabled(self.to_glib_none().0, enabled.into_glib());
49 }
50 }
51
52 #[cfg_attr(feature = "v1_4", deprecated = "Since 1.4")]
53 #[doc(alias = "enabled")]
54 pub fn connect_enabled_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId {
55 unsafe extern "C" fn notify_enabled_trampoline<F: Fn(&SqueezerPage) + 'static>(
56 this: *mut ffi::AdwSqueezerPage,
57 _param_spec: glib::ffi::gpointer,
58 f: glib::ffi::gpointer,
59 ) {
60 let f: &F = &*(f as *const F);
61 f(&from_glib_borrow(this))
62 }
63 unsafe {
64 let f: Box_<F> = Box_::new(f);
65 connect_raw(
66 self.as_ptr() as *mut _,
67 c"notify::enabled".as_ptr() as *const _,
68 Some(std::mem::transmute::<*const (), unsafe extern "C" fn()>(
69 notify_enabled_trampoline::<F> as *const (),
70 )),
71 Box_::into_raw(f),
72 )
73 }
74 }
75}