/[LeafOK_CVS]/lbbs/src/menu.c
ViewVC logotype

Diff of /lbbs/src/menu.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.41 by sysadm, Thu May 15 06:24:11 2025 UTC Revision 1.43 by sysadm, Thu May 15 09:15:52 2025 UTC
# Line 959  int menu_control(MENU_SET *p_menu_set, i Line 959  int menu_control(MENU_SET *p_menu_set, i
959                  p_menu_set->menu_item_pos[p_menu_set->choose_step] = menu_item_pos;                  p_menu_set->menu_item_pos[p_menu_set->choose_step] = menu_item_pos;
960                  display_menu_cursor(p_menu_set, 1);                  display_menu_cursor(p_menu_set, 1);
961                  break;                  break;
962            case KEY_HOME:
963            case KEY_PGUP:
964                    display_menu_cursor(p_menu_set, 0);
965                    menu_item_pos = 0;
966                    while (menu_item_pos < p_menu->item_count - 1)
967                    {
968                            menu_item_id = p_menu->items[menu_item_pos];
969                            p_menu_item = get_menu_item_by_id(p_menu_set, menu_item_id);
970                            if (p_menu_item == NULL)
971                            {
972                                    log_error("get_menu_item_by_id(%d) return NULL pointer\n", menu_item_id);
973                                    return -1;
974                            }
975    
976                            if (p_menu_set->menu_item_display[menu_item_pos])
977                            {
978                                    break;
979                            }
980    
981                            menu_item_pos++;
982                    }
983                    p_menu_set->menu_item_pos[p_menu_set->choose_step] = menu_item_pos;
984                    display_menu_cursor(p_menu_set, 1);
985                    break;
986            case KEY_END:
987            case KEY_PGDN:
988                    display_menu_cursor(p_menu_set, 0);
989                    menu_item_pos = p_menu->item_count - 1;
990                    while (menu_item_pos > 0)
991                    {
992                            menu_item_id = p_menu->items[menu_item_pos];
993                            p_menu_item = get_menu_item_by_id(p_menu_set, menu_item_id);
994                            if (p_menu_item == NULL)
995                            {
996                                    log_error("get_menu_item_by_id(%d) return NULL pointer\n", menu_item_id);
997                                    return -1;
998                            }
999    
1000                            if (p_menu_set->menu_item_display[menu_item_pos])
1001                            {
1002                                    break;
1003                            }
1004    
1005                            menu_item_pos--;
1006                    }
1007                    p_menu_set->menu_item_pos[p_menu_set->choose_step] = menu_item_pos;
1008                    display_menu_cursor(p_menu_set, 1);
1009                    break;
1010          default:          default:
1011                  if (isalnum(key))                  if (isalnum(key))
1012                  {                  {


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1