changes in popup menu is now preserved
[taskasaur.git] / menu.c
diff --git a/menu.c b/menu.c
index da064ba..816b5dd 100644 (file)
--- a/menu.c
+++ b/menu.c
@@ -114,12 +114,30 @@ get_menu_item(Menu* menu, int index)
     return menu->menu_items[index];
 }
 
+MenuItem**
+get_menu_itemlist(Menu* menu)
+{
+    return menu->menu_items;
+}
+
 int
 get_selected_item(Menu* menu)
 {
     return menu->selected_item;
 }
 
+MenuItem*
+get_selected_menuitem(Menu* menu)
+{
+    return get_menu_item(menu, get_selected_item(menu));
+}
+
+bool
+get_menu_focused(Menu* menu)
+{
+    return menu->focused;
+}
+
 int
 get_menu_length(Menu* menu)
 {
@@ -207,6 +225,13 @@ set_menu_itemheight(Menu* menu, int (*item_height)(MenuItem*))
     return 0;
 }
 
+int
+set_menuitem_title(MenuItem* menuitem, char* title)
+{
+    menuitem->title = title;
+    return 0;
+}
+
 int
 set_menuitem_descrip(MenuItem* menuitem, char* descrip)
 {
@@ -418,6 +443,7 @@ default_render_item(Menu* menu, int item_index, int start_y)
 {
     MenuItem* curitem;
     int hlcolor;
+
     curitem = menu->menu_items[item_index];
 
     /* color selected item */
@@ -425,31 +451,8 @@ default_render_item(Menu* menu, int item_index, int start_y)
     wattron(menu->menu_win, hlcolor);
     mvwprintw(menu->menu_win, start_y, 0, curitem->title);
     wattroff(menu->menu_win, hlcolor);
-
 }
 
-/* int */
-/* default_render_item(Menu* menu, int item_index, int start_y) */
-/* { */
-/*     MenuItem* curitem; */
-/*     int hlcolor; */
-/*     curitem = menu->menu_items[item_index]; */
-
-/*     /1* color selected item *1/ */
-/*     hlcolor = COLOR_PAIR((item_index == menu->selected_item && menu->focused == true) ? TS_SELECTED : TS_NONSELECTED); */
-/*     wattron(menu->menu_win, hlcolor); */
-/*     mvwprintw(menu->menu_win, start_y, 0, curitem->title); */
-/*     wattroff(menu->menu_win, hlcolor); */
-
-/*     /1* display number of items *1/ */
-/*     if (strlen(curitem->description) > 0) { */
-/*         wattron(menu->menu_win, COLOR_PAIR(TS_ITEMCOUNT)); */
-/*         mvwprintw(menu->menu_win, start_y+1, 0, curitem->description); */ 
-/*         wattroff(menu->menu_win, COLOR_PAIR(TS_ITEMCOUNT)); */
-/*     } */
-
-/*     return item_height(curitem); */
-/* } */
 
 int
 default_item_height(MenuItem* menuitem)
@@ -457,19 +460,6 @@ default_item_height(MenuItem* menuitem)
     return 1; // maybe account for line wrap by default
 }
 
-/* int */
-/* item_height(MenuItem* menuitem) */
-/* { */
-/*     int lines; */
-
-/*     lines = 1; */
-/*     if (strlen(menuitem->description) > 0) { */
-/*         lines += 1; */
-/*     } */
-
-/*     return lines; */
-/* } */
-
 int
 items_visible(Menu* menu, int offset)
 {