| 6203 | } |
| 6204 | |
| 6205 | staticfn int |
| 6206 | handler_whatis_coord(void) |
| 6207 | { |
| 6208 | winid tmpwin; |
| 6209 | anything any; |
| 6210 | char buf[BUFSZ]; |
| 6211 | menu_item *window_pick = (menu_item *) 0; |
| 6212 | int pick_cnt; |
| 6213 | char gpc = iflags.getpos_coords; |
| 6214 | int clr = NO_COLOR; |
| 6215 | |
| 6216 | tmpwin = create_nhwindow(NHW_MENU); |
| 6217 | start_menu(tmpwin, MENU_BEHAVE_STANDARD); |
| 6218 | any = cg.zeroany; |
| 6219 | any.a_char = GPCOORDS_COMPASS; |
| 6220 | add_menu(tmpwin, &nul_glyphinfo, &any, GPCOORDS_COMPASS, |
| 6221 | 0, ATR_NONE, clr, |
| 6222 | "compass ('east' or '3s' or '2n,4w')", |
| 6223 | (gpc == GPCOORDS_COMPASS) |
| 6224 | ? MENU_ITEMFLAGS_SELECTED : MENU_ITEMFLAGS_NONE); |
| 6225 | any.a_char = GPCOORDS_COMFULL; |
| 6226 | add_menu(tmpwin, &nul_glyphinfo, &any, GPCOORDS_COMFULL, |
| 6227 | 0, ATR_NONE, clr, |
| 6228 | "full compass ('east' or '3south' or '2north,4west')", |
| 6229 | (gpc == GPCOORDS_COMFULL) |
| 6230 | ? MENU_ITEMFLAGS_SELECTED : MENU_ITEMFLAGS_NONE); |
| 6231 | any.a_char = GPCOORDS_MAP; |
| 6232 | add_menu(tmpwin, &nul_glyphinfo, &any, GPCOORDS_MAP, |
| 6233 | 0, ATR_NONE, clr, "map <x,y>", |
| 6234 | (gpc == GPCOORDS_MAP) |
| 6235 | ? MENU_ITEMFLAGS_SELECTED : MENU_ITEMFLAGS_NONE); |
| 6236 | any.a_char = GPCOORDS_SCREEN; |
| 6237 | add_menu(tmpwin, &nul_glyphinfo, &any, GPCOORDS_SCREEN, |
| 6238 | 0, ATR_NONE, clr, "screen [row,column]", |
| 6239 | (gpc == GPCOORDS_SCREEN) |
| 6240 | ? MENU_ITEMFLAGS_SELECTED : MENU_ITEMFLAGS_NONE); |
| 6241 | any.a_char = GPCOORDS_NONE; |
| 6242 | add_menu(tmpwin, &nul_glyphinfo, &any, GPCOORDS_NONE, |
| 6243 | 0, ATR_NONE, clr, "none (no coordinates displayed)", |
| 6244 | (gpc == GPCOORDS_NONE) |
| 6245 | ? MENU_ITEMFLAGS_SELECTED : MENU_ITEMFLAGS_NONE); |
| 6246 | add_menu_str(tmpwin, ""); |
| 6247 | Sprintf(buf, "map: upper-left: <%d,%d>, lower-right: <%d,%d>%s", |
| 6248 | 1, 0, COLNO - 1, ROWNO - 1, |
| 6249 | flags.verbose ? "; column 0 unused, off left edge" : ""); |
| 6250 | add_menu_str(tmpwin, buf); |
| 6251 | if (strcmp(windowprocs.name, "tty")) /* only show for non-tty */ |
| 6252 | add_menu_str(tmpwin, |
| 6253 | "screen: row is offset to accommodate tty interface's use of top line"); |
| 6254 | #if COLNO == 80 |
| 6255 | #define COL80ARG flags.verbose ? "; column 80 is not used" : "" |
| 6256 | #else |
| 6257 | #define COL80ARG "" |
| 6258 | #endif |
| 6259 | Sprintf(buf, "screen: upper-left: [%02d,%02d], lower-right: [%d,%d]%s", |
| 6260 | 0 + 2, 1, ROWNO - 1 + 2, COLNO - 1, COL80ARG); |
| 6261 | #undef COL80ARG |
| 6262 | add_menu_str(tmpwin, buf); |
no test coverage detected