number_pad:3,4,-1 (trunk only)
[See the cvs log from flag.h for comments pertaining to iflags.num_pad and Cmd.num_pad, Cmd.commands[], Cmd.serialno.]
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
/* SCCS Id: @(#)macwin.c 3.5 1996/01/15 */
|
||||
/* SCCS Id: @(#)macwin.c 3.5 2005/11/19 */
|
||||
/* Copyright (c) Jon W{tte, Hao-Yang Wang, Jonathan Handler 1992. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
|
||||
@@ -1366,8 +1366,11 @@ mac_destroy_nhwindow (winid win) {
|
||||
|
||||
|
||||
void
|
||||
mac_number_pad (int pad) {
|
||||
iflags.num_pad = pad;
|
||||
mac_number_pad (int pad) { /* no effect */
|
||||
#if defined(__SC__) || defined(__MRC__)
|
||||
# pragma unused(pad)
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -1382,7 +1385,7 @@ trans_num_keys(EventRecord *theEvent) {
|
||||
* The number_pad option controls how digits are interpreted.
|
||||
*/
|
||||
#if 0
|
||||
if (iflags.num_pad) {
|
||||
if (Cmd.num_pad) {
|
||||
Handle h = GetResource('Nump', theEvent->modifiers & shiftKey ? 129 : 128);
|
||||
if (h) {
|
||||
short inkey = (theEvent->message & keyCodeMask), *ab = (short *)*h;
|
||||
@@ -2146,7 +2149,7 @@ BaseCursor(NhWindow *wind, Point pt)
|
||||
if (cursor_locked)
|
||||
dir = (char *)0;
|
||||
else {
|
||||
dir_bas = iflags.num_pad ? (char *) ndir : (char *) sdir;
|
||||
dir_bas = (char *)Cmd.dirchars;
|
||||
dir = strchr(dir_bas, *click_to_cmd(pt.h / wind->char_width + 1 ,
|
||||
pt.v / wind->row_height, CLICK_1));
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* SCCS Id: @(#)vmstty.c 3.5 2003/09/18 */
|
||||
/* SCCS Id: @(#)vmstty.c 3.5 2005/11/19 */
|
||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||
/* NetHack may be freely redistributed. See license for details. */
|
||||
/* tty.c - (VMS) version */
|
||||
@@ -137,10 +137,10 @@ vms_getchar()
|
||||
key = (short)'\n';
|
||||
} else if (kb_buf == ESC || kb_buf == CSI || kb_buf == SS3) {
|
||||
switch(parse_function_key((int)kb_buf)) {
|
||||
case SMG$K_TRM_UP: key = iflags.num_pad ? '8' : 'k'; break;
|
||||
case SMG$K_TRM_DOWN: key = iflags.num_pad ? '2' : 'j'; break;
|
||||
case SMG$K_TRM_LEFT: key = iflags.num_pad ? '4' : 'h'; break;
|
||||
case SMG$K_TRM_RIGHT: key = iflags.num_pad ? '6' : 'l'; break;
|
||||
case SMG$K_TRM_UP: key = Cmd.move_N; break;
|
||||
case SMG$K_TRM_DOWN: key = Cmd.move_S; break;
|
||||
case SMG$K_TRM_LEFT: key = Cmd.move_W; break;
|
||||
case SMG$K_TRM_RIGHT: key = Cmd.move_E; break;
|
||||
default: key = ESC; break;
|
||||
}
|
||||
} else {
|
||||
@@ -157,10 +157,10 @@ vms_getchar()
|
||||
if (recurse++ == 0 && kb != 0) {
|
||||
smg$read_keystroke(&kb, &key);
|
||||
switch (key) {
|
||||
case SMG$K_TRM_UP: iflags.num_pad ? '8' : key = 'k'; break;
|
||||
case SMG$K_TRM_DOWN: iflags.num_pad ? '2' : key = 'j'; break;
|
||||
case SMG$K_TRM_LEFT: iflags.num_pad ? '4' : key = 'h'; break;
|
||||
case SMG$K_TRM_RIGHT: iflags.num_pad ? '6' : key = 'l'; break;
|
||||
case SMG$K_TRM_UP: key = Cmd.move_N; break;
|
||||
case SMG$K_TRM_DOWN: key = Cmd.move_S; break;
|
||||
case SMG$K_TRM_LEFT: key = Cmd.move_W; break;
|
||||
case SMG$K_TRM_RIGHT: key = Cmd.move_E; break;
|
||||
case '\r': key = '\n'; break;
|
||||
default: if (key > 255) key = ESC;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user