X-Git-Url: https://git.danieliu.xyz/?p=taskasaur.git;a=blobdiff_plain;f=headers%2Fmenu.h;h=f1bac0ea491b0697cb10a153ed1e29bacbee1b14;hp=b1ef7ee2210a0dc21dcc6b297c163e753a718b6f;hb=8b6f14fe02e0bb9a851cf0e134fc109f311c2e4d;hpb=676735938747a951747af87ce2e6789553dc83b2 diff --git a/headers/menu.h b/headers/menu.h index b1ef7ee..f1bac0e 100644 --- a/headers/menu.h +++ b/headers/menu.h @@ -2,6 +2,9 @@ #ifndef __MENU_H__ #define __MENU_H__ +#include +#include + /* ncurses doesn't support multiline menu items, * so i wrote my own menu lib */ @@ -12,7 +15,8 @@ typedef enum { MENU_BOTTOM, MENU_MOVE_UP, MENU_MOVE_DOWN, - MENU_DELETE + MENU_DELETE, + MENU_APPEND } MenuAction; typedef struct Menu Menu; @@ -20,9 +24,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);