MENU
menu_grey(MENU *menu)
set_menu_pad(MENU *menu, int pad)
menu_pad(MENU *menu)
extern MENU _menui_default_menu;
set_menu_fore(MENU *menu, attr_t attr)
menu_fore(MENU *menu)
set_menu_back(MENU *menu, attr_t attr)
menu_back(MENU *menu)
set_menu_grey(MENU *menu, attr_t attr)
menu_driver(MENU *menu, int c)
_menui_goto_item(MENU *menu, ITEM *item, int new_top_row)
_menui_match_items(MENU *menu, int direction, int *item_matched)
_menui_match_pattern(MENU *menu, int c, int direction, int *item_matched)
_menui_calc_neighbours(MENU *menu, int item_no);
static void _menui_redraw_menu(MENU *menu, int old_top_row, int old_cur_item);
_menui_draw_item(MENU *menu, int item)
_menui_stitch_items(MENU *menu)
_menui_draw_menu(MENU *menu)
_menui_max_item_size(MENU *menu)
_menui_redraw_menu(MENU *menu, int old_top_row, int old_cur_item)
_menui_calc_neighbours(MENU *menu, int item_no)
void _menui_draw_item(MENU *menu, int item);
int _menui_draw_menu(MENU *menu);
int _menui_goto_item(MENU *menu, ITEM *item, int new_top_row);
int _menui_match_pattern(MENU *menu, int c, int direction ,
int _menui_match_items(MENU *menu, int direction, int *item_matched);
void _menui_max_item_size(MENU *menu);
int _menui_stitch_items(MENU *menu);
set_item_init(MENU *menu, Menu_Hook func)
item_init(MENU *menu)
set_item_term(MENU *menu, Menu_Hook func)
item_term(MENU *menu)
item_selected(MENU *menu, int **sel)
set_current_item(MENU *param_menu, ITEM *item)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
extern MENU _menui_default_menu;
current_item(MENU *menu)
menu_mark(MENU *menu)
set_menu_unmark(MENU *m, char *mark)
MENU *menu = m;
menu_unmark(MENU *menu)
set_menu_win(MENU *menu, WINDOW *win)
menu_win(MENU *menu)
set_menu_sub(MENU *menu, WINDOW *sub)
menu_sub(MENU *menu)
set_menu_format(MENU *param_menu, int rows, int cols)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
menu_format(MENU *param_menu, int *rows, int *cols)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
set_menu_init(MENU *menu, Menu_Hook func)
menu_init(MENU *menu)
set_menu_term(MENU *menu, Menu_Hook func)
menu_term(MENU *menu)
menu_opts(MENU *menu)
set_menu_opts(MENU *param_menu, OPTIONS opts)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
menu_opts_on(MENU *param_menu, OPTIONS opts)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
MENU _menui_default_menu = {
menu_opts_off(MENU *param_menu, OPTIONS opts)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
menu_pattern(MENU *menu)
set_menu_pattern(MENU *param_menu, char *pat)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
MENU *
MENU *the_menu;
if ((the_menu = (MENU *)malloc(sizeof(MENU))) == NULL)
(void)memcpy(the_menu, &_menui_default_menu, sizeof(MENU));
free_menu(MENU *menu)
scale_menu(MENU *param_menu, int *rows, int *cols)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
set_menu_items(MENU *param_menu, ITEM **items)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
menu_items(MENU *menu)
item_count(MENU *menu)
set_top_row(MENU *param_menu, int row)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
top_row(MENU *param_menu)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
pos_menu_cursor(MENU *menu)
set_menu_mark(MENU *m, char *mark)
MENU *menu = m;
int menu_driver(MENU *, int);
int scale_menu(MENU *, int *, int *);
int set_top_row(MENU *, int);
int pos_menu_cursor(MENU *);
int top_row(MENU *);
int free_menu(MENU *);
char menu_back(MENU *);
char menu_fore(MENU *);
void menu_format(MENU *, int *, int *);
char menu_grey(MENU *);
Menu_Hook menu_init(MENU *);
char *menu_mark(MENU *);
OPTIONS menu_opts(MENU *);
int menu_opts_off(MENU *, OPTIONS);
int menu_opts_on(MENU *, OPTIONS);
int menu_pad(MENU *);
char *menu_pattern(MENU *);
WINDOW *menu_sub(MENU *);
Menu_Hook menu_term(MENU *);
char *menu_unmark (MENU *);
char *menu_userptr(MENU *);
WINDOW *menu_win(MENU *);
MENU *new_menu(ITEM **);
int post_menu(MENU *);
int set_menu_back(MENU *, attr_t);
int set_menu_fore(MENU *, attr_t);
int set_menu_format(MENU *, int, int);
int set_menu_grey(MENU *, attr_t);
int set_menu_init(MENU *, Menu_Hook);
int set_menu_items(MENU *, ITEM **);
int set_menu_mark(MENU *, char *);
int set_menu_opts(MENU *, OPTIONS);
int set_menu_pad(MENU *, int);
int set_menu_pattern(MENU *, char *);
int set_menu_sub(MENU *, WINDOW *);
int set_menu_term(MENU *, Menu_Hook);
int set_menu_unmark(MENU *, char *);
int set_menu_userptr(MENU *, char *);
int set_menu_win(MENU *, WINDOW *);
int unpost_menu(MENU *);
ITEM *current_item(MENU *);
int item_count(MENU *);
Menu_Hook item_init(MENU *);
int item_selected(MENU *, int **); /* return the item index of selected */
Menu_Hook item_term(MENU *);
ITEM **menu_items(MENU *);
int set_current_item(MENU *, ITEM *);
int set_item_init(MENU *, Menu_Hook);
int set_item_term(MENU *, Menu_Hook);
typedef void (*Menu_Hook) (MENU *);
MENU *parent; /* menu this item is bound to */
post_menu(MENU *menu)
unpost_menu(MENU *menu)
extern MENU _menui_default_menu;
menu_userptr(MENU *menu)
set_menu_userptr(MENU *param_menu, char *userptr)
MENU *menu = (param_menu != NULL) ? param_menu : &_menui_default_menu;
menu_def : MENU NAME
| NO SUB MENU { cur_menu->info->mopt &= ~MC_SUBMENU; }
| SUB MENU { cur_menu->info->mopt |= MC_SUBMENU; }
elem : NEXT MENU NAME
| SUB MENU NAME
%token <i_value> X Y W H NO BOX SUB HELP MENU NEXT EXIT ACTION ENDWIN OPTION