+Menu*
+make_popup_menu(TodoItem* itemdata)
+{
+ MenuItem** subtask_menuitems;
+ Menu* new_popup_menu;
+ WINDOW* popup_win;
+
+ subtask_menuitems = subtasklist_to_menuitem(itemdata->subtask_list, itemdata->subtask_count);
+ new_popup_menu = create_menu(strdup(""), subtask_menuitems);
+
+ /* popup win */
+ int maxheight, maxwidth;
+ getmaxyx(stdscr, maxheight, maxwidth);
+ popup_win = newwin(
+ maxheight-2*POPUP_BORDER,
+ maxwidth-2*2*POPUP_BORDER,
+ POPUP_BORDER,
+ POPUP_BORDER*2
+ );
+
+ set_menu_win(new_popup_menu, popup_win);
+ set_menu_focus(new_popup_menu, 1);
+
+ return new_popup_menu;
+}
+
+int
+render_popup_menu(Menu* popup_menu)