2 #ifndef __DOSLIB_HW_VGA_VGAGUI_H
3 #define __DOSLIB_HW_VGA_VGAGUI_H
5 #include <hw/cpu/cpu.h>
8 #define MAX_MENU_BAR 16
10 struct vga_menu_item {
12 unsigned char shortcut_key;
13 unsigned char disabled:1;
14 unsigned char reserved:7;
17 struct vga_menu_bar_item {
19 unsigned char shortcut_key,shortcut_scan;
21 const struct vga_menu_item** items;
24 struct vga_menu_bar_state {
25 const struct vga_menu_bar_item* bar;
31 VGA_ALPHA_PTR screen,buf;
35 extern struct vga_menu_bar_state vga_menu_bar;
37 extern void (*vga_menu_idle)();
39 void vga_menu_draw_item(VGA_ALPHA_PTR screen,const struct vga_menu_item **scan,unsigned int i,unsigned int w,unsigned int color,unsigned int tcolor);
40 const struct vga_menu_item *vga_menu_bar_menuitem(const struct vga_menu_bar_item *menu,unsigned char row,unsigned int *spec);
41 int vga_msg_box_create(struct vga_msg_box *b,const char *msg,unsigned int extra_y,unsigned int min_x);
42 int vga_menu_item_nonselectable(const struct vga_menu_item *m);
43 void vga_msg_box_destroy(struct vga_msg_box *b);
44 int confirm_yes_no_dialog(const char *message);
45 const struct vga_menu_item *vga_menu_bar_keymon();
46 void vga_menu_bar_draw();
48 #endif /* __DOSLIB_HW_VGA_VGAGUI_H */