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

Diff of /lbbs/src/bbs_net.c

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

Revision 1.3 by sysadm, Mon Mar 21 17:28:01 2005 UTC Revision 1.4 by sysadm, Mon Mar 21 17:52:09 2005 UTC
# Line 30  Line 30 
30  #include <unistd.h>  #include <unistd.h>
31  #include <netdb.h>  #include <netdb.h>
32    
33  #define TIME_OUT        15  #define TIME_OUT                15
34  #define MAX_PROCESS_BAR_LEN 30  #define MAX_PROCESS_BAR_LEN     30
35  #define MAXSTATION  26*2  #define MAXSTATION              26*2
36    #define STATION_PER_LINE        4
37    
38  struct _bbsnet_conf  struct _bbsnet_conf
39  {  {
# Line 81  load_bbsnet_conf (const char *file_confi Line 82  load_bbsnet_conf (const char *file_confi
82        bbsnet_conf[item_count].port = t4 ? atoi (t4) : 23;        bbsnet_conf[item_count].port = t4 ? atoi (t4) : 23;
83    
84        p_menuitem = p_menu->items[item_count] = malloc (sizeof (MENU_ITEM));        p_menuitem = p_menu->items[item_count] = malloc (sizeof (MENU_ITEM));
85        p_menuitem->row = 2 + item_count / 3;        p_menuitem->row = 2 + item_count / STATION_PER_LINE;
86        p_menuitem->col = 5 + item_count % 3 * 20;        p_menuitem->col = 5 + item_count % STATION_PER_LINE * 20;
87        sprintf (p_menuitem->action, "%d", item_count);        sprintf (p_menuitem->action, "%d", item_count);
88        p_menuitem->submenu = 0;        p_menuitem->submenu = 0;
89        p_menuitem->priv = 0;        p_menuitem->priv = 0;
# Line 383  bbsnet_refresh () Line 384  bbsnet_refresh ()
384      ("╰══════════════════════════════════════╯");      ("╰══════════════════════════════════════╯");
385    moveto (23, 0);    moveto (23, 0);
386    prints    prints
387      (" [\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]退出");
388    iflush ();    iflush ();
389    
390    return 0;    return 0;
# Line 414  bbsnet_selchange (int new_pos) Line 415  bbsnet_selchange (int new_pos)
415  int  int
416  bbs_net ()  bbs_net ()
417  {  {
418    int ch, result, pos;    int ch, result, pos, i;
419    char file_config[256];    char file_config[256];
420    time_t t_last_action;    time_t t_last_action;
421    fd_set inputs, testfds;    fd_set inputs, testfds;
# Line 468  bbs_net () Line 469  bbs_net ()
469                    bbsnet_selchange (pos);                    bbsnet_selchange (pos);
470                    break;                    break;
471                  case KEY_UP:                  case KEY_UP:
472                    menu_control (&bbsnet_menu, KEY_UP);                    for (i = 0; i < STATION_PER_LINE; i++)
473                    menu_control (&bbsnet_menu, KEY_UP);                      menu_control (&bbsnet_menu, KEY_UP);
                   menu_control (&bbsnet_menu, KEY_UP);  
474                    pos = bbsnet_menu.p_menu[0]->item_cur_pos;                    pos = bbsnet_menu.p_menu[0]->item_cur_pos;
475                    bbsnet_selchange (pos);                    bbsnet_selchange (pos);
476                    break;                    break;
477                  case KEY_DOWN:                  case KEY_DOWN:
478                    menu_control (&bbsnet_menu, KEY_DOWN);                    for (i = 0; i < STATION_PER_LINE; i++)
479                    menu_control (&bbsnet_menu, KEY_DOWN);                      menu_control (&bbsnet_menu, KEY_DOWN);
                   menu_control (&bbsnet_menu, KEY_DOWN);  
480                    pos = bbsnet_menu.p_menu[0]->item_cur_pos;                    pos = bbsnet_menu.p_menu[0]->item_cur_pos;
481                    bbsnet_selchange (pos);                    bbsnet_selchange (pos);
482                    break;                    break;
# Line 491  bbs_net () Line 490  bbs_net ()
490                    pos = bbsnet_menu.p_menu[0]->item_cur_pos;                    pos = bbsnet_menu.p_menu[0]->item_cur_pos;
491                    bbsnet_selchange (pos);                    bbsnet_selchange (pos);
492                    break;                    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;  
493                  default:                  default:
494                    break;                    break;
495                  }                  }


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

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