Lines Matching refs:menu
46 menu_driver(MENU *menu, int c) in menu_driver() argument
53 if (menu == NULL) in menu_driver()
55 if (menu->posted == 0) in menu_driver()
57 if (menu->items == NULL) in menu_driver()
59 if (*menu->items == NULL) in menu_driver()
61 if (menu->in_init == 1) in menu_driver()
65 if (menu->items[menu->cur_item] == NULL) in menu_driver()
68 drv_new_item = menu->items[menu->cur_item]; in menu_driver()
69 it = menu->cur_item; in menu_driver()
70 drv_top_row = menu->top_row; in menu_driver()
80 && (menu->pattern == NULL)) in menu_driver()
82 free(menu->pattern); in menu_driver()
83 menu->pattern = NULL; in menu_driver()
84 menu->plen = 0; in menu_driver()
85 menu->match_len = 0; in menu_driver()
109 if ((drv_top_row + menu->rows - 1)> menu->item_rows) in menu_driver()
114 drv_scroll = menu->item_rows - menu->rows in menu_driver()
115 - menu->top_row; in menu_driver()
116 if (drv_scroll > menu->rows) { in menu_driver()
117 drv_scroll = menu->rows; in menu_driver()
129 if (menu->rows < menu->top_row) { in menu_driver()
130 drv_scroll = menu->rows; in menu_driver()
132 drv_scroll = menu->top_row; in menu_driver()
142 drv_new_item = menu->items[0]; in menu_driver()
145 drv_new_item = menu->items[menu->item_count - 1]; in menu_driver()
148 if ((menu->cur_item + 1) >= menu->item_count) { in menu_driver()
149 if ((menu->opts & O_NONCYCLIC) in menu_driver()
153 drv_new_item = menu->items[0]; in menu_driver()
157 menu->items[menu->cur_item + 1]; in menu_driver()
161 if (menu->cur_item == 0) { in menu_driver()
162 if ((menu->opts & O_NONCYCLIC) in menu_driver()
166 drv_new_item = menu->items[ in menu_driver()
167 menu->item_count - 1]; in menu_driver()
171 menu->items[menu->cur_item - 1]; in menu_driver()
175 if ((menu->opts & (O_RADIO | O_ONEVALUE)) != 0) { in menu_driver()
176 if ((menu->opts & O_RADIO) == O_RADIO) { in menu_driver()
186 for (i = 0; i < menu->item_count; i++) { in menu_driver()
187 if ((menu->items[i]->selected) && in menu_driver()
189 menu->items[i]->selected ^= 1; in menu_driver()
190 _menui_draw_item(menu, in menu_driver()
191 menu->items[i]->index); in menu_driver()
197 _menui_draw_item(menu, drv_new_item->index); in menu_driver()
207 _menui_draw_item(menu, in menu_driver()
219 if (menu->pattern == NULL) in menu_driver()
222 if (menu->plen == 0) in menu_driver()
224 menu->pattern[menu->plen--] = '\0'; in menu_driver()
227 if (menu->pattern == NULL) in menu_driver()
230 status = _menui_match_pattern(menu, 0, in menu_driver()
233 drv_new_item = menu->items[it]; in menu_driver()
236 if (menu->pattern == NULL) in menu_driver()
239 status = _menui_match_pattern(menu, 0, in menu_driver()
242 drv_new_item = menu->items[it]; in menu_driver()
250 status = _menui_match_pattern(menu, (unsigned char) c, in menu_driver()
252 drv_new_item = menu->items[it]; in menu_driver()
260 if ((drv_new_item->index == menu->cur_item) in menu_driver()
261 && ((menu->opts & O_SHOWMATCH) == O_SHOWMATCH)) { in menu_driver()
262 pos_menu_cursor(menu); in menu_driver()
275 if (drv_new_item->row >= (drv_top_row + menu->rows)) in menu_driver()
276 drv_top_row = drv_new_item->row - menu->rows + 1; in menu_driver()
278 if ((drv_new_item->index != menu->cur_item) in menu_driver()
279 || (drv_top_row != menu->top_row)) in menu_driver()
280 _menui_goto_item(menu, drv_new_item, drv_top_row); in menu_driver()