X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;f=headers%2Fmenu.h;h=b8ab467712cc9e64b88cc60b21bf99fc9ccf24e6;hb=b20271f7814ad6f40a62bed60a8ff00348b5c05c;hp=7db3c077d66ab47837f7133abf67218edc3aae54;hpb=30e6d7ecd064b2425f438293787a26d89781548b;p=taskasaur.git diff --git a/headers/menu.h b/headers/menu.h index 7db3c07..b8ab467 100644 --- a/headers/menu.h +++ b/headers/menu.h @@ -3,6 +3,7 @@ #define __MENU_H__ #include +#include /* ncurses doesn't support multiline menu items, * so i wrote my own menu lib */ @@ -14,7 +15,10 @@ typedef enum { MENU_BOTTOM, MENU_MOVE_UP, MENU_MOVE_DOWN, - MENU_DELETE + MENU_DELETE, + MENU_APPEND, + MENU_INSERT_ABOVE, + MENU_INSERT_BELOW } MenuAction; typedef struct Menu Menu; @@ -22,10 +26,13 @@ typedef struct MenuItem MenuItem; extern MenuItem* create_menuitem(char* contents); -extern Menu* create_menu(MenuItem** item_list); +extern Menu* create_menu(char* menu_name, MenuItem** item_list); extern int set_menu_win(Menu* menu, WINDOW* win); extern MenuItem* get_menu_items(Menu* menu); extern int set_menu_focus(Menu* menu, bool focus); +extern int get_selected_item(Menu* menu); +extern int set_selected_item(Menu* menu, int selected_item); +extern int get_menu_length(Menu* menu); extern int menu_driver(Menu* menu, MenuAction action);