/* automatically generated by rust-bindgen 0.71.1 */

pub const _STDINT_H: u32 = 1;
pub const _FEATURES_H: u32 = 1;
pub const _DEFAULT_SOURCE: u32 = 1;
pub const __GLIBC_USE_ISOC2X: u32 = 0;
pub const __USE_ISOC11: u32 = 1;
pub const __USE_ISOC99: u32 = 1;
pub const __USE_ISOC95: u32 = 1;
pub const __USE_POSIX_IMPLICITLY: u32 = 1;
pub const _POSIX_SOURCE: u32 = 1;
pub const _POSIX_C_SOURCE: u32 = 200809;
pub const __USE_POSIX: u32 = 1;
pub const __USE_POSIX2: u32 = 1;
pub const __USE_POSIX199309: u32 = 1;
pub const __USE_POSIX199506: u32 = 1;
pub const __USE_XOPEN2K: u32 = 1;
pub const __USE_XOPEN2K8: u32 = 1;
pub const _ATFILE_SOURCE: u32 = 1;
pub const __WORDSIZE: u32 = 64;
pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1;
pub const __SYSCALL_WORDSIZE: u32 = 64;
pub const __TIMESIZE: u32 = 64;
pub const __USE_MISC: u32 = 1;
pub const __USE_ATFILE: u32 = 1;
pub const __USE_FORTIFY_LEVEL: u32 = 0;
pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0;
pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0;
pub const __GLIBC_USE_C2X_STRTOL: u32 = 0;
pub const _STDC_PREDEF_H: u32 = 1;
pub const __STDC_IEC_559__: u32 = 1;
pub const __STDC_IEC_60559_BFP__: u32 = 201404;
pub const __STDC_IEC_559_COMPLEX__: u32 = 1;
pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404;
pub const __STDC_ISO_10646__: u32 = 201706;
pub const __GNU_LIBRARY__: u32 = 6;
pub const __GLIBC__: u32 = 2;
pub const __GLIBC_MINOR__: u32 = 39;
pub const _SYS_CDEFS_H: u32 = 1;
pub const __glibc_c99_flexarr_available: u32 = 1;
pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0;
pub const __HAVE_GENERIC_SELECTION: u32 = 1;
pub const __GLIBC_USE_LIB_EXT2: u32 = 0;
pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0;
pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0;
pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0;
pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0;
pub const _BITS_TYPES_H: u32 = 1;
pub const _BITS_TYPESIZES_H: u32 = 1;
pub const __OFF_T_MATCHES_OFF64_T: u32 = 1;
pub const __INO_T_MATCHES_INO64_T: u32 = 1;
pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1;
pub const __STATFS_MATCHES_STATFS64: u32 = 1;
pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1;
pub const __FD_SETSIZE: u32 = 1024;
pub const _BITS_TIME64_H: u32 = 1;
pub const _BITS_WCHAR_H: u32 = 1;
pub const _BITS_STDINT_INTN_H: u32 = 1;
pub const _BITS_STDINT_UINTN_H: u32 = 1;
pub const _BITS_STDINT_LEAST_H: u32 = 1;
pub const INT8_MIN: i32 = -128;
pub const INT16_MIN: i32 = -32768;
pub const INT32_MIN: i32 = -2147483648;
pub const INT8_MAX: u32 = 127;
pub const INT16_MAX: u32 = 32767;
pub const INT32_MAX: u32 = 2147483647;
pub const UINT8_MAX: u32 = 255;
pub const UINT16_MAX: u32 = 65535;
pub const UINT32_MAX: u32 = 4294967295;
pub const INT_LEAST8_MIN: i32 = -128;
pub const INT_LEAST16_MIN: i32 = -32768;
pub const INT_LEAST32_MIN: i32 = -2147483648;
pub const INT_LEAST8_MAX: u32 = 127;
pub const INT_LEAST16_MAX: u32 = 32767;
pub const INT_LEAST32_MAX: u32 = 2147483647;
pub const UINT_LEAST8_MAX: u32 = 255;
pub const UINT_LEAST16_MAX: u32 = 65535;
pub const UINT_LEAST32_MAX: u32 = 4294967295;
pub const INT_FAST8_MIN: i32 = -128;
pub const INT_FAST16_MIN: i64 = -9223372036854775808;
pub const INT_FAST32_MIN: i64 = -9223372036854775808;
pub const INT_FAST8_MAX: u32 = 127;
pub const INT_FAST16_MAX: u64 = 9223372036854775807;
pub const INT_FAST32_MAX: u64 = 9223372036854775807;
pub const UINT_FAST8_MAX: u32 = 255;
pub const UINT_FAST16_MAX: i32 = -1;
pub const UINT_FAST32_MAX: i32 = -1;
pub const INTPTR_MIN: i64 = -9223372036854775808;
pub const INTPTR_MAX: u64 = 9223372036854775807;
pub const UINTPTR_MAX: i32 = -1;
pub const PTRDIFF_MIN: i64 = -9223372036854775808;
pub const PTRDIFF_MAX: u64 = 9223372036854775807;
pub const SIG_ATOMIC_MIN: i32 = -2147483648;
pub const SIG_ATOMIC_MAX: u32 = 2147483647;
pub const SIZE_MAX: i32 = -1;
pub const WINT_MIN: u32 = 0;
pub const WINT_MAX: u32 = 4294967295;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Widget {
    _unused: [u8; 0],
}
pub type Fl_Callback = ::core::option::Option<
    unsafe extern "C" fn(arg1: *mut Fl_Widget, arg2: *mut ::core::ffi::c_void),
>;
pub type custom_handler_callback = ::core::option::Option<
    unsafe extern "C" fn(
        arg1: *mut Fl_Widget,
        arg2: ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int,
>;
pub type custom_draw_callback = ::core::option::Option<
    unsafe extern "C" fn(arg1: *mut Fl_Widget, arg2: *mut ::core::ffi::c_void),
>;
pub type __u_char = ::core::ffi::c_uchar;
pub type __u_short = ::core::ffi::c_ushort;
pub type __u_int = ::core::ffi::c_uint;
pub type __u_long = ::core::ffi::c_ulong;
pub type __int8_t = ::core::ffi::c_schar;
pub type __uint8_t = ::core::ffi::c_uchar;
pub type __int16_t = ::core::ffi::c_short;
pub type __uint16_t = ::core::ffi::c_ushort;
pub type __int32_t = ::core::ffi::c_int;
pub type __uint32_t = ::core::ffi::c_uint;
pub type __int64_t = ::core::ffi::c_long;
pub type __uint64_t = ::core::ffi::c_ulong;
pub type __int_least8_t = __int8_t;
pub type __uint_least8_t = __uint8_t;
pub type __int_least16_t = __int16_t;
pub type __uint_least16_t = __uint16_t;
pub type __int_least32_t = __int32_t;
pub type __uint_least32_t = __uint32_t;
pub type __int_least64_t = __int64_t;
pub type __uint_least64_t = __uint64_t;
pub type __quad_t = ::core::ffi::c_long;
pub type __u_quad_t = ::core::ffi::c_ulong;
pub type __intmax_t = ::core::ffi::c_long;
pub type __uintmax_t = ::core::ffi::c_ulong;
pub type __dev_t = ::core::ffi::c_ulong;
pub type __uid_t = ::core::ffi::c_uint;
pub type __gid_t = ::core::ffi::c_uint;
pub type __ino_t = ::core::ffi::c_ulong;
pub type __ino64_t = ::core::ffi::c_ulong;
pub type __mode_t = ::core::ffi::c_uint;
pub type __nlink_t = ::core::ffi::c_ulong;
pub type __off_t = ::core::ffi::c_long;
pub type __off64_t = ::core::ffi::c_long;
pub type __pid_t = ::core::ffi::c_int;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct __fsid_t {
    pub __val: [::core::ffi::c_int; 2usize],
}
pub type __clock_t = ::core::ffi::c_long;
pub type __rlim_t = ::core::ffi::c_ulong;
pub type __rlim64_t = ::core::ffi::c_ulong;
pub type __id_t = ::core::ffi::c_uint;
pub type __time_t = ::core::ffi::c_long;
pub type __useconds_t = ::core::ffi::c_uint;
pub type __suseconds_t = ::core::ffi::c_long;
pub type __suseconds64_t = ::core::ffi::c_long;
pub type __daddr_t = ::core::ffi::c_int;
pub type __key_t = ::core::ffi::c_int;
pub type __clockid_t = ::core::ffi::c_int;
pub type __timer_t = *mut ::core::ffi::c_void;
pub type __blksize_t = ::core::ffi::c_long;
pub type __blkcnt_t = ::core::ffi::c_long;
pub type __blkcnt64_t = ::core::ffi::c_long;
pub type __fsblkcnt_t = ::core::ffi::c_ulong;
pub type __fsblkcnt64_t = ::core::ffi::c_ulong;
pub type __fsfilcnt_t = ::core::ffi::c_ulong;
pub type __fsfilcnt64_t = ::core::ffi::c_ulong;
pub type __fsword_t = ::core::ffi::c_long;
pub type __ssize_t = ::core::ffi::c_long;
pub type __syscall_slong_t = ::core::ffi::c_long;
pub type __syscall_ulong_t = ::core::ffi::c_ulong;
pub type __loff_t = __off64_t;
pub type __caddr_t = *mut ::core::ffi::c_char;
pub type __intptr_t = ::core::ffi::c_long;
pub type __socklen_t = ::core::ffi::c_uint;
pub type __sig_atomic_t = ::core::ffi::c_int;
pub type int_least8_t = __int_least8_t;
pub type int_least16_t = __int_least16_t;
pub type int_least32_t = __int_least32_t;
pub type int_least64_t = __int_least64_t;
pub type uint_least8_t = __uint_least8_t;
pub type uint_least16_t = __uint_least16_t;
pub type uint_least32_t = __uint_least32_t;
pub type uint_least64_t = __uint_least64_t;
pub type int_fast8_t = ::core::ffi::c_schar;
pub type int_fast16_t = ::core::ffi::c_long;
pub type int_fast32_t = ::core::ffi::c_long;
pub type int_fast64_t = ::core::ffi::c_long;
pub type uint_fast8_t = ::core::ffi::c_uchar;
pub type uint_fast16_t = ::core::ffi::c_ulong;
pub type uint_fast32_t = ::core::ffi::c_ulong;
pub type uint_fast64_t = ::core::ffi::c_ulong;
pub type intmax_t = __intmax_t;
pub type uintmax_t = __uintmax_t;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Window {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Window_new(
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
        title: *const ::core::ffi::c_char,
    ) -> *mut Fl_Window;
}
extern "C" {
    pub fn Fl_Window_x(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_y(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_width(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_height(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_label(arg1: *mut Fl_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Window_set_label(arg1: *mut Fl_Window, title: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Window_redraw(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_show(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_hide(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_activate(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_deactivate(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_redraw_label(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_resize(
        arg1: *mut Fl_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Window_widget_resize(
        arg1: *mut Fl_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Window_tooltip(arg1: *mut Fl_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Window_set_tooltip(arg1: *mut Fl_Window, txt: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Window_get_type(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_set_type(arg1: *mut Fl_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_color(arg1: *mut Fl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Window_set_color(arg1: *mut Fl_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Window_measure_label(
        arg1: *const Fl_Window,
        arg2: *mut ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Window_label_color(arg1: *mut Fl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Window_set_label_color(arg1: *mut Fl_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Window_label_font(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_set_label_font(arg1: *mut Fl_Window, font: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_label_size(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_set_label_size(arg1: *mut Fl_Window, sz: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_label_type(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_set_label_type(arg1: *mut Fl_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_box(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_set_box(arg1: *mut Fl_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_changed(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_set_changed(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_clear_changed(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_align(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_set_align(arg1: *mut Fl_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_delete(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_set_image(arg1: *mut Fl_Window, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_handle(
        self_: *mut Fl_Window,
        cb: custom_handler_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Window_handle_event(
        self_: *mut Fl_Window,
        event: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_draw(
        self_: *mut Fl_Window,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Window_resize_callback(
        self_: *mut Fl_Window,
        cb: ::core::option::Option<
            unsafe extern "C" fn(
                arg1: *mut Fl_Widget,
                x: ::core::ffi::c_int,
                y: ::core::ffi::c_int,
                w: ::core::ffi::c_int,
                h: ::core::ffi::c_int,
                arg2: *mut ::core::ffi::c_void,
            ),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Window_set_when(arg1: *mut Fl_Window, arg2: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_when(arg1: *const Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_image(arg1: *const Fl_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_parent(self_: *const Fl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_selection_color(arg1: *mut Fl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Window_set_selection_color(arg1: *mut Fl_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Window_do_callback(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_inside(
        self_: *const Fl_Window,
        arg1: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_window(arg1: *const Fl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_top_window(arg1: *const Fl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_takes_events(arg1: *const Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_user_data(arg1: *const Fl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_take_focus(self_: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_set_visible_focus(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_clear_visible_focus(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_visible_focus(self_: *mut Fl_Window, v: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_has_visible_focus(self_: *mut Fl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Window_set_user_data(arg1: *mut Fl_Window, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_draw_data(self_: *const Fl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_handle_data(self_: *const Fl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_set_draw_data(self_: *mut Fl_Window, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_set_handle_data(self_: *mut Fl_Window, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_damage(self_: *const Fl_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Window_set_damage(self_: *mut Fl_Window, flag: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Window_set_damage_area(
        self_: *mut Fl_Window,
        flag: ::core::ffi::c_uchar,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        w: ::core::ffi::c_int,
        h: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Window_clear_damage(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_as_window(self_: *mut Fl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_as_group(self_: *mut Fl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_set_deimage(arg1: *mut Fl_Window, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_deimage(arg1: *const Fl_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_set_callback(
        arg1: *mut Fl_Window,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Window_visible(self_: *const Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_visible_r(self_: *const Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_active(self_: *const Fl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Window_active_r(self_: *const Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_callback(self_: *const Fl_Window) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Window_set_deletion_callback(
        self_: *mut Fl_Window,
        arg1: ::core::option::Option<
            unsafe extern "C" fn(arg1: *mut Fl_Widget, arg2: *mut ::core::ffi::c_void),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Window_from_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Window;
}
extern "C" {
    pub fn Fl_Window_from_derived_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Window;
}
extern "C" {
    pub fn Fl_Window_super_draw(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_super_draw_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_super_handle_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_begin(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_end(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_find(
        self_: *mut Fl_Window,
        arg1: *const ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_add(self_: *mut Fl_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_insert(
        self_: *mut Fl_Window,
        arg1: *mut ::core::ffi::c_void,
        pos: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Window_remove(self_: *mut Fl_Window, wid: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_remove_by_index(self_: *mut Fl_Window, idx: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_clear(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_children(self_: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_child(arg1: *mut Fl_Window, index: ::core::ffi::c_int) -> *mut Fl_Widget;
}
extern "C" {
    pub fn Fl_Window_resizable(self_: *mut Fl_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_set_clip_children(self_: *mut Fl_Window, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_clip_children(self_: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_init_sizes(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_draw_child(self_: *const Fl_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Window_update_child(self_: *const Fl_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Window_draw_outside_label(self_: *const Fl_Window, w: *const Fl_Widget);
}
extern "C" {
    pub fn Fl_Window_draw_children(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_make_modal(arg1: *mut Fl_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Window_fullscreen(arg1: *mut Fl_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Window_make_current(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_set_icon(arg1: *mut Fl_Window, arg2: *const ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_icon(arg1: *const Fl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_set_cursor(self_: *mut Fl_Window, cursor: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_shown(self_: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_raw_handle(w: *const Fl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_set_border(arg1: *mut Fl_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_border(arg1: *const Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_region(self_: *const Fl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_set_region(self_: *mut Fl_Window, r: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_iconize(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_fullscreen_active(self_: *const Fl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Window_free_position(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_decorated_w(self_: *const Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_decorated_h(self_: *const Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_size_range(
        self_: *mut Fl_Window,
        arg1: ::core::ffi::c_int,
        arg2: ::core::ffi::c_int,
        arg3: ::core::ffi::c_int,
        arg4: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Window_hotspot(self_: *mut Fl_Window, wid: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Window_set_shape(self_: *mut Fl_Window, image: *const ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_shape(self_: *mut Fl_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_x_root(self_: *const Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_y_root(self_: *const Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_set_cursor_image(
        self_: *mut Fl_Window,
        image: *const ::core::ffi::c_void,
        hot_x: ::core::ffi::c_int,
        hot_y: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Window_default_cursor(self_: *mut Fl_Window, cursor: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_screen_num(arg1: *mut Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_set_screen_num(arg1: *mut Fl_Window, screen_num: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_wait_for_expose(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_set_alpha(self_: *mut Fl_Window, val: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Window_alpha(self_: *const Fl_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Window_force_position(self_: *mut Fl_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Window_default_xclass() -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Window_xclass(self_: *const Fl_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Window_set_default_xclass(s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Window_set_xclass(self_: *mut Fl_Window, s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Window_clear_modal_states(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_set_override(arg1: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_override(arg1: *const Fl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Window_icon_label(arg1: *const Fl_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Window_set_icon_label(arg1: *mut Fl_Window, arg2: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Window_set_icons(
        w: *mut Fl_Window,
        images: *mut *const ::core::ffi::c_void,
        length: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Window_maximize(w: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_un_maximize(w: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_maximize_active(w: *const Fl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Window_new_wh(
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
        title: *const ::core::ffi::c_char,
    ) -> *mut Fl_Window;
}
extern "C" {
    pub fn Fl_Window_find_by_handle(handle: *mut ::core::ffi::c_void) -> *mut Fl_Window;
}
extern "C" {
    pub fn resolve_raw_handle(handle: *mut ::core::ffi::c_void) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_display() -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_gc() -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_cairo_gc() -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Window_show_with_args(
        w: *mut Fl_Window,
        argc: ::core::ffi::c_int,
        argv: *mut *mut ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Window_set_raw_handle(self_: *mut Fl_Window, handle: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Window_allow_expand_outside_parent(self_: *mut Fl_Window);
}
extern "C" {
    pub fn Fl_Window_os_id(self_: *mut Fl_Window) -> usize;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Single_Window {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Single_Window_new(
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
        title: *const ::core::ffi::c_char,
    ) -> *mut Fl_Single_Window;
}
extern "C" {
    pub fn Fl_Single_Window_x(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_y(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_width(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_height(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_label(arg1: *mut Fl_Single_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Single_Window_set_label(
        arg1: *mut Fl_Single_Window,
        title: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Single_Window_redraw(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_show(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_hide(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_activate(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_deactivate(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_redraw_label(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_resize(
        arg1: *mut Fl_Single_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Single_Window_widget_resize(
        arg1: *mut Fl_Single_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Single_Window_tooltip(arg1: *mut Fl_Single_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Single_Window_set_tooltip(
        arg1: *mut Fl_Single_Window,
        txt: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Single_Window_get_type(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_set_type(arg1: *mut Fl_Single_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_color(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Single_Window_set_color(arg1: *mut Fl_Single_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Single_Window_measure_label(
        arg1: *const Fl_Single_Window,
        arg2: *mut ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Single_Window_label_color(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Single_Window_set_label_color(
        arg1: *mut Fl_Single_Window,
        color: ::core::ffi::c_uint,
    );
}
extern "C" {
    pub fn Fl_Single_Window_label_font(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_set_label_font(arg1: *mut Fl_Single_Window, font: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_label_size(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_set_label_size(arg1: *mut Fl_Single_Window, sz: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_label_type(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_set_label_type(arg1: *mut Fl_Single_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_box(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_set_box(arg1: *mut Fl_Single_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_changed(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_set_changed(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_clear_changed(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_align(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_set_align(arg1: *mut Fl_Single_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_delete(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_set_image(arg1: *mut Fl_Single_Window, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Single_Window_handle(
        self_: *mut Fl_Single_Window,
        cb: custom_handler_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Single_Window_handle_event(
        self_: *mut Fl_Single_Window,
        event: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_draw(
        self_: *mut Fl_Single_Window,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Single_Window_resize_callback(
        self_: *mut Fl_Single_Window,
        cb: ::core::option::Option<
            unsafe extern "C" fn(
                arg1: *mut Fl_Widget,
                x: ::core::ffi::c_int,
                y: ::core::ffi::c_int,
                w: ::core::ffi::c_int,
                h: ::core::ffi::c_int,
                arg2: *mut ::core::ffi::c_void,
            ),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Single_Window_set_when(arg1: *mut Fl_Single_Window, arg2: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_when(arg1: *const Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_image(arg1: *const Fl_Single_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_parent(self_: *const Fl_Single_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_selection_color(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Single_Window_set_selection_color(
        arg1: *mut Fl_Single_Window,
        color: ::core::ffi::c_uint,
    );
}
extern "C" {
    pub fn Fl_Single_Window_do_callback(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_inside(
        self_: *const Fl_Single_Window,
        arg1: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_window(arg1: *const Fl_Single_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_top_window(arg1: *const Fl_Single_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_takes_events(arg1: *const Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_user_data(arg1: *const Fl_Single_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_take_focus(self_: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_set_visible_focus(self_: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_clear_visible_focus(self_: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_visible_focus(self_: *mut Fl_Single_Window, v: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_has_visible_focus(self_: *mut Fl_Single_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Single_Window_set_user_data(
        arg1: *mut Fl_Single_Window,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Single_Window_draw_data(self_: *const Fl_Single_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_handle_data(self_: *const Fl_Single_Window)
        -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_set_draw_data(
        self_: *mut Fl_Single_Window,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Single_Window_set_handle_data(
        self_: *mut Fl_Single_Window,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Single_Window_damage(self_: *const Fl_Single_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Single_Window_set_damage(self_: *mut Fl_Single_Window, flag: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Single_Window_set_damage_area(
        self_: *mut Fl_Single_Window,
        flag: ::core::ffi::c_uchar,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        w: ::core::ffi::c_int,
        h: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Single_Window_clear_damage(self_: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_as_window(self_: *mut Fl_Single_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_as_group(self_: *mut Fl_Single_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_set_deimage(
        arg1: *mut Fl_Single_Window,
        arg2: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Single_Window_deimage(arg1: *const Fl_Single_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_set_callback(
        arg1: *mut Fl_Single_Window,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Single_Window_visible(self_: *const Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_visible_r(self_: *const Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_active(self_: *const Fl_Single_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Single_Window_active_r(self_: *const Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_callback(self_: *const Fl_Single_Window) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Single_Window_set_deletion_callback(
        self_: *mut Fl_Single_Window,
        arg1: ::core::option::Option<
            unsafe extern "C" fn(arg1: *mut Fl_Widget, arg2: *mut ::core::ffi::c_void),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Single_Window_from_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Single_Window;
}
extern "C" {
    pub fn Fl_Single_Window_from_derived_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Single_Window;
}
extern "C" {
    pub fn Fl_Single_Window_super_draw(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_super_draw_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_super_handle_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_begin(self_: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_end(self_: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_find(
        self_: *mut Fl_Single_Window,
        arg1: *const ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_add(self_: *mut Fl_Single_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Single_Window_insert(
        self_: *mut Fl_Single_Window,
        arg1: *mut ::core::ffi::c_void,
        pos: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Single_Window_remove(self_: *mut Fl_Single_Window, wid: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Single_Window_remove_by_index(self_: *mut Fl_Single_Window, idx: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_clear(self_: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_children(self_: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_child(
        arg1: *mut Fl_Single_Window,
        index: ::core::ffi::c_int,
    ) -> *mut Fl_Widget;
}
extern "C" {
    pub fn Fl_Single_Window_resizable(self_: *mut Fl_Single_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Single_Window_set_clip_children(self_: *mut Fl_Single_Window, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_clip_children(self_: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_init_sizes(self_: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_draw_child(self_: *const Fl_Single_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Single_Window_update_child(self_: *const Fl_Single_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Single_Window_draw_outside_label(self_: *const Fl_Single_Window, w: *const Fl_Widget);
}
extern "C" {
    pub fn Fl_Single_Window_draw_children(self_: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_make_modal(arg1: *mut Fl_Single_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Single_Window_fullscreen(arg1: *mut Fl_Single_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Single_Window_make_current(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_set_icon(arg1: *mut Fl_Single_Window, arg2: *const ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Single_Window_icon(arg1: *const Fl_Single_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_set_cursor(self_: *mut Fl_Single_Window, cursor: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_shown(self_: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_raw_handle(w: *const Fl_Single_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_set_border(arg1: *mut Fl_Single_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_border(arg1: *const Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_region(self_: *const Fl_Single_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_set_region(self_: *mut Fl_Single_Window, r: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Single_Window_iconize(self_: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_fullscreen_active(
        self_: *const Fl_Single_Window,
    ) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Single_Window_free_position(self_: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_decorated_w(self_: *const Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_decorated_h(self_: *const Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_size_range(
        self_: *mut Fl_Single_Window,
        arg1: ::core::ffi::c_int,
        arg2: ::core::ffi::c_int,
        arg3: ::core::ffi::c_int,
        arg4: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Single_Window_hotspot(self_: *mut Fl_Single_Window, wid: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Single_Window_set_shape(
        self_: *mut Fl_Single_Window,
        image: *const ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Single_Window_shape(self_: *mut Fl_Single_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Single_Window_x_root(self_: *const Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_y_root(self_: *const Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_set_cursor_image(
        self_: *mut Fl_Single_Window,
        image: *const ::core::ffi::c_void,
        hot_x: ::core::ffi::c_int,
        hot_y: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Single_Window_default_cursor(
        self_: *mut Fl_Single_Window,
        cursor: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Single_Window_screen_num(arg1: *mut Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_set_screen_num(
        arg1: *mut Fl_Single_Window,
        screen_num: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Single_Window_wait_for_expose(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_set_alpha(self_: *mut Fl_Single_Window, val: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Single_Window_alpha(self_: *const Fl_Single_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Single_Window_force_position(self_: *mut Fl_Single_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Single_Window_default_xclass() -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Single_Window_xclass(self_: *const Fl_Single_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Single_Window_set_default_xclass(s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Single_Window_set_xclass(self_: *mut Fl_Single_Window, s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Single_Window_clear_modal_states(self_: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_set_override(arg1: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_override(arg1: *const Fl_Single_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Single_Window_icon_label(arg1: *const Fl_Single_Window)
        -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Single_Window_set_icon_label(
        arg1: *mut Fl_Single_Window,
        arg2: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Single_Window_set_icons(
        w: *mut Fl_Single_Window,
        images: *mut *const ::core::ffi::c_void,
        length: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Single_Window_maximize(w: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_un_maximize(w: *mut Fl_Single_Window);
}
extern "C" {
    pub fn Fl_Single_Window_maximize_active(w: *const Fl_Single_Window) -> ::core::ffi::c_uint;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Double_Window {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Double_Window_new(
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
        title: *const ::core::ffi::c_char,
    ) -> *mut Fl_Double_Window;
}
extern "C" {
    pub fn Fl_Double_Window_x(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_y(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_width(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_height(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_label(arg1: *mut Fl_Double_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Double_Window_set_label(
        arg1: *mut Fl_Double_Window,
        title: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Double_Window_redraw(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_show(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_hide(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_activate(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_deactivate(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_redraw_label(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_resize(
        arg1: *mut Fl_Double_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Double_Window_widget_resize(
        arg1: *mut Fl_Double_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Double_Window_tooltip(arg1: *mut Fl_Double_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Double_Window_set_tooltip(
        arg1: *mut Fl_Double_Window,
        txt: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Double_Window_get_type(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_set_type(arg1: *mut Fl_Double_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_color(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Double_Window_set_color(arg1: *mut Fl_Double_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Double_Window_measure_label(
        arg1: *const Fl_Double_Window,
        arg2: *mut ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Double_Window_label_color(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Double_Window_set_label_color(
        arg1: *mut Fl_Double_Window,
        color: ::core::ffi::c_uint,
    );
}
extern "C" {
    pub fn Fl_Double_Window_label_font(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_set_label_font(arg1: *mut Fl_Double_Window, font: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_label_size(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_set_label_size(arg1: *mut Fl_Double_Window, sz: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_label_type(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_set_label_type(arg1: *mut Fl_Double_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_box(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_set_box(arg1: *mut Fl_Double_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_changed(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_set_changed(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_clear_changed(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_align(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_set_align(arg1: *mut Fl_Double_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_delete(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_set_image(arg1: *mut Fl_Double_Window, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Double_Window_handle(
        self_: *mut Fl_Double_Window,
        cb: custom_handler_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Double_Window_handle_event(
        self_: *mut Fl_Double_Window,
        event: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_draw(
        self_: *mut Fl_Double_Window,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Double_Window_resize_callback(
        self_: *mut Fl_Double_Window,
        cb: ::core::option::Option<
            unsafe extern "C" fn(
                arg1: *mut Fl_Widget,
                x: ::core::ffi::c_int,
                y: ::core::ffi::c_int,
                w: ::core::ffi::c_int,
                h: ::core::ffi::c_int,
                arg2: *mut ::core::ffi::c_void,
            ),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Double_Window_set_when(arg1: *mut Fl_Double_Window, arg2: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_when(arg1: *const Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_image(arg1: *const Fl_Double_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_parent(self_: *const Fl_Double_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_selection_color(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Double_Window_set_selection_color(
        arg1: *mut Fl_Double_Window,
        color: ::core::ffi::c_uint,
    );
}
extern "C" {
    pub fn Fl_Double_Window_do_callback(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_inside(
        self_: *const Fl_Double_Window,
        arg1: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_window(arg1: *const Fl_Double_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_top_window(arg1: *const Fl_Double_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_takes_events(arg1: *const Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_user_data(arg1: *const Fl_Double_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_take_focus(self_: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_set_visible_focus(self_: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_clear_visible_focus(self_: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_visible_focus(self_: *mut Fl_Double_Window, v: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_has_visible_focus(self_: *mut Fl_Double_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Double_Window_set_user_data(
        arg1: *mut Fl_Double_Window,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Double_Window_draw_data(self_: *const Fl_Double_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_handle_data(self_: *const Fl_Double_Window)
        -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_set_draw_data(
        self_: *mut Fl_Double_Window,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Double_Window_set_handle_data(
        self_: *mut Fl_Double_Window,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Double_Window_damage(self_: *const Fl_Double_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Double_Window_set_damage(self_: *mut Fl_Double_Window, flag: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Double_Window_set_damage_area(
        self_: *mut Fl_Double_Window,
        flag: ::core::ffi::c_uchar,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        w: ::core::ffi::c_int,
        h: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Double_Window_clear_damage(self_: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_as_window(self_: *mut Fl_Double_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_as_group(self_: *mut Fl_Double_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_set_deimage(
        arg1: *mut Fl_Double_Window,
        arg2: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Double_Window_deimage(arg1: *const Fl_Double_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_set_callback(
        arg1: *mut Fl_Double_Window,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Double_Window_visible(self_: *const Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_visible_r(self_: *const Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_active(self_: *const Fl_Double_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Double_Window_active_r(self_: *const Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_callback(self_: *const Fl_Double_Window) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Double_Window_set_deletion_callback(
        self_: *mut Fl_Double_Window,
        arg1: ::core::option::Option<
            unsafe extern "C" fn(arg1: *mut Fl_Widget, arg2: *mut ::core::ffi::c_void),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Double_Window_from_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Double_Window;
}
extern "C" {
    pub fn Fl_Double_Window_from_derived_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Double_Window;
}
extern "C" {
    pub fn Fl_Double_Window_super_draw(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_super_draw_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_super_handle_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_flush(w: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_begin(self_: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_end(self_: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_find(
        self_: *mut Fl_Double_Window,
        arg1: *const ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_add(self_: *mut Fl_Double_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Double_Window_insert(
        self_: *mut Fl_Double_Window,
        arg1: *mut ::core::ffi::c_void,
        pos: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Double_Window_remove(self_: *mut Fl_Double_Window, wid: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Double_Window_remove_by_index(self_: *mut Fl_Double_Window, idx: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_clear(self_: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_children(self_: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_child(
        arg1: *mut Fl_Double_Window,
        index: ::core::ffi::c_int,
    ) -> *mut Fl_Widget;
}
extern "C" {
    pub fn Fl_Double_Window_resizable(self_: *mut Fl_Double_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Double_Window_set_clip_children(self_: *mut Fl_Double_Window, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_clip_children(self_: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_init_sizes(self_: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_draw_child(self_: *const Fl_Double_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Double_Window_update_child(self_: *const Fl_Double_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Double_Window_draw_outside_label(self_: *const Fl_Double_Window, w: *const Fl_Widget);
}
extern "C" {
    pub fn Fl_Double_Window_draw_children(self_: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_make_modal(arg1: *mut Fl_Double_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Double_Window_fullscreen(arg1: *mut Fl_Double_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Double_Window_make_current(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_set_icon(arg1: *mut Fl_Double_Window, arg2: *const ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Double_Window_icon(arg1: *const Fl_Double_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_set_cursor(self_: *mut Fl_Double_Window, cursor: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_shown(self_: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_raw_handle(w: *const Fl_Double_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_set_border(arg1: *mut Fl_Double_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_border(arg1: *const Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_region(self_: *const Fl_Double_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_set_region(self_: *mut Fl_Double_Window, r: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Double_Window_iconize(self_: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_fullscreen_active(
        self_: *const Fl_Double_Window,
    ) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Double_Window_free_position(self_: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_decorated_w(self_: *const Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_decorated_h(self_: *const Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_size_range(
        self_: *mut Fl_Double_Window,
        arg1: ::core::ffi::c_int,
        arg2: ::core::ffi::c_int,
        arg3: ::core::ffi::c_int,
        arg4: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Double_Window_hotspot(self_: *mut Fl_Double_Window, wid: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Double_Window_set_shape(
        self_: *mut Fl_Double_Window,
        image: *const ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Double_Window_shape(self_: *mut Fl_Double_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Double_Window_x_root(self_: *const Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_y_root(self_: *const Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_set_cursor_image(
        self_: *mut Fl_Double_Window,
        image: *const ::core::ffi::c_void,
        hot_x: ::core::ffi::c_int,
        hot_y: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Double_Window_default_cursor(
        self_: *mut Fl_Double_Window,
        cursor: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Double_Window_screen_num(arg1: *mut Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_set_screen_num(
        arg1: *mut Fl_Double_Window,
        screen_num: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Double_Window_wait_for_expose(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_set_alpha(self_: *mut Fl_Double_Window, val: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Double_Window_alpha(self_: *const Fl_Double_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Double_Window_force_position(self_: *mut Fl_Double_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Double_Window_default_xclass() -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Double_Window_xclass(self_: *const Fl_Double_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Double_Window_set_default_xclass(s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Double_Window_set_xclass(self_: *mut Fl_Double_Window, s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Double_Window_clear_modal_states(self_: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_set_override(arg1: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_override(arg1: *const Fl_Double_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Double_Window_icon_label(arg1: *const Fl_Double_Window)
        -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Double_Window_set_icon_label(
        arg1: *mut Fl_Double_Window,
        arg2: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Double_Window_set_icons(
        w: *mut Fl_Double_Window,
        images: *mut *const ::core::ffi::c_void,
        length: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Double_Window_maximize(w: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_un_maximize(w: *mut Fl_Double_Window);
}
extern "C" {
    pub fn Fl_Double_Window_maximize_active(w: *const Fl_Double_Window) -> ::core::ffi::c_uint;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Menu_Window {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Menu_Window_new(
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
        title: *const ::core::ffi::c_char,
    ) -> *mut Fl_Menu_Window;
}
extern "C" {
    pub fn Fl_Menu_Window_x(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_y(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_width(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_height(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_label(arg1: *mut Fl_Menu_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Window_set_label(arg1: *mut Fl_Menu_Window, title: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Menu_Window_redraw(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_show(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_hide(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_activate(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_deactivate(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_redraw_label(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_resize(
        arg1: *mut Fl_Menu_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_widget_resize(
        arg1: *mut Fl_Menu_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_tooltip(arg1: *mut Fl_Menu_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Window_set_tooltip(arg1: *mut Fl_Menu_Window, txt: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Menu_Window_get_type(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_set_type(arg1: *mut Fl_Menu_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_color(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Window_set_color(arg1: *mut Fl_Menu_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Window_measure_label(
        arg1: *const Fl_Menu_Window,
        arg2: *mut ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_label_color(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Window_set_label_color(arg1: *mut Fl_Menu_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Window_label_font(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_set_label_font(arg1: *mut Fl_Menu_Window, font: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_label_size(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_set_label_size(arg1: *mut Fl_Menu_Window, sz: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_label_type(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_set_label_type(arg1: *mut Fl_Menu_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_box(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_set_box(arg1: *mut Fl_Menu_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_changed(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_set_changed(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_clear_changed(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_align(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_set_align(arg1: *mut Fl_Menu_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_delete(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_set_image(arg1: *mut Fl_Menu_Window, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Window_handle(
        self_: *mut Fl_Menu_Window,
        cb: custom_handler_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_handle_event(
        self_: *mut Fl_Menu_Window,
        event: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_draw(
        self_: *mut Fl_Menu_Window,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_resize_callback(
        self_: *mut Fl_Menu_Window,
        cb: ::core::option::Option<
            unsafe extern "C" fn(
                arg1: *mut Fl_Widget,
                x: ::core::ffi::c_int,
                y: ::core::ffi::c_int,
                w: ::core::ffi::c_int,
                h: ::core::ffi::c_int,
                arg2: *mut ::core::ffi::c_void,
            ),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_set_when(arg1: *mut Fl_Menu_Window, arg2: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_when(arg1: *const Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_image(arg1: *const Fl_Menu_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_parent(self_: *const Fl_Menu_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_selection_color(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Window_set_selection_color(
        arg1: *mut Fl_Menu_Window,
        color: ::core::ffi::c_uint,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_do_callback(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_inside(
        self_: *const Fl_Menu_Window,
        arg1: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_window(arg1: *const Fl_Menu_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_top_window(arg1: *const Fl_Menu_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_takes_events(arg1: *const Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_user_data(arg1: *const Fl_Menu_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_take_focus(self_: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_set_visible_focus(self_: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_clear_visible_focus(self_: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_visible_focus(self_: *mut Fl_Menu_Window, v: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_has_visible_focus(self_: *mut Fl_Menu_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Window_set_user_data(arg1: *mut Fl_Menu_Window, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Window_draw_data(self_: *const Fl_Menu_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_handle_data(self_: *const Fl_Menu_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_set_draw_data(self_: *mut Fl_Menu_Window, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Window_set_handle_data(
        self_: *mut Fl_Menu_Window,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_damage(self_: *const Fl_Menu_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Menu_Window_set_damage(self_: *mut Fl_Menu_Window, flag: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Menu_Window_set_damage_area(
        self_: *mut Fl_Menu_Window,
        flag: ::core::ffi::c_uchar,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        w: ::core::ffi::c_int,
        h: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_clear_damage(self_: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_as_window(self_: *mut Fl_Menu_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_as_group(self_: *mut Fl_Menu_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_set_deimage(arg1: *mut Fl_Menu_Window, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Window_deimage(arg1: *const Fl_Menu_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_set_callback(
        arg1: *mut Fl_Menu_Window,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_visible(self_: *const Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_visible_r(self_: *const Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_active(self_: *const Fl_Menu_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Window_active_r(self_: *const Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_callback(self_: *const Fl_Menu_Window) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Menu_Window_set_deletion_callback(
        self_: *mut Fl_Menu_Window,
        arg1: ::core::option::Option<
            unsafe extern "C" fn(arg1: *mut Fl_Widget, arg2: *mut ::core::ffi::c_void),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_from_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Menu_Window;
}
extern "C" {
    pub fn Fl_Menu_Window_from_derived_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Menu_Window;
}
extern "C" {
    pub fn Fl_Menu_Window_super_draw(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_super_draw_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_super_handle_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_begin(self_: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_end(self_: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_find(
        self_: *mut Fl_Menu_Window,
        arg1: *const ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_add(self_: *mut Fl_Menu_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Window_insert(
        self_: *mut Fl_Menu_Window,
        arg1: *mut ::core::ffi::c_void,
        pos: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_remove(self_: *mut Fl_Menu_Window, wid: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Window_remove_by_index(self_: *mut Fl_Menu_Window, idx: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_clear(self_: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_children(self_: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_child(
        arg1: *mut Fl_Menu_Window,
        index: ::core::ffi::c_int,
    ) -> *mut Fl_Widget;
}
extern "C" {
    pub fn Fl_Menu_Window_resizable(self_: *mut Fl_Menu_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Window_set_clip_children(self_: *mut Fl_Menu_Window, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_clip_children(self_: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_init_sizes(self_: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_draw_child(self_: *const Fl_Menu_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Menu_Window_update_child(self_: *const Fl_Menu_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Menu_Window_draw_outside_label(self_: *const Fl_Menu_Window, w: *const Fl_Widget);
}
extern "C" {
    pub fn Fl_Menu_Window_draw_children(self_: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_make_modal(arg1: *mut Fl_Menu_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Window_fullscreen(arg1: *mut Fl_Menu_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Window_make_current(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_set_icon(arg1: *mut Fl_Menu_Window, arg2: *const ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Window_icon(arg1: *const Fl_Menu_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_set_cursor(self_: *mut Fl_Menu_Window, cursor: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_shown(self_: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_raw_handle(w: *const Fl_Menu_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_set_border(arg1: *mut Fl_Menu_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_border(arg1: *const Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_region(self_: *const Fl_Menu_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_set_region(self_: *mut Fl_Menu_Window, r: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Window_iconize(self_: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_fullscreen_active(self_: *const Fl_Menu_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Window_free_position(self_: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_decorated_w(self_: *const Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_decorated_h(self_: *const Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_size_range(
        self_: *mut Fl_Menu_Window,
        arg1: ::core::ffi::c_int,
        arg2: ::core::ffi::c_int,
        arg3: ::core::ffi::c_int,
        arg4: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_hotspot(self_: *mut Fl_Menu_Window, wid: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Menu_Window_set_shape(self_: *mut Fl_Menu_Window, image: *const ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Window_shape(self_: *mut Fl_Menu_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Window_x_root(self_: *const Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_y_root(self_: *const Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_set_cursor_image(
        self_: *mut Fl_Menu_Window,
        image: *const ::core::ffi::c_void,
        hot_x: ::core::ffi::c_int,
        hot_y: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_default_cursor(self_: *mut Fl_Menu_Window, cursor: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_screen_num(arg1: *mut Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_set_screen_num(arg1: *mut Fl_Menu_Window, screen_num: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_wait_for_expose(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_set_alpha(self_: *mut Fl_Menu_Window, val: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Menu_Window_alpha(self_: *const Fl_Menu_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Menu_Window_force_position(self_: *mut Fl_Menu_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Window_default_xclass() -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Window_xclass(self_: *const Fl_Menu_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Window_set_default_xclass(s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Menu_Window_set_xclass(self_: *mut Fl_Menu_Window, s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Menu_Window_clear_modal_states(self_: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_set_override(arg1: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_override(arg1: *const Fl_Menu_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Window_icon_label(arg1: *const Fl_Menu_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Window_set_icon_label(
        arg1: *mut Fl_Menu_Window,
        arg2: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_set_icons(
        w: *mut Fl_Menu_Window,
        images: *mut *const ::core::ffi::c_void,
        length: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Window_maximize(w: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_un_maximize(w: *mut Fl_Menu_Window);
}
extern "C" {
    pub fn Fl_Menu_Window_maximize_active(w: *const Fl_Menu_Window) -> ::core::ffi::c_uint;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Overlay_Window {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Overlay_Window_new(
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
        title: *const ::core::ffi::c_char,
    ) -> *mut Fl_Overlay_Window;
}
extern "C" {
    pub fn Fl_Overlay_Window_x(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_y(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_width(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_height(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_label(arg1: *mut Fl_Overlay_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_label(
        arg1: *mut Fl_Overlay_Window,
        title: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_redraw(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_show(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_hide(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_activate(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_deactivate(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_redraw_label(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_resize(
        arg1: *mut Fl_Overlay_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_widget_resize(
        arg1: *mut Fl_Overlay_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_tooltip(arg1: *mut Fl_Overlay_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_tooltip(
        arg1: *mut Fl_Overlay_Window,
        txt: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_get_type(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_type(arg1: *mut Fl_Overlay_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_color(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_color(arg1: *mut Fl_Overlay_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Overlay_Window_measure_label(
        arg1: *const Fl_Overlay_Window,
        arg2: *mut ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_label_color(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_label_color(
        arg1: *mut Fl_Overlay_Window,
        color: ::core::ffi::c_uint,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_label_font(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_label_font(arg1: *mut Fl_Overlay_Window, font: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_label_size(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_label_size(arg1: *mut Fl_Overlay_Window, sz: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_label_type(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_label_type(arg1: *mut Fl_Overlay_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_box(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_box(arg1: *mut Fl_Overlay_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_changed(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_changed(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_clear_changed(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_align(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_align(arg1: *mut Fl_Overlay_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_delete(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_set_image(
        arg1: *mut Fl_Overlay_Window,
        arg2: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_handle(
        self_: *mut Fl_Overlay_Window,
        cb: custom_handler_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_handle_event(
        self_: *mut Fl_Overlay_Window,
        event: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_draw(
        self_: *mut Fl_Overlay_Window,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_resize_callback(
        self_: *mut Fl_Overlay_Window,
        cb: ::core::option::Option<
            unsafe extern "C" fn(
                arg1: *mut Fl_Widget,
                x: ::core::ffi::c_int,
                y: ::core::ffi::c_int,
                w: ::core::ffi::c_int,
                h: ::core::ffi::c_int,
                arg2: *mut ::core::ffi::c_void,
            ),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_set_when(arg1: *mut Fl_Overlay_Window, arg2: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_when(arg1: *const Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_image(arg1: *const Fl_Overlay_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_parent(self_: *const Fl_Overlay_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_selection_color(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_selection_color(
        arg1: *mut Fl_Overlay_Window,
        color: ::core::ffi::c_uint,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_do_callback(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_inside(
        self_: *const Fl_Overlay_Window,
        arg1: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_window(arg1: *const Fl_Overlay_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_top_window(arg1: *const Fl_Overlay_Window)
        -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_takes_events(arg1: *const Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_user_data(arg1: *const Fl_Overlay_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_take_focus(self_: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_visible_focus(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_clear_visible_focus(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_visible_focus(self_: *mut Fl_Overlay_Window, v: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_has_visible_focus(
        self_: *mut Fl_Overlay_Window,
    ) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_user_data(
        arg1: *mut Fl_Overlay_Window,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_draw_data(self_: *const Fl_Overlay_Window)
        -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_handle_data(
        self_: *const Fl_Overlay_Window,
    ) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_draw_data(
        self_: *mut Fl_Overlay_Window,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_set_handle_data(
        self_: *mut Fl_Overlay_Window,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_damage(self_: *const Fl_Overlay_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_damage(self_: *mut Fl_Overlay_Window, flag: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Overlay_Window_set_damage_area(
        self_: *mut Fl_Overlay_Window,
        flag: ::core::ffi::c_uchar,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        w: ::core::ffi::c_int,
        h: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_clear_damage(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_as_window(self_: *mut Fl_Overlay_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_as_group(self_: *mut Fl_Overlay_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_deimage(
        arg1: *mut Fl_Overlay_Window,
        arg2: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_deimage(arg1: *const Fl_Overlay_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_callback(
        arg1: *mut Fl_Overlay_Window,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_visible(self_: *const Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_visible_r(self_: *const Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_active(self_: *const Fl_Overlay_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Overlay_Window_active_r(self_: *const Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_callback(self_: *const Fl_Overlay_Window) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_deletion_callback(
        self_: *mut Fl_Overlay_Window,
        arg1: ::core::option::Option<
            unsafe extern "C" fn(arg1: *mut Fl_Widget, arg2: *mut ::core::ffi::c_void),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_from_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Overlay_Window;
}
extern "C" {
    pub fn Fl_Overlay_Window_from_derived_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Overlay_Window;
}
extern "C" {
    pub fn Fl_Overlay_Window_super_draw(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_super_draw_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_super_handle_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_begin(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_end(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_find(
        self_: *mut Fl_Overlay_Window,
        arg1: *const ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_add(self_: *mut Fl_Overlay_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Overlay_Window_insert(
        self_: *mut Fl_Overlay_Window,
        arg1: *mut ::core::ffi::c_void,
        pos: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_remove(self_: *mut Fl_Overlay_Window, wid: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Overlay_Window_remove_by_index(
        self_: *mut Fl_Overlay_Window,
        idx: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_clear(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_children(self_: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_child(
        arg1: *mut Fl_Overlay_Window,
        index: ::core::ffi::c_int,
    ) -> *mut Fl_Widget;
}
extern "C" {
    pub fn Fl_Overlay_Window_resizable(
        self_: *mut Fl_Overlay_Window,
        arg1: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_set_clip_children(
        self_: *mut Fl_Overlay_Window,
        c: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_clip_children(self_: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_init_sizes(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_draw_child(self_: *const Fl_Overlay_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Overlay_Window_update_child(self_: *const Fl_Overlay_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Overlay_Window_draw_outside_label(
        self_: *const Fl_Overlay_Window,
        w: *const Fl_Widget,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_draw_children(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_draw_overlay(
        self_: *mut Fl_Overlay_Window,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_redraw_overlay(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_can_do_overlay(self_: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_make_modal(arg1: *mut Fl_Overlay_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Overlay_Window_fullscreen(arg1: *mut Fl_Overlay_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Overlay_Window_make_current(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_set_icon(
        arg1: *mut Fl_Overlay_Window,
        arg2: *const ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_icon(arg1: *const Fl_Overlay_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_cursor(self_: *mut Fl_Overlay_Window, cursor: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_shown(self_: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_raw_handle(w: *const Fl_Overlay_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_border(arg1: *mut Fl_Overlay_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Overlay_Window_border(arg1: *const Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_region(self_: *const Fl_Overlay_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_region(self_: *mut Fl_Overlay_Window, r: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Overlay_Window_iconize(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_fullscreen_active(
        self_: *const Fl_Overlay_Window,
    ) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Overlay_Window_free_position(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_decorated_w(self_: *const Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_decorated_h(self_: *const Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_size_range(
        self_: *mut Fl_Overlay_Window,
        arg1: ::core::ffi::c_int,
        arg2: ::core::ffi::c_int,
        arg3: ::core::ffi::c_int,
        arg4: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_hotspot(self_: *mut Fl_Overlay_Window, wid: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Overlay_Window_set_shape(
        self_: *mut Fl_Overlay_Window,
        image: *const ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_shape(self_: *mut Fl_Overlay_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Overlay_Window_x_root(self_: *const Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_y_root(self_: *const Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_cursor_image(
        self_: *mut Fl_Overlay_Window,
        image: *const ::core::ffi::c_void,
        hot_x: ::core::ffi::c_int,
        hot_y: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_default_cursor(
        self_: *mut Fl_Overlay_Window,
        cursor: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_screen_num(arg1: *mut Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_screen_num(
        arg1: *mut Fl_Overlay_Window,
        screen_num: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_wait_for_expose(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_set_alpha(self_: *mut Fl_Overlay_Window, val: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Overlay_Window_alpha(self_: *const Fl_Overlay_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Overlay_Window_force_position(
        self_: *mut Fl_Overlay_Window,
        flag: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_default_xclass() -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Overlay_Window_xclass(self_: *const Fl_Overlay_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_default_xclass(s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Overlay_Window_set_xclass(
        self_: *mut Fl_Overlay_Window,
        s: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_clear_modal_states(self_: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_set_override(arg1: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_override(arg1: *const Fl_Overlay_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Overlay_Window_icon_label(
        arg1: *const Fl_Overlay_Window,
    ) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Overlay_Window_set_icon_label(
        arg1: *mut Fl_Overlay_Window,
        arg2: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_set_icons(
        w: *mut Fl_Overlay_Window,
        images: *mut *const ::core::ffi::c_void,
        length: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Overlay_Window_maximize(w: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_un_maximize(w: *mut Fl_Overlay_Window);
}
extern "C" {
    pub fn Fl_Overlay_Window_maximize_active(w: *const Fl_Overlay_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_gl_start();
}
extern "C" {
    pub fn Fl_gl_finish();
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Gl_Window {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Gl_Window_new(
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
        title: *const ::core::ffi::c_char,
    ) -> *mut Fl_Gl_Window;
}
extern "C" {
    pub fn Fl_Gl_Window_x(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_y(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_width(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_height(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_label(arg1: *mut Fl_Gl_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Gl_Window_set_label(arg1: *mut Fl_Gl_Window, title: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Gl_Window_redraw(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_show(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_hide(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_activate(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_deactivate(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_redraw_label(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_resize(
        arg1: *mut Fl_Gl_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_widget_resize(
        arg1: *mut Fl_Gl_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_tooltip(arg1: *mut Fl_Gl_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Gl_Window_set_tooltip(arg1: *mut Fl_Gl_Window, txt: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Gl_Window_get_type(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_set_type(arg1: *mut Fl_Gl_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_color(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Gl_Window_set_color(arg1: *mut Fl_Gl_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Gl_Window_measure_label(
        arg1: *const Fl_Gl_Window,
        arg2: *mut ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_label_color(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Gl_Window_set_label_color(arg1: *mut Fl_Gl_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Gl_Window_label_font(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_set_label_font(arg1: *mut Fl_Gl_Window, font: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_label_size(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_set_label_size(arg1: *mut Fl_Gl_Window, sz: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_label_type(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_set_label_type(arg1: *mut Fl_Gl_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_box(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_set_box(arg1: *mut Fl_Gl_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_changed(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_set_changed(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_clear_changed(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_align(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_set_align(arg1: *mut Fl_Gl_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_delete(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_set_image(arg1: *mut Fl_Gl_Window, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Gl_Window_handle(
        self_: *mut Fl_Gl_Window,
        cb: custom_handler_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_handle_event(
        self_: *mut Fl_Gl_Window,
        event: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_draw(
        self_: *mut Fl_Gl_Window,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_resize_callback(
        self_: *mut Fl_Gl_Window,
        cb: ::core::option::Option<
            unsafe extern "C" fn(
                arg1: *mut Fl_Widget,
                x: ::core::ffi::c_int,
                y: ::core::ffi::c_int,
                w: ::core::ffi::c_int,
                h: ::core::ffi::c_int,
                arg2: *mut ::core::ffi::c_void,
            ),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_set_when(arg1: *mut Fl_Gl_Window, arg2: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_when(arg1: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_image(arg1: *const Fl_Gl_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_parent(self_: *const Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_selection_color(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Gl_Window_set_selection_color(arg1: *mut Fl_Gl_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Gl_Window_do_callback(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_inside(
        self_: *const Fl_Gl_Window,
        arg1: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_window(arg1: *const Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_top_window(arg1: *const Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_takes_events(arg1: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_user_data(arg1: *const Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_take_focus(self_: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_set_visible_focus(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_clear_visible_focus(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_visible_focus(self_: *mut Fl_Gl_Window, v: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_has_visible_focus(self_: *mut Fl_Gl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Gl_Window_set_user_data(arg1: *mut Fl_Gl_Window, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Gl_Window_draw_data(self_: *const Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_handle_data(self_: *const Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_set_draw_data(self_: *mut Fl_Gl_Window, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Gl_Window_set_handle_data(self_: *mut Fl_Gl_Window, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Gl_Window_damage(self_: *const Fl_Gl_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Gl_Window_set_damage(self_: *mut Fl_Gl_Window, flag: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Gl_Window_set_damage_area(
        self_: *mut Fl_Gl_Window,
        flag: ::core::ffi::c_uchar,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        w: ::core::ffi::c_int,
        h: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_clear_damage(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_as_window(self_: *mut Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_as_group(self_: *mut Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_set_deimage(arg1: *mut Fl_Gl_Window, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Gl_Window_deimage(arg1: *const Fl_Gl_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_set_callback(
        arg1: *mut Fl_Gl_Window,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_visible(self_: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_visible_r(self_: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_active(self_: *const Fl_Gl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Gl_Window_active_r(self_: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_callback(self_: *const Fl_Gl_Window) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Gl_Window_set_deletion_callback(
        self_: *mut Fl_Gl_Window,
        arg1: ::core::option::Option<
            unsafe extern "C" fn(arg1: *mut Fl_Widget, arg2: *mut ::core::ffi::c_void),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_from_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Gl_Window;
}
extern "C" {
    pub fn Fl_Gl_Window_from_derived_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Gl_Window;
}
extern "C" {
    pub fn Fl_Gl_Window_super_draw(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_super_draw_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_super_handle_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_begin(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_end(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_find(
        self_: *mut Fl_Gl_Window,
        arg1: *const ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_add(self_: *mut Fl_Gl_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Gl_Window_insert(
        self_: *mut Fl_Gl_Window,
        arg1: *mut ::core::ffi::c_void,
        pos: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_remove(self_: *mut Fl_Gl_Window, wid: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Gl_Window_remove_by_index(self_: *mut Fl_Gl_Window, idx: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_clear(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_children(self_: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_child(arg1: *mut Fl_Gl_Window, index: ::core::ffi::c_int)
        -> *mut Fl_Widget;
}
extern "C" {
    pub fn Fl_Gl_Window_resizable(self_: *mut Fl_Gl_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Gl_Window_set_clip_children(self_: *mut Fl_Gl_Window, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_clip_children(self_: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_init_sizes(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_draw_child(self_: *const Fl_Gl_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Gl_Window_update_child(self_: *const Fl_Gl_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Gl_Window_draw_outside_label(self_: *const Fl_Gl_Window, w: *const Fl_Widget);
}
extern "C" {
    pub fn Fl_Gl_Window_draw_children(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_make_modal(arg1: *mut Fl_Gl_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Gl_Window_fullscreen(arg1: *mut Fl_Gl_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Gl_Window_make_current(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_set_icon(arg1: *mut Fl_Gl_Window, arg2: *const ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Gl_Window_icon(arg1: *const Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_set_cursor(self_: *mut Fl_Gl_Window, cursor: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_shown(self_: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_raw_handle(w: *const Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_set_border(arg1: *mut Fl_Gl_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_border(arg1: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_region(self_: *const Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_set_region(self_: *mut Fl_Gl_Window, r: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Gl_Window_iconize(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_fullscreen_active(self_: *const Fl_Gl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Gl_Window_free_position(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_decorated_w(self_: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_decorated_h(self_: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_size_range(
        self_: *mut Fl_Gl_Window,
        arg1: ::core::ffi::c_int,
        arg2: ::core::ffi::c_int,
        arg3: ::core::ffi::c_int,
        arg4: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_hotspot(self_: *mut Fl_Gl_Window, wid: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Gl_Window_set_shape(self_: *mut Fl_Gl_Window, image: *const ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Gl_Window_shape(self_: *mut Fl_Gl_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_x_root(self_: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_y_root(self_: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_set_cursor_image(
        self_: *mut Fl_Gl_Window,
        image: *const ::core::ffi::c_void,
        hot_x: ::core::ffi::c_int,
        hot_y: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_default_cursor(self_: *mut Fl_Gl_Window, cursor: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_screen_num(arg1: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_set_screen_num(arg1: *mut Fl_Gl_Window, screen_num: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_wait_for_expose(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_set_alpha(self_: *mut Fl_Gl_Window, val: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Gl_Window_alpha(self_: *const Fl_Gl_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Gl_Window_force_position(self_: *mut Fl_Gl_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_default_xclass() -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Gl_Window_xclass(self_: *const Fl_Gl_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Gl_Window_set_default_xclass(s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Gl_Window_set_xclass(self_: *mut Fl_Gl_Window, s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Gl_Window_clear_modal_states(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_set_override(arg1: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_override(arg1: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_icon_label(arg1: *const Fl_Gl_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Gl_Window_set_icon_label(arg1: *mut Fl_Gl_Window, arg2: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Gl_Window_set_icons(
        w: *mut Fl_Gl_Window,
        images: *mut *const ::core::ffi::c_void,
        length: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_maximize(w: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_un_maximize(w: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_maximize_active(w: *const Fl_Gl_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Gl_Window_flush(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_valid(self_: *const Fl_Gl_Window) -> ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Gl_Window_set_valid(self_: *mut Fl_Gl_Window, v: ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Gl_Window_context_valid(self_: *const Fl_Gl_Window) -> ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Gl_Window_set_context_valid(self_: *mut Fl_Gl_Window, v: ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Gl_Window_can_do(self_: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_context(self_: *const Fl_Gl_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Gl_Window_set_context(
        self_: *mut Fl_Gl_Window,
        ctx: *mut ::core::ffi::c_void,
        destroy_flag: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Gl_Window_swap_buffers(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_set_swap_interval(self_: *mut Fl_Gl_Window, frames: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_swap_interval(self_: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_ortho(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_can_do_overlay(self_: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_redraw_overlay(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_hide_overlay(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_make_overlay_current(self_: *mut Fl_Gl_Window);
}
extern "C" {
    pub fn Fl_Gl_Window_pixels_per_unit(self_: *mut Fl_Gl_Window) -> f32;
}
extern "C" {
    pub fn Fl_Gl_Window_pixel_w(self_: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_pixel_h(self_: *mut Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_mode(self_: *const Fl_Gl_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Gl_Window_set_mode(self_: *mut Fl_Gl_Window, mode: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Gl_Window_get_proc_address(
        self_: *mut Fl_Gl_Window,
        s: *const ::core::ffi::c_char,
    ) -> *mut ::core::ffi::c_void;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Glut_Window {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Glut_Window_new(
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
        title: *const ::core::ffi::c_char,
    ) -> *mut Fl_Glut_Window;
}
extern "C" {
    pub fn Fl_Glut_Window_x(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_y(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_width(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_height(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_label(arg1: *mut Fl_Glut_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Glut_Window_set_label(arg1: *mut Fl_Glut_Window, title: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Glut_Window_redraw(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_show(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_hide(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_activate(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_deactivate(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_redraw_label(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_resize(
        arg1: *mut Fl_Glut_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_widget_resize(
        arg1: *mut Fl_Glut_Window,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        width: ::core::ffi::c_int,
        height: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_tooltip(arg1: *mut Fl_Glut_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Glut_Window_set_tooltip(arg1: *mut Fl_Glut_Window, txt: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Glut_Window_get_type(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_set_type(arg1: *mut Fl_Glut_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_color(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Glut_Window_set_color(arg1: *mut Fl_Glut_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Glut_Window_measure_label(
        arg1: *const Fl_Glut_Window,
        arg2: *mut ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_label_color(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Glut_Window_set_label_color(arg1: *mut Fl_Glut_Window, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Glut_Window_label_font(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_set_label_font(arg1: *mut Fl_Glut_Window, font: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_label_size(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_set_label_size(arg1: *mut Fl_Glut_Window, sz: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_label_type(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_set_label_type(arg1: *mut Fl_Glut_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_box(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_set_box(arg1: *mut Fl_Glut_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_changed(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_set_changed(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_clear_changed(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_align(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_set_align(arg1: *mut Fl_Glut_Window, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_delete(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_set_image(arg1: *mut Fl_Glut_Window, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Glut_Window_handle(
        self_: *mut Fl_Glut_Window,
        cb: custom_handler_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_handle_event(
        self_: *mut Fl_Glut_Window,
        event: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_draw(
        self_: *mut Fl_Glut_Window,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_resize_callback(
        self_: *mut Fl_Glut_Window,
        cb: ::core::option::Option<
            unsafe extern "C" fn(
                arg1: *mut Fl_Widget,
                x: ::core::ffi::c_int,
                y: ::core::ffi::c_int,
                w: ::core::ffi::c_int,
                h: ::core::ffi::c_int,
                arg2: *mut ::core::ffi::c_void,
            ),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_set_when(arg1: *mut Fl_Glut_Window, arg2: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_when(arg1: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_image(arg1: *const Fl_Glut_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_parent(self_: *const Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_selection_color(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Glut_Window_set_selection_color(
        arg1: *mut Fl_Glut_Window,
        color: ::core::ffi::c_uint,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_do_callback(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_inside(
        self_: *const Fl_Glut_Window,
        arg1: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_window(arg1: *const Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_top_window(arg1: *const Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_takes_events(arg1: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_user_data(arg1: *const Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_take_focus(self_: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_set_visible_focus(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_clear_visible_focus(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_visible_focus(self_: *mut Fl_Glut_Window, v: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_has_visible_focus(self_: *mut Fl_Glut_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Glut_Window_set_user_data(arg1: *mut Fl_Glut_Window, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Glut_Window_draw_data(self_: *const Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_handle_data(self_: *const Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_set_draw_data(self_: *mut Fl_Glut_Window, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Glut_Window_set_handle_data(
        self_: *mut Fl_Glut_Window,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_damage(self_: *const Fl_Glut_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Glut_Window_set_damage(self_: *mut Fl_Glut_Window, flag: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Glut_Window_set_damage_area(
        self_: *mut Fl_Glut_Window,
        flag: ::core::ffi::c_uchar,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        w: ::core::ffi::c_int,
        h: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_clear_damage(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_as_window(self_: *mut Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_as_group(self_: *mut Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_set_deimage(arg1: *mut Fl_Glut_Window, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Glut_Window_deimage(arg1: *const Fl_Glut_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_set_callback(
        arg1: *mut Fl_Glut_Window,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_visible(self_: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_visible_r(self_: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_active(self_: *const Fl_Glut_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Glut_Window_active_r(self_: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_callback(self_: *const Fl_Glut_Window) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Glut_Window_set_deletion_callback(
        self_: *mut Fl_Glut_Window,
        arg1: ::core::option::Option<
            unsafe extern "C" fn(arg1: *mut Fl_Widget, arg2: *mut ::core::ffi::c_void),
        >,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_from_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Glut_Window;
}
extern "C" {
    pub fn Fl_Glut_Window_from_derived_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Glut_Window;
}
extern "C" {
    pub fn Fl_Glut_Window_super_draw(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_super_draw_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_super_handle_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_begin(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_end(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_find(
        self_: *mut Fl_Glut_Window,
        arg1: *const ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_add(self_: *mut Fl_Glut_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Glut_Window_insert(
        self_: *mut Fl_Glut_Window,
        arg1: *mut ::core::ffi::c_void,
        pos: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_remove(self_: *mut Fl_Glut_Window, wid: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Glut_Window_remove_by_index(self_: *mut Fl_Glut_Window, idx: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_clear(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_children(self_: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_child(
        arg1: *mut Fl_Glut_Window,
        index: ::core::ffi::c_int,
    ) -> *mut Fl_Widget;
}
extern "C" {
    pub fn Fl_Glut_Window_resizable(self_: *mut Fl_Glut_Window, arg1: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Glut_Window_set_clip_children(self_: *mut Fl_Glut_Window, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_clip_children(self_: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_init_sizes(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_draw_child(self_: *const Fl_Glut_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Glut_Window_update_child(self_: *const Fl_Glut_Window, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Glut_Window_draw_outside_label(self_: *const Fl_Glut_Window, w: *const Fl_Widget);
}
extern "C" {
    pub fn Fl_Glut_Window_draw_children(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_make_modal(arg1: *mut Fl_Glut_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Glut_Window_fullscreen(arg1: *mut Fl_Glut_Window, boolean: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Glut_Window_make_current(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_set_icon(arg1: *mut Fl_Glut_Window, arg2: *const ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Glut_Window_icon(arg1: *const Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_set_cursor(self_: *mut Fl_Glut_Window, cursor: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_shown(self_: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_raw_handle(w: *const Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_set_border(arg1: *mut Fl_Glut_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_border(arg1: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_region(self_: *const Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_set_region(self_: *mut Fl_Glut_Window, r: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Glut_Window_iconize(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_fullscreen_active(self_: *const Fl_Glut_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Glut_Window_free_position(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_decorated_w(self_: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_decorated_h(self_: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_size_range(
        self_: *mut Fl_Glut_Window,
        arg1: ::core::ffi::c_int,
        arg2: ::core::ffi::c_int,
        arg3: ::core::ffi::c_int,
        arg4: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_hotspot(self_: *mut Fl_Glut_Window, wid: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Glut_Window_set_shape(self_: *mut Fl_Glut_Window, image: *const ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Glut_Window_shape(self_: *mut Fl_Glut_Window) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_x_root(self_: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_y_root(self_: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_set_cursor_image(
        self_: *mut Fl_Glut_Window,
        image: *const ::core::ffi::c_void,
        hot_x: ::core::ffi::c_int,
        hot_y: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_default_cursor(self_: *mut Fl_Glut_Window, cursor: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_screen_num(arg1: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_set_screen_num(arg1: *mut Fl_Glut_Window, screen_num: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_wait_for_expose(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_set_alpha(self_: *mut Fl_Glut_Window, val: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Glut_Window_alpha(self_: *const Fl_Glut_Window) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Glut_Window_force_position(self_: *mut Fl_Glut_Window, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_default_xclass() -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Glut_Window_xclass(self_: *const Fl_Glut_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Glut_Window_set_default_xclass(s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Glut_Window_set_xclass(self_: *mut Fl_Glut_Window, s: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Glut_Window_clear_modal_states(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_set_override(arg1: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_override(arg1: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_icon_label(arg1: *const Fl_Glut_Window) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Glut_Window_set_icon_label(
        arg1: *mut Fl_Glut_Window,
        arg2: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_set_icons(
        w: *mut Fl_Glut_Window,
        images: *mut *const ::core::ffi::c_void,
        length: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_maximize(w: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_un_maximize(w: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_maximize_active(w: *const Fl_Glut_Window) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Glut_Window_flush(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_valid(self_: *const Fl_Glut_Window) -> ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Glut_Window_set_valid(self_: *mut Fl_Glut_Window, v: ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Glut_Window_context_valid(self_: *const Fl_Glut_Window) -> ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Glut_Window_set_context_valid(self_: *mut Fl_Glut_Window, v: ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Glut_Window_can_do(self_: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_context(self_: *const Fl_Glut_Window) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Glut_Window_set_context(
        self_: *mut Fl_Glut_Window,
        ctx: *mut ::core::ffi::c_void,
        destroy_flag: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Glut_Window_swap_buffers(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_set_swap_interval(self_: *mut Fl_Glut_Window, frames: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_swap_interval(self_: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_ortho(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_can_do_overlay(self_: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_redraw_overlay(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_hide_overlay(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_make_overlay_current(self_: *mut Fl_Glut_Window);
}
extern "C" {
    pub fn Fl_Glut_Window_pixels_per_unit(self_: *mut Fl_Glut_Window) -> f32;
}
extern "C" {
    pub fn Fl_Glut_Window_pixel_w(self_: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_pixel_h(self_: *mut Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_mode(self_: *const Fl_Glut_Window) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Glut_Window_set_mode(self_: *mut Fl_Glut_Window, mode: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Glut_Window_get_proc_address(
        self_: *mut Fl_Glut_Window,
        s: *const ::core::ffi::c_char,
    ) -> *mut ::core::ffi::c_void;
}
