} MenuItem;
typedef struct Menu {
+ char* menu_name;
MenuItem** menu_items;
int menu_length;
int selected_item;
}
Menu*
-create_menu(MenuItem** item_list)
+create_menu(char* menu_name, MenuItem** item_list)
{
Menu* new_menu;
new_menu = malloc(sizeof(Menu));
+ new_menu->menu_name = menu_name;
new_menu->menu_items = item_list;
new_menu->menu_length = array_length(MenuItem*, item_list);
new_menu->selected_item = 0;
return 0;
}
+int
+get_selected_item(Menu* menu)
+{
+ return menu->selected_item;
+}
+
+int
+set_selected_item(Menu* menu, int selected_item)
+{
+ menu->selected_item = selected_item;
+
+ return 0;
+}
+
+int
+get_menu_length(Menu* menu)
+{
+ return menu->menu_length;
+}
+
int
swap_item(Menu* menu, int src_index, int dest_index)
{
(menu->focused == true) ?
TS_MENU_SELECTED: TS_MENU_NONSELECTED
));
- mvwprintw(menu->menu_win, 0, MENU_PAD_LEFT, "TODO");
+ mvwprintw(menu->menu_win, 0, MENU_PAD_LEFT, menu->menu_name);
wattroff(menu->menu_win, COLOR_PAIR(0));
/* draw inner menu */