回精華區
作者itoc, 信區: itoc
標題[功能] visio.c 視窗型的 Y/N
時間03/08/03
作者: itoc (風調雨順,國泰民安) 看板: plan
標題: [功能] 視窗型的 Y/N
時間: Sun Aug  3 17:25:15 2003                          Updated: 2003/08/02

  把 vans() 中 Y/N 的問題換成視窗型的

: visio.c:vans()   改成這樣

int
vans(prompt)
  char *prompt;
{
  char ans[3];

#ifdef POPUP_ANSWER
  int len;
  char buf[80], *str, *menu[4];

  /* itoc.010812.註解: 會自動換成小寫的 */

  if (str = (char *) strrchr(prompt, '['))
  {
    if (str[-6] == 'Y' && str[-4] == 'N' && (str[1] == 'Y' || str[1] == 'N'))
    {
      strcpy(buf, prompt);
      len = str - prompt;
      str = buf + len;
      *str = '\0';
      str[2] = str[1];
      menu[0] = str + 1;
      menu[1] = "Yes  是";
      menu[2] = "No   否";
      menu[3] = NULL;
      return pans((b_lines-4) >> 1, 20, len > 32 ? "確認(Y/N)?" : buf, menu);
    }
  }
#endif

  return vget(b_lines, 0, prompt, ans, sizeof(ans), LCECHO);
}

: 有些 Y/N 的問題不適合改為視窗型的,例如 acct_setup()
: 那麼就把 (Y/N) 改為 (y/n)

-   if (vans("修改資料(Y/N)?[N] ") != 'y')
+   if (vans("修改資料(y/n)?[N] ") != 'y')

--
□ 本文章由 itocitoc.Dorm11.NCTU.edu.tw 發表
精華選讀←離開[主題上]主題下(k)上篇(j)下篇S/a搜尋 G串列 TAB精華 ↑↓捲 Pg/Space翻