--- lbbs/src/bbs_net.c 2005/03/21 17:08:21 1.1 +++ lbbs/src/bbs_net.c 2005/03/21 17:52:09 1.4 @@ -30,9 +30,10 @@ #include #include -#define TIME_OUT 15 -#define MAX_PROCESS_BAR_LEN 30 -#define MAXSTATION 26*2 +#define TIME_OUT 15 +#define MAX_PROCESS_BAR_LEN 30 +#define MAXSTATION 26*2 +#define STATION_PER_LINE 4 struct _bbsnet_conf { @@ -81,8 +82,8 @@ load_bbsnet_conf (const char *file_confi bbsnet_conf[item_count].port = t4 ? atoi (t4) : 23; p_menuitem = p_menu->items[item_count] = malloc (sizeof (MENU_ITEM)); - p_menuitem->row = 2 + item_count / 3; - p_menuitem->col = 5 + item_count % 3 * 20; + p_menuitem->row = 2 + item_count / STATION_PER_LINE; + p_menuitem->col = 5 + item_count % STATION_PER_LINE * 20; sprintf (p_menuitem->action, "%d", item_count); p_menuitem->submenu = 0; p_menuitem->priv = 0; @@ -92,7 +93,7 @@ load_bbsnet_conf (const char *file_confi (item_count < MAXSTATION / 2 ? 'A' + item_count : 'a' + item_count); p_menuitem->name[1] = '\0'; sprintf (p_menuitem->text, "1;36m%c. %s", - p_menuitem->name[0], bbsnet_conf[item_count].host2); + p_menuitem->name[0], bbsnet_conf[item_count].host1); item_count++; } @@ -298,14 +299,6 @@ bbsnet_connect (int n) setsockopt (sock, IPPROTO_IP, IP_TOS, &tos, sizeof (int)); prints ("\033[1;31m连接成功!\033[m\n"); -/* - if (connect (sock, (struct sockaddr *) &sin, sizeof (struct sockaddr)) < 0) - { - log_error ("Socket connect failed\n"); - return -3; - } -*/ - FD_ZERO (&inputs); FD_SET (0, &inputs); FD_SET (sock, &inputs); @@ -391,7 +384,7 @@ bbsnet_refresh () ("╰══════════════════════════════════════╯"); moveto (23, 0); prints - (" [\x1b[1;32mCtrl+C\x1b[m]退出 [\x1b[1;32m^\x1b[m]第一个 [\x1b[1;32m$\x1b[m]最后一个\033[0;37m\033[m"); + (" [\x1b[1;32mCtrl+C\x1b[m]退出"); iflush (); return 0; @@ -422,7 +415,7 @@ bbsnet_selchange (int new_pos) int bbs_net () { - int ch, result, pos; + int ch, result, pos, i; char file_config[256]; time_t t_last_action; fd_set inputs, testfds; @@ -476,16 +469,14 @@ bbs_net () bbsnet_selchange (pos); break; case KEY_UP: - menu_control (&bbsnet_menu, KEY_UP); - menu_control (&bbsnet_menu, KEY_UP); - menu_control (&bbsnet_menu, KEY_UP); + for (i = 0; i < STATION_PER_LINE; i++) + menu_control (&bbsnet_menu, KEY_UP); pos = bbsnet_menu.p_menu[0]->item_cur_pos; bbsnet_selchange (pos); break; case KEY_DOWN: - menu_control (&bbsnet_menu, KEY_DOWN); - menu_control (&bbsnet_menu, KEY_DOWN); - menu_control (&bbsnet_menu, KEY_DOWN); + for (i = 0; i < STATION_PER_LINE; i++) + menu_control (&bbsnet_menu, KEY_DOWN); pos = bbsnet_menu.p_menu[0]->item_cur_pos; bbsnet_selchange (pos); break; @@ -499,17 +490,6 @@ bbs_net () pos = bbsnet_menu.p_menu[0]->item_cur_pos; bbsnet_selchange (pos); break; - case '^': - pos = bbsnet_menu.p_menu[0]->item_cur_pos = 0; - bbsnet_selchange (pos); - break; - case '$': - pos = bbsnet_menu.p_menu[0]->item_cur_pos - = bbsnet_menu.p_menu[0]->item_count - 1; - if (pos < 0) - pos = 0; - bbsnet_selchange (pos); - break; default: break; }