[go: up one dir, main page]

gtk4/auto/
root.rs

1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from gir-files (https://github.com/gtk-rs/gir-files)
3// DO NOT EDIT
4
5use crate::{ffi, Accessible, Buildable, ConstraintTarget, Native, Widget};
6use glib::{prelude::*, translate::*};
7
8glib::wrapper! {
9    #[doc(alias = "GtkRoot")]
10    pub struct Root(Interface<ffi::GtkRoot, ffi::GtkRootInterface>) @requires Native, Widget, Accessible, Buildable, ConstraintTarget;
11
12    match fn {
13        type_ => || ffi::gtk_root_get_type(),
14    }
15}
16
17impl Root {
18    pub const NONE: Option<&'static Root> = None;
19}
20
21pub trait RootExt: IsA<Root> + 'static {
22    #[doc(alias = "gtk_root_get_display")]
23    #[doc(alias = "get_display")]
24    fn display(&self) -> gdk::Display {
25        unsafe { from_glib_none(ffi::gtk_root_get_display(self.as_ref().to_glib_none().0)) }
26    }
27
28    #[doc(alias = "gtk_root_get_focus")]
29    #[doc(alias = "get_focus")]
30    fn focus(&self) -> Option<Widget> {
31        unsafe { from_glib_none(ffi::gtk_root_get_focus(self.as_ref().to_glib_none().0)) }
32    }
33
34    #[doc(alias = "gtk_root_set_focus")]
35    fn set_focus(&self, focus: Option<&impl IsA<Widget>>) {
36        unsafe {
37            ffi::gtk_root_set_focus(
38                self.as_ref().to_glib_none().0,
39                focus.map(|p| p.as_ref()).to_glib_none().0,
40            );
41        }
42    }
43}
44
45impl<O: IsA<Root>> RootExt for O {}