/* automatically generated by rust-bindgen 0.71.1 */

#[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),
>;
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Menu_Item {
    _unused: [u8; 0],
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Menu_Bar {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Menu_Bar_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_Bar;
}
extern "C" {
    pub fn Fl_Menu_Bar_x(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_y(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_width(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_height(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_label(arg1: *mut Fl_Menu_Bar) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_label(arg1: *mut Fl_Menu_Bar, title: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Menu_Bar_redraw(arg1: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_show(arg1: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_hide(arg1: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_activate(arg1: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_deactivate(arg1: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_redraw_label(arg1: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_resize(
        arg1: *mut Fl_Menu_Bar,
        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_Bar_widget_resize(
        arg1: *mut Fl_Menu_Bar,
        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_Bar_tooltip(arg1: *mut Fl_Menu_Bar) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_tooltip(arg1: *mut Fl_Menu_Bar, txt: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Menu_Bar_get_type(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_type(arg1: *mut Fl_Menu_Bar, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_color(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_color(arg1: *mut Fl_Menu_Bar, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Bar_measure_label(
        arg1: *const Fl_Menu_Bar,
        arg2: *mut ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_label_color(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_label_color(arg1: *mut Fl_Menu_Bar, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Bar_label_font(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_label_font(arg1: *mut Fl_Menu_Bar, font: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_label_size(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_label_size(arg1: *mut Fl_Menu_Bar, sz: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_label_type(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_label_type(arg1: *mut Fl_Menu_Bar, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_box(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_box(arg1: *mut Fl_Menu_Bar, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_changed(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_changed(arg1: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_clear_changed(arg1: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_align(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_align(arg1: *mut Fl_Menu_Bar, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_delete(arg1: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_set_image(arg1: *mut Fl_Menu_Bar, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Bar_handle(
        self_: *mut Fl_Menu_Bar,
        cb: custom_handler_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_handle_event(
        self_: *mut Fl_Menu_Bar,
        event: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_draw(
        self_: *mut Fl_Menu_Bar,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_resize_callback(
        self_: *mut Fl_Menu_Bar,
        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_Bar_set_when(arg1: *mut Fl_Menu_Bar, arg2: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_when(arg1: *const Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_image(arg1: *const Fl_Menu_Bar) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_parent(self_: *const Fl_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_selection_color(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_selection_color(arg1: *mut Fl_Menu_Bar, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Bar_do_callback(arg1: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_inside(
        self_: *const Fl_Menu_Bar,
        arg1: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_window(arg1: *const Fl_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_top_window(arg1: *const Fl_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_takes_events(arg1: *const Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_user_data(arg1: *const Fl_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_take_focus(self_: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_visible_focus(self_: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_clear_visible_focus(self_: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_visible_focus(self_: *mut Fl_Menu_Bar, v: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_has_visible_focus(self_: *mut Fl_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_user_data(arg1: *mut Fl_Menu_Bar, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Bar_draw_data(self_: *const Fl_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_handle_data(self_: *const Fl_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_draw_data(self_: *mut Fl_Menu_Bar, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Bar_set_handle_data(self_: *mut Fl_Menu_Bar, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Bar_damage(self_: *const Fl_Menu_Bar) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_damage(self_: *mut Fl_Menu_Bar, flag: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Menu_Bar_set_damage_area(
        self_: *mut Fl_Menu_Bar,
        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_Bar_clear_damage(self_: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_as_window(self_: *mut Fl_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_as_group(self_: *mut Fl_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_deimage(arg1: *mut Fl_Menu_Bar, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Bar_deimage(arg1: *const Fl_Menu_Bar) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_callback(
        arg1: *mut Fl_Menu_Bar,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_visible(self_: *const Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_visible_r(self_: *const Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_active(self_: *const Fl_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_active_r(self_: *const Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_callback(self_: *const Fl_Menu_Bar) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_deletion_callback(
        self_: *mut Fl_Menu_Bar,
        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_Bar_from_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Menu_Bar;
}
extern "C" {
    pub fn Fl_Menu_Bar_from_derived_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Menu_Bar;
}
extern "C" {
    pub fn Fl_Menu_Bar_super_draw(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_super_draw_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_super_handle_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_add(
        arg1: *mut Fl_Menu_Bar,
        name: *const ::core::ffi::c_char,
        shortcut: ::core::ffi::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
        arg4: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_insert(
        arg1: *mut Fl_Menu_Bar,
        index: ::core::ffi::c_int,
        name: *const ::core::ffi::c_char,
        shortcut: ::core::ffi::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
        arg4: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_get_item(
        arg1: *mut Fl_Menu_Bar,
        name: *const ::core::ffi::c_char,
    ) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_item(
        arg1: *mut Fl_Menu_Bar,
        item: *mut Fl_Menu_Item,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_text_font(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_text_font(arg1: *mut Fl_Menu_Bar, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_text_size(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_text_size(arg1: *mut Fl_Menu_Bar, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_text_color(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_text_color(arg1: *mut Fl_Menu_Bar, c: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Bar_add_choice(
        arg1: *mut Fl_Menu_Bar,
        arg2: *const ::core::ffi::c_char,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_get_choice(arg1: *mut Fl_Menu_Bar) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Bar_value(arg1: *mut Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_value(
        arg1: *mut Fl_Menu_Bar,
        v: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_clear(arg1: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_clear_submenu(
        arg1: *mut Fl_Menu_Bar,
        index: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_size(arg1: *const Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_text(
        arg1: *const Fl_Menu_Bar,
        idx: ::core::ffi::c_int,
    ) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Bar_at(arg1: *const Fl_Menu_Bar, idx: ::core::ffi::c_int)
        -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_mode(
        self_: *mut Fl_Menu_Bar,
        i: ::core::ffi::c_int,
        fl: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_mode(self_: *const Fl_Menu_Bar, i: ::core::ffi::c_int)
        -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_find_index(
        self_: *const Fl_Menu_Bar,
        label: *const ::core::ffi::c_char,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_menu(self_: *const Fl_Menu_Bar) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_menu(self_: *mut Fl_Menu_Bar, item: *const Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Menu_Bar_remove(self_: *mut Fl_Menu_Bar, idx: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_set_down_box(self_: *mut Fl_Menu_Bar, box_: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_down_box(self_: *const Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_global(self_: *mut Fl_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Bar_item_pathname(
        self_: *const Fl_Menu_Bar,
        pathname: *mut ::core::ffi::c_char,
        pathnamelen: ::core::ffi::c_int,
        item: *const Fl_Menu_Item,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_menu_box(self_: *mut Fl_Menu_Bar, b: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_menu_box(self_: *const Fl_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_mvalue(arg1: *const Fl_Menu_Bar) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Bar_prev_mvalue(arg1: *const Fl_Menu_Bar) -> *mut Fl_Menu_Item;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Menu_Button {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Menu_Button_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_Button;
}
extern "C" {
    pub fn Fl_Menu_Button_x(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_y(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_width(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_height(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_label(arg1: *mut Fl_Menu_Button) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Button_set_label(arg1: *mut Fl_Menu_Button, title: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Menu_Button_redraw(arg1: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_show(arg1: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_hide(arg1: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_activate(arg1: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_deactivate(arg1: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_redraw_label(arg1: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_resize(
        arg1: *mut Fl_Menu_Button,
        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_Button_widget_resize(
        arg1: *mut Fl_Menu_Button,
        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_Button_tooltip(arg1: *mut Fl_Menu_Button) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Button_set_tooltip(arg1: *mut Fl_Menu_Button, txt: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Menu_Button_get_type(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_type(arg1: *mut Fl_Menu_Button, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_color(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_set_color(arg1: *mut Fl_Menu_Button, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Button_measure_label(
        arg1: *const Fl_Menu_Button,
        arg2: *mut ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_label_color(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_set_label_color(arg1: *mut Fl_Menu_Button, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Button_label_font(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_label_font(arg1: *mut Fl_Menu_Button, font: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_label_size(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_label_size(arg1: *mut Fl_Menu_Button, sz: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_label_type(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_label_type(arg1: *mut Fl_Menu_Button, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_box(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_box(arg1: *mut Fl_Menu_Button, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_changed(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_changed(arg1: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_clear_changed(arg1: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_align(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_align(arg1: *mut Fl_Menu_Button, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_delete(arg1: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_set_image(arg1: *mut Fl_Menu_Button, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Button_handle(
        self_: *mut Fl_Menu_Button,
        cb: custom_handler_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_handle_event(
        self_: *mut Fl_Menu_Button,
        event: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_draw(
        self_: *mut Fl_Menu_Button,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_resize_callback(
        self_: *mut Fl_Menu_Button,
        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_Button_set_when(arg1: *mut Fl_Menu_Button, arg2: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_when(arg1: *const Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_image(arg1: *const Fl_Menu_Button) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_parent(self_: *const Fl_Menu_Button) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_selection_color(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_set_selection_color(
        arg1: *mut Fl_Menu_Button,
        color: ::core::ffi::c_uint,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_do_callback(arg1: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_inside(
        self_: *const Fl_Menu_Button,
        arg1: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_window(arg1: *const Fl_Menu_Button) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_top_window(arg1: *const Fl_Menu_Button) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_takes_events(arg1: *const Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_user_data(arg1: *const Fl_Menu_Button) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_take_focus(self_: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_visible_focus(self_: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_clear_visible_focus(self_: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_visible_focus(self_: *mut Fl_Menu_Button, v: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_has_visible_focus(self_: *mut Fl_Menu_Button) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_set_user_data(arg1: *mut Fl_Menu_Button, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Button_draw_data(self_: *const Fl_Menu_Button) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_handle_data(self_: *const Fl_Menu_Button) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_set_draw_data(self_: *mut Fl_Menu_Button, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Button_set_handle_data(
        self_: *mut Fl_Menu_Button,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_damage(self_: *const Fl_Menu_Button) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Menu_Button_set_damage(self_: *mut Fl_Menu_Button, flag: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Menu_Button_set_damage_area(
        self_: *mut Fl_Menu_Button,
        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_Button_clear_damage(self_: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_as_window(self_: *mut Fl_Menu_Button) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_as_group(self_: *mut Fl_Menu_Button) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_set_deimage(arg1: *mut Fl_Menu_Button, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Button_deimage(arg1: *const Fl_Menu_Button) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_set_callback(
        arg1: *mut Fl_Menu_Button,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_visible(self_: *const Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_visible_r(self_: *const Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_active(self_: *const Fl_Menu_Button) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_active_r(self_: *const Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_callback(self_: *const Fl_Menu_Button) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Menu_Button_set_deletion_callback(
        self_: *mut Fl_Menu_Button,
        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_Button_from_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Menu_Button;
}
extern "C" {
    pub fn Fl_Menu_Button_from_derived_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Menu_Button;
}
extern "C" {
    pub fn Fl_Menu_Button_super_draw(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_super_draw_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_super_handle_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_popup(self_: *mut Fl_Menu_Button) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Button_add(
        arg1: *mut Fl_Menu_Button,
        name: *const ::core::ffi::c_char,
        shortcut: ::core::ffi::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
        arg4: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_insert(
        arg1: *mut Fl_Menu_Button,
        index: ::core::ffi::c_int,
        name: *const ::core::ffi::c_char,
        shortcut: ::core::ffi::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
        arg4: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_get_item(
        arg1: *mut Fl_Menu_Button,
        name: *const ::core::ffi::c_char,
    ) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Button_set_item(
        arg1: *mut Fl_Menu_Button,
        item: *mut Fl_Menu_Item,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_text_font(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_text_font(arg1: *mut Fl_Menu_Button, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_text_size(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_text_size(arg1: *mut Fl_Menu_Button, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_text_color(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_set_text_color(arg1: *mut Fl_Menu_Button, c: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Button_add_choice(
        arg1: *mut Fl_Menu_Button,
        arg2: *const ::core::ffi::c_char,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_get_choice(arg1: *mut Fl_Menu_Button) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Button_value(arg1: *mut Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_value(
        arg1: *mut Fl_Menu_Button,
        v: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_clear(arg1: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_clear_submenu(
        arg1: *mut Fl_Menu_Button,
        index: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_size(arg1: *const Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_text(
        arg1: *const Fl_Menu_Button,
        idx: ::core::ffi::c_int,
    ) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Button_at(
        arg1: *const Fl_Menu_Button,
        idx: ::core::ffi::c_int,
    ) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Button_set_mode(
        self_: *mut Fl_Menu_Button,
        i: ::core::ffi::c_int,
        fl: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_mode(
        self_: *const Fl_Menu_Button,
        i: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_find_index(
        self_: *const Fl_Menu_Button,
        label: *const ::core::ffi::c_char,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_menu(self_: *const Fl_Menu_Button) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Button_set_menu(self_: *mut Fl_Menu_Button, item: *const Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Menu_Button_remove(self_: *mut Fl_Menu_Button, idx: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_set_down_box(self_: *mut Fl_Menu_Button, box_: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_down_box(self_: *const Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_global(self_: *mut Fl_Menu_Button);
}
extern "C" {
    pub fn Fl_Menu_Button_item_pathname(
        self_: *const Fl_Menu_Button,
        pathname: *mut ::core::ffi::c_char,
        pathnamelen: ::core::ffi::c_int,
        item: *const Fl_Menu_Item,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_menu_box(self_: *mut Fl_Menu_Button, b: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_menu_box(self_: *const Fl_Menu_Button) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_mvalue(arg1: *const Fl_Menu_Button) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Button_prev_mvalue(arg1: *const Fl_Menu_Button) -> *mut Fl_Menu_Item;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Choice {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Choice_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_Choice;
}
extern "C" {
    pub fn Fl_Choice_x(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_y(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_width(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_height(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_label(arg1: *mut Fl_Choice) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Choice_set_label(arg1: *mut Fl_Choice, title: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Choice_redraw(arg1: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_show(arg1: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_hide(arg1: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_activate(arg1: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_deactivate(arg1: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_redraw_label(arg1: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_resize(
        arg1: *mut Fl_Choice,
        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_Choice_widget_resize(
        arg1: *mut Fl_Choice,
        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_Choice_tooltip(arg1: *mut Fl_Choice) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Choice_set_tooltip(arg1: *mut Fl_Choice, txt: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Choice_get_type(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_type(arg1: *mut Fl_Choice, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_color(arg1: *mut Fl_Choice) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Choice_set_color(arg1: *mut Fl_Choice, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Choice_measure_label(
        arg1: *const Fl_Choice,
        arg2: *mut ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Choice_label_color(arg1: *mut Fl_Choice) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Choice_set_label_color(arg1: *mut Fl_Choice, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Choice_label_font(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_label_font(arg1: *mut Fl_Choice, font: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_label_size(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_label_size(arg1: *mut Fl_Choice, sz: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_label_type(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_label_type(arg1: *mut Fl_Choice, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_box(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_box(arg1: *mut Fl_Choice, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_changed(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_changed(arg1: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_clear_changed(arg1: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_align(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_align(arg1: *mut Fl_Choice, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_delete(arg1: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_set_image(arg1: *mut Fl_Choice, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Choice_handle(
        self_: *mut Fl_Choice,
        cb: custom_handler_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Choice_handle_event(
        self_: *mut Fl_Choice,
        event: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_draw(
        self_: *mut Fl_Choice,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Choice_resize_callback(
        self_: *mut Fl_Choice,
        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_Choice_set_when(arg1: *mut Fl_Choice, arg2: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_when(arg1: *const Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_image(arg1: *const Fl_Choice) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Choice_parent(self_: *const Fl_Choice) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Choice_selection_color(arg1: *mut Fl_Choice) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Choice_set_selection_color(arg1: *mut Fl_Choice, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Choice_do_callback(arg1: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_inside(
        self_: *const Fl_Choice,
        arg1: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_window(arg1: *const Fl_Choice) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Choice_top_window(arg1: *const Fl_Choice) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Choice_takes_events(arg1: *const Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_user_data(arg1: *const Fl_Choice) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Choice_take_focus(self_: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_visible_focus(self_: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_clear_visible_focus(self_: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_visible_focus(self_: *mut Fl_Choice, v: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_has_visible_focus(self_: *mut Fl_Choice) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Choice_set_user_data(arg1: *mut Fl_Choice, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Choice_draw_data(self_: *const Fl_Choice) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Choice_handle_data(self_: *const Fl_Choice) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Choice_set_draw_data(self_: *mut Fl_Choice, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Choice_set_handle_data(self_: *mut Fl_Choice, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Choice_damage(self_: *const Fl_Choice) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Choice_set_damage(self_: *mut Fl_Choice, flag: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Choice_set_damage_area(
        self_: *mut Fl_Choice,
        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_Choice_clear_damage(self_: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_as_window(self_: *mut Fl_Choice) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Choice_as_group(self_: *mut Fl_Choice) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Choice_set_deimage(arg1: *mut Fl_Choice, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Choice_deimage(arg1: *const Fl_Choice) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Choice_set_callback(
        arg1: *mut Fl_Choice,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Choice_visible(self_: *const Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_visible_r(self_: *const Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_active(self_: *const Fl_Choice) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Choice_active_r(self_: *const Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_callback(self_: *const Fl_Choice) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Choice_set_deletion_callback(
        self_: *mut Fl_Choice,
        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_Choice_from_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Choice;
}
extern "C" {
    pub fn Fl_Choice_from_derived_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Choice;
}
extern "C" {
    pub fn Fl_Choice_super_draw(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_super_draw_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_super_handle_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_add(
        arg1: *mut Fl_Choice,
        name: *const ::core::ffi::c_char,
        shortcut: ::core::ffi::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
        arg4: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_insert(
        arg1: *mut Fl_Choice,
        index: ::core::ffi::c_int,
        name: *const ::core::ffi::c_char,
        shortcut: ::core::ffi::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
        arg4: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_get_item(
        arg1: *mut Fl_Choice,
        name: *const ::core::ffi::c_char,
    ) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Choice_set_item(arg1: *mut Fl_Choice, item: *mut Fl_Menu_Item) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_text_font(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_text_font(arg1: *mut Fl_Choice, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_text_size(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_text_size(arg1: *mut Fl_Choice, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_text_color(arg1: *mut Fl_Choice) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Choice_set_text_color(arg1: *mut Fl_Choice, c: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Choice_add_choice(
        arg1: *mut Fl_Choice,
        arg2: *const ::core::ffi::c_char,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_get_choice(arg1: *mut Fl_Choice) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Choice_value(arg1: *mut Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_value(arg1: *mut Fl_Choice, v: ::core::ffi::c_int) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_clear(arg1: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_clear_submenu(
        arg1: *mut Fl_Choice,
        index: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_size(arg1: *const Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_text(
        arg1: *const Fl_Choice,
        idx: ::core::ffi::c_int,
    ) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Choice_at(arg1: *const Fl_Choice, idx: ::core::ffi::c_int) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Choice_set_mode(self_: *mut Fl_Choice, i: ::core::ffi::c_int, fl: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_mode(self_: *const Fl_Choice, i: ::core::ffi::c_int) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_find_index(
        self_: *const Fl_Choice,
        label: *const ::core::ffi::c_char,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_menu(self_: *const Fl_Choice) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Choice_set_menu(self_: *mut Fl_Choice, item: *const Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Choice_remove(self_: *mut Fl_Choice, idx: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_set_down_box(self_: *mut Fl_Choice, box_: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_down_box(self_: *const Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_global(self_: *mut Fl_Choice);
}
extern "C" {
    pub fn Fl_Choice_item_pathname(
        self_: *const Fl_Choice,
        pathname: *mut ::core::ffi::c_char,
        pathnamelen: ::core::ffi::c_int,
        item: *const Fl_Menu_Item,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_menu_box(self_: *mut Fl_Choice, b: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Choice_menu_box(self_: *const Fl_Choice) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Choice_mvalue(arg1: *const Fl_Choice) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Choice_prev_mvalue(arg1: *const Fl_Choice) -> *mut Fl_Menu_Item;
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Sys_Menu_Bar {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_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_Sys_Menu_Bar;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_x(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_y(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_width(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_height(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_label(arg1: *mut Fl_Sys_Menu_Bar) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_label(arg1: *mut Fl_Sys_Menu_Bar, title: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_redraw(arg1: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_show(arg1: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_hide(arg1: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_activate(arg1: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_deactivate(arg1: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_redraw_label(arg1: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_resize(
        arg1: *mut Fl_Sys_Menu_Bar,
        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_Sys_Menu_Bar_widget_resize(
        arg1: *mut Fl_Sys_Menu_Bar,
        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_Sys_Menu_Bar_tooltip(arg1: *mut Fl_Sys_Menu_Bar) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_tooltip(arg1: *mut Fl_Sys_Menu_Bar, txt: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_get_type(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_type(arg1: *mut Fl_Sys_Menu_Bar, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_color(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_color(arg1: *mut Fl_Sys_Menu_Bar, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_measure_label(
        arg1: *const Fl_Sys_Menu_Bar,
        arg2: *mut ::core::ffi::c_int,
        arg3: *mut ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_label_color(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_label_color(arg1: *mut Fl_Sys_Menu_Bar, color: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_label_font(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_label_font(arg1: *mut Fl_Sys_Menu_Bar, font: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_label_size(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_label_size(arg1: *mut Fl_Sys_Menu_Bar, sz: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_label_type(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_label_type(arg1: *mut Fl_Sys_Menu_Bar, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_box(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_box(arg1: *mut Fl_Sys_Menu_Bar, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_changed(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_changed(arg1: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_clear_changed(arg1: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_align(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_align(arg1: *mut Fl_Sys_Menu_Bar, typ: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_delete(arg1: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_image(arg1: *mut Fl_Sys_Menu_Bar, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_handle(
        self_: *mut Fl_Sys_Menu_Bar,
        cb: custom_handler_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_handle_event(
        self_: *mut Fl_Sys_Menu_Bar,
        event: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_draw(
        self_: *mut Fl_Sys_Menu_Bar,
        cb: custom_draw_callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_resize_callback(
        self_: *mut Fl_Sys_Menu_Bar,
        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_Sys_Menu_Bar_set_when(arg1: *mut Fl_Sys_Menu_Bar, arg2: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_when(arg1: *const Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_image(arg1: *const Fl_Sys_Menu_Bar) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_parent(self_: *const Fl_Sys_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_selection_color(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_selection_color(
        arg1: *mut Fl_Sys_Menu_Bar,
        color: ::core::ffi::c_uint,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_do_callback(arg1: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_inside(
        self_: *const Fl_Sys_Menu_Bar,
        arg1: *mut ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_window(arg1: *const Fl_Sys_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_top_window(arg1: *const Fl_Sys_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_takes_events(arg1: *const Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_user_data(arg1: *const Fl_Sys_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_take_focus(self_: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_visible_focus(self_: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_clear_visible_focus(self_: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_visible_focus(self_: *mut Fl_Sys_Menu_Bar, v: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_has_visible_focus(self_: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_user_data(
        arg1: *mut Fl_Sys_Menu_Bar,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_draw_data(self_: *const Fl_Sys_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_handle_data(self_: *const Fl_Sys_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_draw_data(
        self_: *mut Fl_Sys_Menu_Bar,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_handle_data(
        self_: *mut Fl_Sys_Menu_Bar,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_damage(self_: *const Fl_Sys_Menu_Bar) -> ::core::ffi::c_uchar;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_damage(self_: *mut Fl_Sys_Menu_Bar, flag: ::core::ffi::c_uchar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_damage_area(
        self_: *mut Fl_Sys_Menu_Bar,
        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_Sys_Menu_Bar_clear_damage(self_: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_as_window(self_: *mut Fl_Sys_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_as_group(self_: *mut Fl_Sys_Menu_Bar) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_deimage(arg1: *mut Fl_Sys_Menu_Bar, arg2: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_deimage(arg1: *const Fl_Sys_Menu_Bar) -> *const ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_callback(
        arg1: *mut Fl_Sys_Menu_Bar,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_visible(self_: *const Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_visible_r(self_: *const Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_active(self_: *const Fl_Sys_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_active_r(self_: *const Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_callback(self_: *const Fl_Sys_Menu_Bar) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_deletion_callback(
        self_: *mut Fl_Sys_Menu_Bar,
        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_Sys_Menu_Bar_from_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Sys_Menu_Bar;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_from_derived_dyn_ptr(ptr: *mut Fl_Widget) -> *mut Fl_Sys_Menu_Bar;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_super_draw(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_super_draw_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_super_handle_first(ptr: *mut Fl_Widget, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_window_menu_style(style: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_about(
        self_: *mut Fl_Sys_Menu_Bar,
        cb: Fl_Callback,
        data: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_add(
        arg1: *mut Fl_Sys_Menu_Bar,
        name: *const ::core::ffi::c_char,
        shortcut: ::core::ffi::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
        arg4: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_insert(
        arg1: *mut Fl_Sys_Menu_Bar,
        index: ::core::ffi::c_int,
        name: *const ::core::ffi::c_char,
        shortcut: ::core::ffi::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::core::ffi::c_void,
        arg4: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_get_item(
        arg1: *mut Fl_Sys_Menu_Bar,
        name: *const ::core::ffi::c_char,
    ) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_item(
        arg1: *mut Fl_Sys_Menu_Bar,
        item: *mut Fl_Menu_Item,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_text_font(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_text_font(arg1: *mut Fl_Sys_Menu_Bar, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_text_size(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_text_size(arg1: *mut Fl_Sys_Menu_Bar, c: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_text_color(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_text_color(arg1: *mut Fl_Sys_Menu_Bar, c: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_add_choice(
        arg1: *mut Fl_Sys_Menu_Bar,
        arg2: *const ::core::ffi::c_char,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_get_choice(arg1: *mut Fl_Sys_Menu_Bar) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_value(arg1: *mut Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_value(
        arg1: *mut Fl_Sys_Menu_Bar,
        v: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_clear(arg1: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_clear_submenu(
        arg1: *mut Fl_Sys_Menu_Bar,
        index: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_size(arg1: *const Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_text(
        arg1: *const Fl_Sys_Menu_Bar,
        idx: ::core::ffi::c_int,
    ) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_at(
        arg1: *const Fl_Sys_Menu_Bar,
        idx: ::core::ffi::c_int,
    ) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_mode(
        self_: *mut Fl_Sys_Menu_Bar,
        i: ::core::ffi::c_int,
        fl: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_mode(
        self_: *const Fl_Sys_Menu_Bar,
        i: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_find_index(
        self_: *const Fl_Sys_Menu_Bar,
        label: *const ::core::ffi::c_char,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_menu(self_: *const Fl_Sys_Menu_Bar) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_menu(self_: *mut Fl_Sys_Menu_Bar, item: *const Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_remove(self_: *mut Fl_Sys_Menu_Bar, idx: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_down_box(self_: *mut Fl_Sys_Menu_Bar, box_: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_down_box(self_: *const Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_global(self_: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_item_pathname(
        self_: *const Fl_Sys_Menu_Bar,
        pathname: *mut ::core::ffi::c_char,
        pathnamelen: ::core::ffi::c_int,
        item: *const Fl_Menu_Item,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_menu_box(self_: *mut Fl_Sys_Menu_Bar, b: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_menu_box(self_: *const Fl_Sys_Menu_Bar) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_mvalue(arg1: *const Fl_Sys_Menu_Bar) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_prev_mvalue(arg1: *const Fl_Sys_Menu_Bar) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Item_new(
        args: *mut *mut ::core::ffi::c_char,
        sz: ::core::ffi::c_int,
    ) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Item_new2(
        args: *mut *mut ::core::ffi::c_char,
        shortcuts: *mut ::core::ffi::c_int,
        cb: *mut Fl_Callback,
        flags: *mut ::core::ffi::c_int,
        labeltype: *mut ::core::ffi::c_int,
        labelfont: *mut ::core::ffi::c_int,
        labelsize: *mut ::core::ffi::c_int,
        labelcolor: *mut ::core::ffi::c_uint,
        sz: ::core::ffi::c_int,
    ) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Item_delete(self_: *mut Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Menu_Item_popup(
        self_: *mut Fl_Menu_Item,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
    ) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Item_pulldown(
        self_: *mut Fl_Menu_Item,
        X: ::core::ffi::c_int,
        Y: ::core::ffi::c_int,
        W: ::core::ffi::c_int,
        H: ::core::ffi::c_int,
        picked: *const Fl_Menu_Item,
        arg1: *const ::core::ffi::c_void,
        title: *const Fl_Menu_Item,
        menubar: ::core::ffi::c_int,
    ) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Item_label(arg1: *mut Fl_Menu_Item) -> *const ::core::ffi::c_char;
}
extern "C" {
    pub fn Fl_Menu_Item_set_label(arg1: *mut Fl_Menu_Item, a: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Menu_Item_label_type(arg1: *mut Fl_Menu_Item) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_set_label_type(arg1: *mut Fl_Menu_Item, a: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Item_label_color(arg1: *mut Fl_Menu_Item) -> ::core::ffi::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Item_set_label_color(arg1: *mut Fl_Menu_Item, a: ::core::ffi::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Item_label_font(arg1: *mut Fl_Menu_Item) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_set_label_font(arg1: *mut Fl_Menu_Item, a: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Item_label_size(arg1: *mut Fl_Menu_Item) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_set_label_size(arg1: *mut Fl_Menu_Item, a: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Item_value(arg1: *mut Fl_Menu_Item) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_set(arg1: *mut Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Menu_Item_clear(arg1: *mut Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Menu_Item_visible(arg1: *mut Fl_Menu_Item) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_show(arg1: *mut Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Menu_Item_hide(arg1: *mut Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Menu_Item_active(arg1: *mut Fl_Menu_Item) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_activate(arg1: *mut Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Menu_Item_deactivate(arg1: *mut Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Menu_Item_submenu(self_: *const Fl_Menu_Item) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_checkbox(self_: *const Fl_Menu_Item) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_radio(self_: *const Fl_Menu_Item) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_next(
        self_: *mut Fl_Menu_Item,
        idx: ::core::ffi::c_int,
    ) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Item_set_callback(
        self_: *mut Fl_Menu_Item,
        c: Fl_Callback,
        p: *mut ::core::ffi::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Item_do_callback(self_: *mut Fl_Menu_Item, w: *mut Fl_Widget);
}
extern "C" {
    pub fn Fl_Menu_Item_user_data(arg1: *const Fl_Menu_Item) -> *mut ::core::ffi::c_void;
}
extern "C" {
    pub fn Fl_Menu_Item_set_user_data(arg1: *mut Fl_Menu_Item, data: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Item_draw(
        self_: *const Fl_Menu_Item,
        x: ::core::ffi::c_int,
        y: ::core::ffi::c_int,
        w: ::core::ffi::c_int,
        h: ::core::ffi::c_int,
        m: *const ::core::ffi::c_void,
        selected: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Item_measure(
        self_: *const Fl_Menu_Item,
        hp: *mut ::core::ffi::c_int,
        m: *const ::core::ffi::c_void,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_image(self_: *mut Fl_Menu_Item, image: *mut ::core::ffi::c_void);
}
extern "C" {
    pub fn Fl_Menu_Item_add_image(
        self_: *mut Fl_Menu_Item,
        image: *mut ::core::ffi::c_void,
        on_left: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Item_children(self_: *const Fl_Menu_Item) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_at(
        self_: *const Fl_Menu_Item,
        idx: ::core::ffi::c_int,
    ) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Item_add(
        self_: *mut Fl_Menu_Item,
        name: *const ::core::ffi::c_char,
        shortcut: ::core::ffi::c_int,
        cb: Fl_Callback,
        data: *mut ::core::ffi::c_void,
        flag: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_insert(
        self_: *mut Fl_Menu_Item,
        index: ::core::ffi::c_int,
        name: *const ::core::ffi::c_char,
        shortcut: ::core::ffi::c_int,
        cb: Fl_Callback,
        data: *mut ::core::ffi::c_void,
        flag: ::core::ffi::c_int,
    ) -> ::core::ffi::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_set_shortcut(self_: *mut Fl_Menu_Item, shortcut: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_Menu_Item_set_flag(self_: *mut Fl_Menu_Item, flag: ::core::ffi::c_int);
}
extern "C" {
    pub fn Fl_mac_set_about(
        cb: Fl_Callback,
        user_data: *mut ::core::ffi::c_void,
        shortcut: ::core::ffi::c_int,
    );
}
extern "C" {
    pub fn Fl_Mac_App_Menu_custom_application_menu_items(m: *const Fl_Menu_Item);
}
extern "C" {
    pub fn Fl_Mac_App_Menu_set_about(about: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Mac_App_Menu_set_print(print: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Mac_App_Menu_set_print_no_titlebar(print_no_titlebar: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Mac_App_Menu_set_toggle_print_titlebar(
        toggle_print_titlebar: *const ::core::ffi::c_char,
    );
}
extern "C" {
    pub fn Fl_Mac_App_Menu_set_services(services: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Mac_App_Menu_set_hide(hide: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Mac_App_Menu_set_hide_others(hide_others: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Mac_App_Menu_set_show(show: *const ::core::ffi::c_char);
}
extern "C" {
    pub fn Fl_Mac_App_Menu_set_quit(quit: *const ::core::ffi::c_char);
}
