|
C-Menu 0.2.9
A User Interface Toolkit
|
Main loop and command processor for the C-Menu menu system. More...
Functions | |
| unsigned int | menu_engine (Init *init) |
| The main loop of the menu system. | |
| unsigned int | menu_cmd_processor (Init *init) |
| Processes user input for the menu system. | |
Main loop and command processor for the C-Menu menu system.
This module contains the core functionality for displaying menus, processing user input, and executing commands associated with menu choices. It handles navigation through menu options, responding to special keys, and managing the display of submenus, pick lists, forms, and views.
| unsigned int menu_cmd_processor | ( | Init * | init | ) |
Processes user input for the menu system.
| init | A pointer to an Init structure containing initialization data for the menu system. |
Move up to the previous menu choice
Move down to the next menu choice
Select the current menu choice and execute its associated command
Display help information for the menu system
Exit the menu and return to the previous menu or exit if at top
send default printer output file to printer
open the default editor
process mouse event
If the user presses a key that corresponds to a menu choice's letter, select that menu choice
Execute the command associated with the selected menu choice
Display help information for the menu system
Display a submenu or perform an action associated with the selected menu choice
Display a pick list or form associated with the selected menu choice
Display a form associated with the selected menu choice
Display a view associated with the selected menu choice
open ckeys (test curses keys)
return to calling program
write the current menu configuration to a file
Definition at line 118 of file menu_engine.c.
References abend(), Init::begx, Menu::begx, Init::begy, Menu::begy, Line::choice_letter, Line::choice_text, click_x, click_y, Init::cols, Menu::cols, Line::command_str, Line::command_type, CT_CKEYS, CT_EXEC, CT_FORM, CT_HELP, CT_MENU, CT_PICK, CT_RETURN, CT_VIEW, CT_WRITE_CONFIG, destroy_argv(), destroy_menu(), earg_str, eargc, eargv, Menu::f_help_spec, full_screen_fork_exec(), full_screen_shell(), Menu::help_spec, Menu::item_count, Menu::line, Menu::line_idx, Init::lines, MA_CONTINUE, MA_DISPLAY_MENU, MA_RESET_MENU, MA_RETURN, Init::mapp_help, Init::menu, menu_engine(), MT_CHOICE, mvwaddstr_fill(), new_menu(), parse_menu_description(), parse_opt_args(), popup_ckeys(), popup_form(), popup_pick(), popup_view(), Line::raw_text, restore_wins(), str_to_args(), strnz__cat(), strnz__cpy(), Init::title, trim(), Line::type, Menu::win, write_config(), xwgetch(), and zero_opt_args().
Referenced by menu_engine().
| unsigned int menu_engine | ( | Init * | init | ) |
The main loop of the menu system.
| init | A pointer to an Init structure containing initialization data for the menu system. |
Definition at line 37 of file menu_engine.c.
References Menu::begx, Menu::begy, Menu::box, Menu::choice_max_len, Line::choice_text, Menu::cols, destroy_menu(), Menu::item_count, Menu::line, Menu::line_idx, Menu::lines, MA_CONTINUE, MA_DISPLAY_MENU, MA_RESET_MENU, MA_RETURN, Init::menu, menu_cmd_processor(), MT_CHOICE, parse_menu_description(), Perror(), restore_wins(), ssnprintf(), Menu::text_max_len, Menu::title, Line::type, Menu::win, win_box, win_del(), win_new(), win_ptr, and win_win.
Referenced by main(), menu_cmd_processor(), and popup_menu().