8 /* ncurses doesn't support multiline menu items,
9 * so i wrote my own menu lib */
25 typedef struct Menu Menu;
26 typedef struct MenuItem MenuItem;
28 extern MenuItem* create_menuitem(char* contents);
30 extern Menu* create_menu(char* menu_name, MenuItem** item_list);
31 extern WINDOW* get_menu_win(Menu* menu);
32 extern int set_menu_win(Menu* menu, WINDOW* win);
33 extern WINDOW* get_menu_subwin(Menu* menu);
34 extern MenuItem* get_menu_item(Menu* menu, int index);
35 extern int set_menu_focus(Menu* menu, bool focus);
36 extern int get_selected_item(Menu* menu);
37 extern int set_selected_item(Menu* menu, int selected_item);
38 extern int get_menu_length(Menu* menu);
40 extern int insert_item(Menu* menu, MenuItem* menuitem, int index);
41 extern int delete_item(Menu* menu, int index);
43 extern int menu_driver(Menu* menu, MenuAction action);
45 extern int render_menu(Menu* menu);
47 extern int free_menu(Menu* menu);