X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;f=headers%2Fmenu.h;h=7db3c077d66ab47837f7133abf67218edc3aae54;hb=30e6d7ecd064b2425f438293787a26d89781548b;hp=ce0883e82d44f2e8ccb2356d2f816badeecdfdbc;hpb=303071d6e0488d7da4dc810897948b8ed97354d2;p=taskasaur.git diff --git a/headers/menu.h b/headers/menu.h index ce0883e..7db3c07 100644 --- a/headers/menu.h +++ b/headers/menu.h @@ -2,18 +2,32 @@ #ifndef __MENU_H__ #define __MENU_H__ +#include + /* ncurses doesn't support multiline menu items, * so i wrote my own menu lib */ +typedef enum { + MENU_UP = 0, + MENU_DOWN, + MENU_TOP, + MENU_BOTTOM, + MENU_MOVE_UP, + MENU_MOVE_DOWN, + MENU_DELETE +} MenuAction; + typedef struct Menu Menu; typedef struct MenuItem MenuItem; extern MenuItem* create_menuitem(char* contents); extern Menu* create_menu(MenuItem** item_list); -extern int set_menu_items(Menu* menu, 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 menu_driver(Menu* menu, MenuAction action); extern int render_menu(Menu* menu);