gdk4_win32/auto/
win32_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 = "GdkWin32Monitor")]
15    pub struct Win32Monitor(Object<ffi::GdkWin32Monitor, ffi::GdkWin32MonitorClass>) @extends gdk::Monitor;
16
17    match fn {
18        type_ => || ffi::gdk_win32_monitor_get_type(),
19    }
20}
21
22impl Win32Monitor {
23    /// Retrieves the size and position of the “work area” on a monitor
24    /// within the display coordinate space.
25    ///
26    /// The returned geometry is in ”application pixels”, not in ”device pixels”
27    /// (see `Gdk::Monitor::get_scale_factor()`).
28    /// ## `monitor`
29    /// a [`gdk::Monitor`][crate::gdk::Monitor]
30    ///
31    /// # Returns
32    ///
33    ///
34    /// ## `workarea`
35    /// a [`gdk::Rectangle`][crate::gdk::Rectangle] to be filled with the monitor workarea
36    #[doc(alias = "gdk_win32_monitor_get_workarea")]
37    #[doc(alias = "get_workarea")]
38    pub fn workarea(monitor: &impl IsA<gdk::Monitor>) -> gdk::Rectangle {
39        assert_initialized_main_thread!();
40        unsafe {
41            let mut workarea = gdk::Rectangle::uninitialized();
42            ffi::gdk_win32_monitor_get_workarea(
43                monitor.as_ref().to_glib_none().0,
44                workarea.to_glib_none_mut().0,
45            );
46            workarea
47        }
48    }
49}