pinosaur
/
taskasaur.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
debugging seg
[taskasaur.git]
/
headers
/
menu.h
diff --git
a/headers/menu.h
b/headers/menu.h
index
0d17779
..
f1bac0e
100644
(file)
--- a/
headers/menu.h
+++ b/
headers/menu.h
@@
-2,6
+2,9
@@
#ifndef __MENU_H__
#define __MENU_H__
#ifndef __MENU_H__
#define __MENU_H__
+#include <stdbool.h>
+#include <ncurses.h>
+
/* ncurses doesn't support multiline menu items,
* so i wrote my own menu lib */
/* ncurses doesn't support multiline menu items,
* so i wrote my own menu lib */
@@
-9,7
+12,11
@@
typedef enum {
MENU_UP = 0,
MENU_DOWN,
MENU_TOP,
MENU_UP = 0,
MENU_DOWN,
MENU_TOP,
- MENU_BOTTOM
+ MENU_BOTTOM,
+ MENU_MOVE_UP,
+ MENU_MOVE_DOWN,
+ MENU_DELETE,
+ MENU_APPEND
} MenuAction;
typedef struct Menu Menu;
} MenuAction;
typedef struct Menu Menu;
@@
-17,10
+24,13
@@
typedef struct MenuItem MenuItem;
extern MenuItem* create_menuitem(char* contents);
extern MenuItem* create_menuitem(char* contents);
-extern Menu* create_menu(MenuItem** item_list);
-extern int set_menu_items(Menu* 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_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);
extern int menu_driver(Menu* menu, MenuAction action);