gdk4_macos/auto/macos_monitor.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;
6use glib::{prelude::*, translate::*};
7
8glib::wrapper! {
9 ///
10 ///
11 /// # Implements
12 ///
13 /// [`trait@gdk::prelude::MonitorExt`]
14 #[doc(alias = "GdkMacosMonitor")]
15 pub struct MacosMonitor(Object<ffi::GdkMacosMonitor, ffi::GdkMacosMonitorClass>) @extends gdk::Monitor;
16
17 match fn {
18 type_ => || ffi::gdk_macos_monitor_get_type(),
19 }
20}
21
22impl MacosMonitor {
23 ///
24 /// (see [method`Gdk`.get_scale_factor]).
25 /// ## `monitor`
26 /// a [`gdk::Monitor`][crate::gdk::Monitor]
27 ///
28 /// # Returns
29 ///
30 ///
31 /// ## `geometry`
32 /// a [`gdk::Rectangle`][crate::gdk::Rectangle] to be filled with the monitor geometry
33 #[doc(alias = "gdk_macos_monitor_get_workarea")]
34 #[doc(alias = "get_workarea")]
35 pub fn workarea(monitor: &impl IsA<gdk::Monitor>) -> gdk::Rectangle {
36 assert_initialized_main_thread!();
37 unsafe {
38 let mut geometry = gdk::Rectangle::uninitialized();
39 ffi::gdk_macos_monitor_get_workarea(
40 monitor.as_ref().to_glib_none().0,
41 geometry.to_glib_none_mut().0,
42 );
43 geometry
44 }
45 }
46}