#![allow(non_camel_case_types, non_upper_case_globals, non_snake_case)]
#![allow(
clippy::approx_constant,
clippy::type_complexity,
clippy::unreadable_literal,
clippy::upper_case_acronyms
)]
#![cfg_attr(docsrs, feature(doc_cfg))]
use gdk4_sys as gdk;
use glib_sys as glib;
#[allow(unused_imports)]
use libc::{
c_char, c_double, c_float, c_int, c_long, c_short, c_uchar, c_uint, c_ulong, c_ushort, c_void,
intptr_t, off_t, size_t, ssize_t, time_t, uintptr_t, FILE,
};
#[cfg(unix)]
#[allow(unused_imports)]
use libc::{dev_t, gid_t, pid_t, socklen_t, uid_t};
#[allow(unused_imports)]
use glib::{gboolean, gconstpointer, gpointer, GType};
pub type GdkWin32MessageFilterReturn = c_int;
pub const GDK_WIN32_MESSAGE_FILTER_CONTINUE: GdkWin32MessageFilterReturn = 0;
pub const GDK_WIN32_MESSAGE_FILTER_REMOVE: GdkWin32MessageFilterReturn = 1;
pub type GdkWin32MessageFilterFunc = Option<
unsafe extern "C" fn(
*mut GdkWin32Display,
gpointer,
*mut c_int,
gpointer,
) -> GdkWin32MessageFilterReturn,
>;
#[repr(C)]
pub struct _GdkWin32DisplayClass {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
pub type GdkWin32DisplayClass = _GdkWin32DisplayClass;
#[repr(C)]
pub struct _GdkWin32DisplayManagerClass {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
pub type GdkWin32DisplayManagerClass = _GdkWin32DisplayManagerClass;
#[repr(C)]
pub struct _GdkWin32DragClass {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
pub type GdkWin32DragClass = _GdkWin32DragClass;
#[repr(C)]
pub struct _GdkWin32GLContextClass {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
pub type GdkWin32GLContextClass = _GdkWin32GLContextClass;
#[repr(C)]
pub struct _GdkWin32HCursorClass {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
pub type GdkWin32HCursorClass = _GdkWin32HCursorClass;
#[repr(C)]
pub struct _GdkWin32MonitorClass {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
pub type GdkWin32MonitorClass = _GdkWin32MonitorClass;
#[repr(C)]
pub struct _GdkWin32ScreenClass {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
pub type GdkWin32ScreenClass = _GdkWin32ScreenClass;
#[repr(C)]
pub struct _GdkWin32SurfaceClass {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
pub type GdkWin32SurfaceClass = _GdkWin32SurfaceClass;
#[repr(C)]
pub struct GdkWin32Display {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
impl ::std::fmt::Debug for GdkWin32Display {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
f.debug_struct(&format!("GdkWin32Display @ {self:p}"))
.finish()
}
}
#[repr(C)]
pub struct GdkWin32DisplayManager {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
impl ::std::fmt::Debug for GdkWin32DisplayManager {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
f.debug_struct(&format!("GdkWin32DisplayManager @ {self:p}"))
.finish()
}
}
#[repr(C)]
pub struct GdkWin32Drag {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
impl ::std::fmt::Debug for GdkWin32Drag {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
f.debug_struct(&format!("GdkWin32Drag @ {self:p}")).finish()
}
}
#[repr(C)]
pub struct GdkWin32GLContext {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
impl ::std::fmt::Debug for GdkWin32GLContext {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
f.debug_struct(&format!("GdkWin32GLContext @ {self:p}"))
.finish()
}
}
#[repr(C)]
pub struct GdkWin32HCursor {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
impl ::std::fmt::Debug for GdkWin32HCursor {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
f.debug_struct(&format!("GdkWin32HCursor @ {self:p}"))
.finish()
}
}
#[repr(C)]
pub struct GdkWin32Monitor {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
impl ::std::fmt::Debug for GdkWin32Monitor {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
f.debug_struct(&format!("GdkWin32Monitor @ {self:p}"))
.finish()
}
}
#[repr(C)]
pub struct GdkWin32Screen {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
impl ::std::fmt::Debug for GdkWin32Screen {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
f.debug_struct(&format!("GdkWin32Screen @ {self:p}"))
.finish()
}
}
#[repr(C)]
pub struct GdkWin32Surface {
_data: [u8; 0],
_marker: core::marker::PhantomData<(*mut u8, core::marker::PhantomPinned)>,
}
impl ::std::fmt::Debug for GdkWin32Surface {
fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
f.debug_struct(&format!("GdkWin32Surface @ {self:p}"))
.finish()
}
}
#[link(name = "gtk-4")]
extern "C" {
pub fn gdk_win32_display_get_type() -> GType;
pub fn gdk_win32_display_get_primary_monitor(
display: *mut gdk::GdkDisplay,
) -> *mut gdk::GdkMonitor;
pub fn gdk_win32_display_get_wgl_version(
display: *mut gdk::GdkDisplay,
major: *mut c_int,
minor: *mut c_int,
) -> gboolean;
pub fn gdk_win32_display_add_filter(
display: *mut GdkWin32Display,
function: GdkWin32MessageFilterFunc,
data: gpointer,
);
#[cfg(feature = "v4_4")]
#[cfg_attr(docsrs, doc(cfg(feature = "v4_4")))]
pub fn gdk_win32_display_get_egl_display(display: *mut GdkWin32Display) -> gpointer;
pub fn gdk_win32_display_get_win32hcursor(
display: *mut GdkWin32Display,
cursor: *mut gdk::GdkCursor,
) -> *mut GdkWin32HCursor;
pub fn gdk_win32_display_remove_filter(
display: *mut GdkWin32Display,
function: GdkWin32MessageFilterFunc,
data: gpointer,
);
pub fn gdk_win32_display_set_cursor_theme(
display: *mut GdkWin32Display,
name: *const c_char,
size: c_int,
);
pub fn gdk_win32_display_manager_get_type() -> GType;
pub fn gdk_win32_drag_get_type() -> GType;
pub fn gdk_win32_gl_context_get_type() -> GType;
pub fn gdk_win32_hcursor_get_type() -> GType;
pub fn gdk_win32_hcursor_new(
display: *mut GdkWin32Display,
handle: ssize_t,
destroyable: gboolean,
) -> *mut GdkWin32HCursor;
pub fn gdk_win32_monitor_get_type() -> GType;
pub fn gdk_win32_monitor_get_workarea(
monitor: *mut gdk::GdkMonitor,
workarea: *mut gdk::GdkRectangle,
);
pub fn gdk_win32_screen_get_type() -> GType;
pub fn gdk_win32_surface_get_type() -> GType;
pub fn gdk_win32_surface_get_impl_hwnd(surface: *mut gdk::GdkSurface) -> ssize_t;
pub fn gdk_win32_surface_is_win32(surface: *mut gdk::GdkSurface) -> gboolean;
pub fn gdk_win32_surface_lookup_for_display(
display: *mut gdk::GdkDisplay,
anid: ssize_t,
) -> *mut gdk::GdkSurface;
pub fn gdk_win32_surface_get_handle(surface: *mut GdkWin32Surface) -> ssize_t;
pub fn gdk_win32_surface_set_urgency_hint(surface: *mut GdkWin32Surface, urgent: gboolean);
pub fn gdk_win32_handle_table_lookup(handle: ssize_t) -> gpointer;
}