Меню Ncurses – запоминание выбора

Я использую библиотеку Ncurses для создания некоторых интерактивных меню, и я не знаю, как это сделать. У меня есть простое меню с несколькими параметрами, я обернулся O_ONEVALUE поэтому многие параметры могут быть выбраны одновременно, перед публикацией меню я получаю все пункты меню и отмечаю их как выбранные или нет, в зависимости от битовой маски, которую я храню где-то else, но когда меню опубликовано, каждая опция отключена, вот код:

 //acquiring menu items ITEM** header_items = menu_items(params.header_opts_menu); ITEM* cur_item; if (header_items == NULL) { client_cleanup(); syslog_nsys_f(LOG_ERR, "error while getting header menu items"); } //selecting appropriate items long header_menu_items_count = ARRAY_SIZE(header_menu_choices); for (i = 0; i < header_menu_items_count; ++i) { if ((params.header_flags & (1 << (i))) != 0) decision = TRUE; else decision = FALSE; if (set_item_value(header_items[i], TRUE) != E_OK) { client_cleanup(); syslog_nsys_f(LOG_ERR,"error while setting menu item value"); } } if (post_menu(params.header_opts_menu) != E_OK) { client_cleanup(); syslog_nsys_f(LOG_ERR,"error while posting header options menu"); } set_menu_items(params.header_opts_menu,header_items); refresh(); 

даже если я устанавливаю значение каждого элемента в TRUE ничего не происходит, где моя ошибка?

    Похоже, вы пытаетесь вызвать set_menu_items после вызова post_menu. Проверьте возвращаемое значение из set_menu_items, вероятно, вы получаете ошибку E_POSTED.