/* automatically generated by rust-bindgen 0.57.0 */

#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Widget {
    _unused: [u8; 0],
}
pub type Fl_Callback = ::std::option::Option<
    unsafe extern "C" fn(arg1: *mut Fl_Widget, arg2: *mut ::std::os::raw::c_void),
>;
pub type custom_handler_callback = ::std::option::Option<
    unsafe extern "C" fn(
        arg1: *mut Fl_Widget,
        arg2: ::std::os::raw::c_int,
        arg3: *mut ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int,
>;
pub type custom_draw_callback = ::std::option::Option<
    unsafe extern "C" fn(arg1: *mut Fl_Widget, arg2: *mut ::std::os::raw::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: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
        title: *const ::std::os::raw::c_char,
    ) -> *mut Fl_Menu_Bar;
}
extern "C" {
    pub fn Fl_Menu_Bar_x(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_y(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_width(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_height(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_label(arg1: *mut Fl_Menu_Bar) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_label(arg1: *mut Fl_Menu_Bar, title: *const ::std::os::raw::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: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_widget_resize(
        arg1: *mut Fl_Menu_Bar,
        x: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_tooltip(arg1: *mut Fl_Menu_Bar) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_tooltip(arg1: *mut Fl_Menu_Bar, txt: *const ::std::os::raw::c_char);
}
extern "C" {
    pub fn Fl_Menu_Bar_get_type(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_type(arg1: *mut Fl_Menu_Bar, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_color(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_color(arg1: *mut Fl_Menu_Bar, color: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Bar_measure_label(
        arg1: *const Fl_Menu_Bar,
        arg2: *mut ::std::os::raw::c_int,
        arg3: *mut ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_label_color(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_label_color(arg1: *mut Fl_Menu_Bar, color: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Bar_label_font(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_label_font(arg1: *mut Fl_Menu_Bar, font: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_label_size(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_label_size(arg1: *mut Fl_Menu_Bar, sz: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_label_type(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_label_type(arg1: *mut Fl_Menu_Bar, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_box(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_box(arg1: *mut Fl_Menu_Bar, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_changed(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::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) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_align(arg1: *mut Fl_Menu_Bar, typ: ::std::os::raw::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 ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Menu_Bar_handle(
        self_: *mut Fl_Menu_Bar,
        cb: custom_handler_callback,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_draw(
        self_: *mut Fl_Menu_Bar,
        cb: custom_draw_callback,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_set_when(arg1: *mut Fl_Menu_Bar, arg2: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_when(arg1: *const Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_image(arg1: *const Fl_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_parent(self_: *const Fl_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_selection_color(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_selection_color(arg1: *mut Fl_Menu_Bar, color: ::std::os::raw::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 ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_window(arg1: *const Fl_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_top_window(arg1: *const Fl_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_takes_events(arg1: *const Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_user_data(arg1: *const Fl_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_take_focus(self_: *mut Fl_Menu_Bar) -> ::std::os::raw::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: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_has_visible_focus(self_: *mut Fl_Menu_Bar) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_user_data(arg1: *mut Fl_Menu_Bar, data: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Menu_Bar_draw_data(self_: *const Fl_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_handle_data(self_: *const Fl_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_draw_data(self_: *mut Fl_Menu_Bar, data: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Menu_Bar_set_handle_data(self_: *mut Fl_Menu_Bar, data: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Menu_Bar_damage(self_: *const Fl_Menu_Bar) -> ::std::os::raw::c_uchar;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_damage(self_: *mut Fl_Menu_Bar, flag: ::std::os::raw::c_uchar);
}
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 ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_as_group(self_: *mut Fl_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_deimage(arg1: *mut Fl_Menu_Bar, arg2: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Menu_Bar_deimage(arg1: *const Fl_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_callback(
        arg1: *mut Fl_Menu_Bar,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_set_deleter(
        arg1: *mut Fl_Menu_Bar,
        arg2: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_visible(self_: *const Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_visible_r(self_: *const Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_active(self_: *const Fl_Menu_Bar) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_active_r(self_: *const Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_callback(self_: *const Fl_Menu_Bar) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Menu_Bar_add(
        arg1: *mut Fl_Menu_Bar,
        name: *const ::std::os::raw::c_char,
        shortcut: ::std::os::raw::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
        arg4: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_insert(
        arg1: *mut Fl_Menu_Bar,
        index: ::std::os::raw::c_int,
        name: *const ::std::os::raw::c_char,
        shortcut: ::std::os::raw::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
        arg4: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_get_item(
        arg1: *mut Fl_Menu_Bar,
        name: *const ::std::os::raw::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,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_text_font(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_text_font(arg1: *mut Fl_Menu_Bar, c: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_text_size(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_text_size(arg1: *mut Fl_Menu_Bar, c: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_text_color(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_text_color(arg1: *mut Fl_Menu_Bar, c: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Bar_add_choice(arg1: *mut Fl_Menu_Bar, arg2: *const ::std::os::raw::c_char);
}
extern "C" {
    pub fn Fl_Menu_Bar_get_choice(arg1: *mut Fl_Menu_Bar) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Menu_Bar_value(arg1: *mut Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_value(
        arg1: *mut Fl_Menu_Bar,
        v: ::std::os::raw::c_int,
    ) -> ::std::os::raw::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: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_size(arg1: *const Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_text(
        arg1: *const Fl_Menu_Bar,
        idx: ::std::os::raw::c_int,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Menu_Bar_at(
        arg1: *const Fl_Menu_Bar,
        idx: ::std::os::raw::c_int,
    ) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Bar_set_mode(
        self_: *mut Fl_Menu_Bar,
        i: ::std::os::raw::c_int,
        fl: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Bar_mode(
        self_: *const Fl_Menu_Bar,
        i: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_find_index(
        self_: *const Fl_Menu_Bar,
        label: *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::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: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_set_down_box(self_: *mut Fl_Menu_Bar, box_: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Bar_down_box(self_: *const Fl_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Bar_global(self_: *mut Fl_Menu_Bar);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Menu_Button {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Menu_Button_new(
        x: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
        title: *const ::std::os::raw::c_char,
    ) -> *mut Fl_Menu_Button;
}
extern "C" {
    pub fn Fl_Menu_Button_x(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_y(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_width(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_height(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_label(arg1: *mut Fl_Menu_Button) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Menu_Button_set_label(
        arg1: *mut Fl_Menu_Button,
        title: *const ::std::os::raw::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: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_widget_resize(
        arg1: *mut Fl_Menu_Button,
        x: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_tooltip(arg1: *mut Fl_Menu_Button) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Menu_Button_set_tooltip(
        arg1: *mut Fl_Menu_Button,
        txt: *const ::std::os::raw::c_char,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_get_type(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_type(arg1: *mut Fl_Menu_Button, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_color(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_set_color(arg1: *mut Fl_Menu_Button, color: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Button_measure_label(
        arg1: *const Fl_Menu_Button,
        arg2: *mut ::std::os::raw::c_int,
        arg3: *mut ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_label_color(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_set_label_color(arg1: *mut Fl_Menu_Button, color: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Button_label_font(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_label_font(arg1: *mut Fl_Menu_Button, font: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_label_size(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_label_size(arg1: *mut Fl_Menu_Button, sz: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_label_type(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_label_type(arg1: *mut Fl_Menu_Button, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_box(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_box(arg1: *mut Fl_Menu_Button, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_changed(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::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) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_align(arg1: *mut Fl_Menu_Button, typ: ::std::os::raw::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 ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Menu_Button_handle(
        self_: *mut Fl_Menu_Button,
        cb: custom_handler_callback,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_draw(
        self_: *mut Fl_Menu_Button,
        cb: custom_draw_callback,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_set_when(arg1: *mut Fl_Menu_Button, arg2: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_when(arg1: *const Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_image(arg1: *const Fl_Menu_Button) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_parent(self_: *const Fl_Menu_Button) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_selection_color(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_set_selection_color(
        arg1: *mut Fl_Menu_Button,
        color: ::std::os::raw::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 ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_window(arg1: *const Fl_Menu_Button) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_top_window(arg1: *const Fl_Menu_Button) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_takes_events(arg1: *const Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_user_data(arg1: *const Fl_Menu_Button) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_take_focus(self_: *mut Fl_Menu_Button) -> ::std::os::raw::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: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_has_visible_focus(self_: *mut Fl_Menu_Button) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_set_user_data(
        arg1: *mut Fl_Menu_Button,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_draw_data(self_: *const Fl_Menu_Button) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_handle_data(self_: *const Fl_Menu_Button) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_set_draw_data(
        self_: *mut Fl_Menu_Button,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_set_handle_data(
        self_: *mut Fl_Menu_Button,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_damage(self_: *const Fl_Menu_Button) -> ::std::os::raw::c_uchar;
}
extern "C" {
    pub fn Fl_Menu_Button_set_damage(self_: *mut Fl_Menu_Button, flag: ::std::os::raw::c_uchar);
}
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 ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_as_group(self_: *mut Fl_Menu_Button) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_set_deimage(arg1: *mut Fl_Menu_Button, arg2: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Menu_Button_deimage(arg1: *const Fl_Menu_Button) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Button_set_callback(
        arg1: *mut Fl_Menu_Button,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_set_deleter(
        arg1: *mut Fl_Menu_Button,
        arg2: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_visible(self_: *const Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_visible_r(self_: *const Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_active(self_: *const Fl_Menu_Button) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_active_r(self_: *const Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_callback(self_: *const Fl_Menu_Button) -> Fl_Callback;
}
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 ::std::os::raw::c_char,
        shortcut: ::std::os::raw::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
        arg4: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_insert(
        arg1: *mut Fl_Menu_Button,
        index: ::std::os::raw::c_int,
        name: *const ::std::os::raw::c_char,
        shortcut: ::std::os::raw::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
        arg4: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_get_item(
        arg1: *mut Fl_Menu_Button,
        name: *const ::std::os::raw::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,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_text_font(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_text_font(arg1: *mut Fl_Menu_Button, c: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_text_size(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_text_size(arg1: *mut Fl_Menu_Button, c: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_text_color(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Button_set_text_color(arg1: *mut Fl_Menu_Button, c: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Button_add_choice(
        arg1: *mut Fl_Menu_Button,
        arg2: *const ::std::os::raw::c_char,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_get_choice(arg1: *mut Fl_Menu_Button) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Menu_Button_value(arg1: *mut Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_set_value(
        arg1: *mut Fl_Menu_Button,
        v: ::std::os::raw::c_int,
    ) -> ::std::os::raw::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: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_size(arg1: *const Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_text(
        arg1: *const Fl_Menu_Button,
        idx: ::std::os::raw::c_int,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Menu_Button_at(
        arg1: *const Fl_Menu_Button,
        idx: ::std::os::raw::c_int,
    ) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Button_set_mode(
        self_: *mut Fl_Menu_Button,
        i: ::std::os::raw::c_int,
        fl: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Button_mode(
        self_: *const Fl_Menu_Button,
        i: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_find_index(
        self_: *const Fl_Menu_Button,
        label: *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::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: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_set_down_box(self_: *mut Fl_Menu_Button, box_: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Button_down_box(self_: *const Fl_Menu_Button) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Button_global(self_: *mut Fl_Menu_Button);
}
#[repr(C)]
#[derive(Debug, Copy, Clone)]
pub struct Fl_Choice {
    _unused: [u8; 0],
}
extern "C" {
    pub fn Fl_Choice_new(
        x: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
        title: *const ::std::os::raw::c_char,
    ) -> *mut Fl_Choice;
}
extern "C" {
    pub fn Fl_Choice_x(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_y(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_width(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_height(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_label(arg1: *mut Fl_Choice) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Choice_set_label(arg1: *mut Fl_Choice, title: *const ::std::os::raw::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: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Choice_widget_resize(
        arg1: *mut Fl_Choice,
        x: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Choice_tooltip(arg1: *mut Fl_Choice) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Choice_set_tooltip(arg1: *mut Fl_Choice, txt: *const ::std::os::raw::c_char);
}
extern "C" {
    pub fn Fl_Choice_get_type(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_type(arg1: *mut Fl_Choice, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Choice_color(arg1: *mut Fl_Choice) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Choice_set_color(arg1: *mut Fl_Choice, color: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Choice_measure_label(
        arg1: *const Fl_Choice,
        arg2: *mut ::std::os::raw::c_int,
        arg3: *mut ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Choice_label_color(arg1: *mut Fl_Choice) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Choice_set_label_color(arg1: *mut Fl_Choice, color: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Choice_label_font(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_label_font(arg1: *mut Fl_Choice, font: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Choice_label_size(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_label_size(arg1: *mut Fl_Choice, sz: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Choice_label_type(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_label_type(arg1: *mut Fl_Choice, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Choice_box(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_box(arg1: *mut Fl_Choice, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Choice_changed(arg1: *mut Fl_Choice) -> ::std::os::raw::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) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_align(arg1: *mut Fl_Choice, typ: ::std::os::raw::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 ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Choice_handle(
        self_: *mut Fl_Choice,
        cb: custom_handler_callback,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Choice_draw(
        self_: *mut Fl_Choice,
        cb: custom_draw_callback,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Choice_set_when(arg1: *mut Fl_Choice, arg2: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Choice_when(arg1: *const Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_image(arg1: *const Fl_Choice) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Choice_parent(self_: *const Fl_Choice) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Choice_selection_color(arg1: *mut Fl_Choice) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Choice_set_selection_color(arg1: *mut Fl_Choice, color: ::std::os::raw::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 ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_window(arg1: *const Fl_Choice) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Choice_top_window(arg1: *const Fl_Choice) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Choice_takes_events(arg1: *const Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_user_data(arg1: *const Fl_Choice) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Choice_take_focus(self_: *mut Fl_Choice) -> ::std::os::raw::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: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Choice_has_visible_focus(self_: *mut Fl_Choice) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Choice_set_user_data(arg1: *mut Fl_Choice, data: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Choice_draw_data(self_: *const Fl_Choice) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Choice_handle_data(self_: *const Fl_Choice) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Choice_set_draw_data(self_: *mut Fl_Choice, data: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Choice_set_handle_data(self_: *mut Fl_Choice, data: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Choice_damage(self_: *const Fl_Choice) -> ::std::os::raw::c_uchar;
}
extern "C" {
    pub fn Fl_Choice_set_damage(self_: *mut Fl_Choice, flag: ::std::os::raw::c_uchar);
}
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 ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Choice_as_group(self_: *mut Fl_Choice) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Choice_set_deimage(arg1: *mut Fl_Choice, arg2: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Choice_deimage(arg1: *const Fl_Choice) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Choice_set_callback(
        arg1: *mut Fl_Choice,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Choice_set_deleter(
        arg1: *mut Fl_Choice,
        arg2: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
    );
}
extern "C" {
    pub fn Fl_Choice_visible(self_: *const Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_visible_r(self_: *const Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_active(self_: *const Fl_Choice) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Choice_active_r(self_: *const Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_callback(self_: *const Fl_Choice) -> Fl_Callback;
}
extern "C" {
    pub fn Fl_Choice_add(
        arg1: *mut Fl_Choice,
        name: *const ::std::os::raw::c_char,
        shortcut: ::std::os::raw::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
        arg4: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_insert(
        arg1: *mut Fl_Choice,
        index: ::std::os::raw::c_int,
        name: *const ::std::os::raw::c_char,
        shortcut: ::std::os::raw::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
        arg4: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_get_item(
        arg1: *mut Fl_Choice,
        name: *const ::std::os::raw::c_char,
    ) -> *mut Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Choice_set_item(
        arg1: *mut Fl_Choice,
        item: *mut Fl_Menu_Item,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_text_font(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_text_font(arg1: *mut Fl_Choice, c: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Choice_text_size(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_text_size(arg1: *mut Fl_Choice, c: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Choice_text_color(arg1: *mut Fl_Choice) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Choice_set_text_color(arg1: *mut Fl_Choice, c: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Choice_add_choice(arg1: *mut Fl_Choice, arg2: *const ::std::os::raw::c_char);
}
extern "C" {
    pub fn Fl_Choice_get_choice(arg1: *mut Fl_Choice) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Choice_value(arg1: *mut Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_set_value(
        arg1: *mut Fl_Choice,
        v: ::std::os::raw::c_int,
    ) -> ::std::os::raw::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: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_size(arg1: *const Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_text(
        arg1: *const Fl_Choice,
        idx: ::std::os::raw::c_int,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Choice_at(arg1: *const Fl_Choice, idx: ::std::os::raw::c_int) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Choice_set_mode(
        self_: *mut Fl_Choice,
        i: ::std::os::raw::c_int,
        fl: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Choice_mode(
        self_: *const Fl_Choice,
        i: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_find_index(
        self_: *const Fl_Choice,
        label: *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::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: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Choice_set_down_box(self_: *mut Fl_Choice, box_: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Choice_down_box(self_: *const Fl_Choice) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Choice_global(self_: *mut Fl_Choice);
}
#[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: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
        title: *const ::std::os::raw::c_char,
    ) -> *mut Fl_Sys_Menu_Bar;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_x(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_y(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_width(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_height(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_label(arg1: *mut Fl_Sys_Menu_Bar) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_label(
        arg1: *mut Fl_Sys_Menu_Bar,
        title: *const ::std::os::raw::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: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_widget_resize(
        arg1: *mut Fl_Sys_Menu_Bar,
        x: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        width: ::std::os::raw::c_int,
        height: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_tooltip(arg1: *mut Fl_Sys_Menu_Bar) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_tooltip(
        arg1: *mut Fl_Sys_Menu_Bar,
        txt: *const ::std::os::raw::c_char,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_get_type(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_type(arg1: *mut Fl_Sys_Menu_Bar, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_color(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_color(arg1: *mut Fl_Sys_Menu_Bar, color: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_measure_label(
        arg1: *const Fl_Sys_Menu_Bar,
        arg2: *mut ::std::os::raw::c_int,
        arg3: *mut ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_label_color(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_label_color(
        arg1: *mut Fl_Sys_Menu_Bar,
        color: ::std::os::raw::c_uint,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_label_font(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_label_font(arg1: *mut Fl_Sys_Menu_Bar, font: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_label_size(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_label_size(arg1: *mut Fl_Sys_Menu_Bar, sz: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_label_type(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_label_type(arg1: *mut Fl_Sys_Menu_Bar, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_box(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_box(arg1: *mut Fl_Sys_Menu_Bar, typ: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_changed(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::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) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_align(arg1: *mut Fl_Sys_Menu_Bar, typ: ::std::os::raw::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 ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_handle(
        self_: *mut Fl_Sys_Menu_Bar,
        cb: custom_handler_callback,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_draw(
        self_: *mut Fl_Sys_Menu_Bar,
        cb: custom_draw_callback,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_when(arg1: *mut Fl_Sys_Menu_Bar, arg2: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_when(arg1: *const Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_image(arg1: *const Fl_Sys_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_parent(self_: *const Fl_Sys_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_selection_color(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_selection_color(
        arg1: *mut Fl_Sys_Menu_Bar,
        color: ::std::os::raw::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 ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_window(arg1: *const Fl_Sys_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_top_window(arg1: *const Fl_Sys_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_takes_events(arg1: *const Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_user_data(arg1: *const Fl_Sys_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_take_focus(self_: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::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: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_has_visible_focus(self_: *mut Fl_Sys_Menu_Bar)
        -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_user_data(
        arg1: *mut Fl_Sys_Menu_Bar,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_draw_data(self_: *const Fl_Sys_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_handle_data(
        self_: *const Fl_Sys_Menu_Bar,
    ) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_draw_data(
        self_: *mut Fl_Sys_Menu_Bar,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_handle_data(
        self_: *mut Fl_Sys_Menu_Bar,
        data: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_damage(self_: *const Fl_Sys_Menu_Bar) -> ::std::os::raw::c_uchar;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_damage(self_: *mut Fl_Sys_Menu_Bar, flag: ::std::os::raw::c_uchar);
}
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 ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_as_group(self_: *mut Fl_Sys_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_deimage(
        arg1: *mut Fl_Sys_Menu_Bar,
        arg2: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_deimage(arg1: *const Fl_Sys_Menu_Bar) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_callback(
        arg1: *mut Fl_Sys_Menu_Bar,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_deleter(
        arg1: *mut Fl_Sys_Menu_Bar,
        arg2: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_visible(self_: *const Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_visible_r(self_: *const Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_active(self_: *const Fl_Sys_Menu_Bar) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_active_r(self_: *const Fl_Sys_Menu_Bar) -> ::std::os::raw::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_add(
        arg1: *mut Fl_Sys_Menu_Bar,
        name: *const ::std::os::raw::c_char,
        shortcut: ::std::os::raw::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
        arg4: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_insert(
        arg1: *mut Fl_Sys_Menu_Bar,
        index: ::std::os::raw::c_int,
        name: *const ::std::os::raw::c_char,
        shortcut: ::std::os::raw::c_int,
        arg2: Fl_Callback,
        arg3: *mut ::std::os::raw::c_void,
        arg4: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_get_item(
        arg1: *mut Fl_Sys_Menu_Bar,
        name: *const ::std::os::raw::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,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_text_font(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_text_font(arg1: *mut Fl_Sys_Menu_Bar, c: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_text_size(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_text_size(arg1: *mut Fl_Sys_Menu_Bar, c: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_text_color(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_text_color(arg1: *mut Fl_Sys_Menu_Bar, c: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_add_choice(
        arg1: *mut Fl_Sys_Menu_Bar,
        arg2: *const ::std::os::raw::c_char,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_get_choice(arg1: *mut Fl_Sys_Menu_Bar) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_value(arg1: *mut Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_value(
        arg1: *mut Fl_Sys_Menu_Bar,
        v: ::std::os::raw::c_int,
    ) -> ::std::os::raw::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: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_size(arg1: *const Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_text(
        arg1: *const Fl_Sys_Menu_Bar,
        idx: ::std::os::raw::c_int,
    ) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_at(
        arg1: *const Fl_Sys_Menu_Bar,
        idx: ::std::os::raw::c_int,
    ) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_mode(
        self_: *mut Fl_Sys_Menu_Bar,
        i: ::std::os::raw::c_int,
        fl: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_mode(
        self_: *const Fl_Sys_Menu_Bar,
        i: ::std::os::raw::c_int,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_find_index(
        self_: *const Fl_Sys_Menu_Bar,
        label: *const ::std::os::raw::c_char,
    ) -> ::std::os::raw::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: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_set_down_box(self_: *mut Fl_Sys_Menu_Bar, box_: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_down_box(self_: *const Fl_Sys_Menu_Bar) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Sys_Menu_Bar_global(self_: *mut Fl_Sys_Menu_Bar);
}
extern "C" {
    pub fn Fl_Menu_Item_new(
        args: *mut *mut ::std::os::raw::c_char,
        sz: ::std::os::raw::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: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
    ) -> *const Fl_Menu_Item;
}
extern "C" {
    pub fn Fl_Menu_Item_label(arg1: *mut Fl_Menu_Item) -> *const ::std::os::raw::c_char;
}
extern "C" {
    pub fn Fl_Menu_Item_set_label(arg1: *mut Fl_Menu_Item, a: *const ::std::os::raw::c_char);
}
extern "C" {
    pub fn Fl_Menu_Item_label_type(arg1: *mut Fl_Menu_Item) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_set_label_type(arg1: *mut Fl_Menu_Item, a: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Item_label_color(arg1: *mut Fl_Menu_Item) -> ::std::os::raw::c_uint;
}
extern "C" {
    pub fn Fl_Menu_Item_set_label_color(arg1: *mut Fl_Menu_Item, a: ::std::os::raw::c_uint);
}
extern "C" {
    pub fn Fl_Menu_Item_label_font(arg1: *mut Fl_Menu_Item) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_set_label_font(arg1: *mut Fl_Menu_Item, a: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Item_label_size(arg1: *mut Fl_Menu_Item) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_set_label_size(arg1: *mut Fl_Menu_Item, a: ::std::os::raw::c_int);
}
extern "C" {
    pub fn Fl_Menu_Item_value(arg1: *mut Fl_Menu_Item) -> ::std::os::raw::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) -> ::std::os::raw::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) -> ::std::os::raw::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) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_checkbox(self_: *const Fl_Menu_Item) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_radio(self_: *const Fl_Menu_Item) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_next(
        self_: *mut Fl_Menu_Item,
        idx: ::std::os::raw::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 ::std::os::raw::c_void,
    );
}
extern "C" {
    pub fn Fl_Menu_Item_user_data(arg1: *const Fl_Menu_Item) -> *mut ::std::os::raw::c_void;
}
extern "C" {
    pub fn Fl_Menu_Item_set_user_data(arg1: *mut Fl_Menu_Item, data: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Menu_Item_draw(
        self_: *const Fl_Menu_Item,
        x: ::std::os::raw::c_int,
        y: ::std::os::raw::c_int,
        w: ::std::os::raw::c_int,
        h: ::std::os::raw::c_int,
        m: *const ::std::os::raw::c_void,
        selected: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Item_measure(
        self_: *const Fl_Menu_Item,
        hp: *mut ::std::os::raw::c_int,
        m: *const ::std::os::raw::c_void,
    ) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_image(self_: *mut Fl_Menu_Item, image: *mut ::std::os::raw::c_void);
}
extern "C" {
    pub fn Fl_Menu_Item_add_image(
        self_: *mut Fl_Menu_Item,
        image: *mut ::std::os::raw::c_void,
        on_left: ::std::os::raw::c_int,
    );
}
extern "C" {
    pub fn Fl_Menu_Item_children(self_: *const Fl_Menu_Item) -> ::std::os::raw::c_int;
}
extern "C" {
    pub fn Fl_Menu_Item_at(
        self_: *const Fl_Menu_Item,
        idx: ::std::os::raw::c_int,
    ) -> *const Fl_Menu_Item;
}
