source: trunk/essentials/sys-libs/ncurses/kNIX-bootstrap-os2.x86-lib_keyname.c

Last change on this file was 3073, checked in by bird, 18 years ago

bootstrap config of ncurses.

  • Property svn:keywords set to Id
File size: 6.2 KB
Line 
1/* generated by MKkeyname.awk */
2
3#include <curses.priv.h>
4#include <tic.h>
5#include <term_entry.h>
6
7const struct kn _nc_key_names[] = {
8 { "KEY_A1", KEY_A1 },
9 { "KEY_A3", KEY_A3 },
10 { "KEY_B2", KEY_B2 },
11 { "KEY_BACKSPACE", KEY_BACKSPACE },
12 { "KEY_BEG", KEY_BEG },
13 { "KEY_BREAK", KEY_BREAK },
14 { "KEY_BTAB", KEY_BTAB },
15 { "KEY_C1", KEY_C1 },
16 { "KEY_C3", KEY_C3 },
17 { "KEY_CANCEL", KEY_CANCEL },
18 { "KEY_CATAB", KEY_CATAB },
19 { "KEY_CLEAR", KEY_CLEAR },
20 { "KEY_CLOSE", KEY_CLOSE },
21 { "KEY_COMMAND", KEY_COMMAND },
22 { "KEY_COPY", KEY_COPY },
23 { "KEY_CREATE", KEY_CREATE },
24 { "KEY_CTAB", KEY_CTAB },
25 { "KEY_DC", KEY_DC },
26 { "KEY_DL", KEY_DL },
27 { "KEY_DOWN", KEY_DOWN },
28 { "KEY_EIC", KEY_EIC },
29 { "KEY_END", KEY_END },
30 { "KEY_ENTER", KEY_ENTER },
31 { "KEY_EOL", KEY_EOL },
32 { "KEY_EOS", KEY_EOS },
33 { "KEY_EXIT", KEY_EXIT },
34 { "KEY_F(0)", KEY_F(0) },
35 { "KEY_F(1)", KEY_F(1) },
36 { "KEY_F(10)", KEY_F(10) },
37 { "KEY_F(11)", KEY_F(11) },
38 { "KEY_F(12)", KEY_F(12) },
39 { "KEY_F(13)", KEY_F(13) },
40 { "KEY_F(14)", KEY_F(14) },
41 { "KEY_F(15)", KEY_F(15) },
42 { "KEY_F(16)", KEY_F(16) },
43 { "KEY_F(17)", KEY_F(17) },
44 { "KEY_F(18)", KEY_F(18) },
45 { "KEY_F(19)", KEY_F(19) },
46 { "KEY_F(2)", KEY_F(2) },
47 { "KEY_F(20)", KEY_F(20) },
48 { "KEY_F(21)", KEY_F(21) },
49 { "KEY_F(22)", KEY_F(22) },
50 { "KEY_F(23)", KEY_F(23) },
51 { "KEY_F(24)", KEY_F(24) },
52 { "KEY_F(25)", KEY_F(25) },
53 { "KEY_F(26)", KEY_F(26) },
54 { "KEY_F(27)", KEY_F(27) },
55 { "KEY_F(28)", KEY_F(28) },
56 { "KEY_F(29)", KEY_F(29) },
57 { "KEY_F(3)", KEY_F(3) },
58 { "KEY_F(30)", KEY_F(30) },
59 { "KEY_F(31)", KEY_F(31) },
60 { "KEY_F(32)", KEY_F(32) },
61 { "KEY_F(33)", KEY_F(33) },
62 { "KEY_F(34)", KEY_F(34) },
63 { "KEY_F(35)", KEY_F(35) },
64 { "KEY_F(36)", KEY_F(36) },
65 { "KEY_F(37)", KEY_F(37) },
66 { "KEY_F(38)", KEY_F(38) },
67 { "KEY_F(39)", KEY_F(39) },
68 { "KEY_F(4)", KEY_F(4) },
69 { "KEY_F(40)", KEY_F(40) },
70 { "KEY_F(41)", KEY_F(41) },
71 { "KEY_F(42)", KEY_F(42) },
72 { "KEY_F(43)", KEY_F(43) },
73 { "KEY_F(44)", KEY_F(44) },
74 { "KEY_F(45)", KEY_F(45) },
75 { "KEY_F(46)", KEY_F(46) },
76 { "KEY_F(47)", KEY_F(47) },
77 { "KEY_F(48)", KEY_F(48) },
78 { "KEY_F(49)", KEY_F(49) },
79 { "KEY_F(5)", KEY_F(5) },
80 { "KEY_F(50)", KEY_F(50) },
81 { "KEY_F(51)", KEY_F(51) },
82 { "KEY_F(52)", KEY_F(52) },
83 { "KEY_F(53)", KEY_F(53) },
84 { "KEY_F(54)", KEY_F(54) },
85 { "KEY_F(55)", KEY_F(55) },
86 { "KEY_F(56)", KEY_F(56) },
87 { "KEY_F(57)", KEY_F(57) },
88 { "KEY_F(58)", KEY_F(58) },
89 { "KEY_F(59)", KEY_F(59) },
90 { "KEY_F(6)", KEY_F(6) },
91 { "KEY_F(60)", KEY_F(60) },
92 { "KEY_F(61)", KEY_F(61) },
93 { "KEY_F(62)", KEY_F(62) },
94 { "KEY_F(63)", KEY_F(63) },
95 { "KEY_F(7)", KEY_F(7) },
96 { "KEY_F(8)", KEY_F(8) },
97 { "KEY_F(9)", KEY_F(9) },
98 { "KEY_FIND", KEY_FIND },
99 { "KEY_HELP", KEY_HELP },
100 { "KEY_HOME", KEY_HOME },
101 { "KEY_IC", KEY_IC },
102 { "KEY_IL", KEY_IL },
103 { "KEY_LEFT", KEY_LEFT },
104 { "KEY_LL", KEY_LL },
105 { "KEY_MARK", KEY_MARK },
106 { "KEY_MESSAGE", KEY_MESSAGE },
107 { "KEY_MOUSE", KEY_MOUSE },
108 { "KEY_MOVE", KEY_MOVE },
109 { "KEY_NEXT", KEY_NEXT },
110 { "KEY_NPAGE", KEY_NPAGE },
111 { "KEY_OPEN", KEY_OPEN },
112 { "KEY_OPTIONS", KEY_OPTIONS },
113 { "KEY_PPAGE", KEY_PPAGE },
114 { "KEY_PREVIOUS", KEY_PREVIOUS },
115 { "KEY_PRINT", KEY_PRINT },
116 { "KEY_REDO", KEY_REDO },
117 { "KEY_REFERENCE", KEY_REFERENCE },
118 { "KEY_REFRESH", KEY_REFRESH },
119 { "KEY_REPLACE", KEY_REPLACE },
120 { "KEY_RESET", KEY_RESET },
121 { "KEY_RESIZE", KEY_RESIZE },
122 { "KEY_RESTART", KEY_RESTART },
123 { "KEY_RESUME", KEY_RESUME },
124 { "KEY_RIGHT", KEY_RIGHT },
125 { "KEY_SAVE", KEY_SAVE },
126 { "KEY_SBEG", KEY_SBEG },
127 { "KEY_SCANCEL", KEY_SCANCEL },
128 { "KEY_SCOMMAND", KEY_SCOMMAND },
129 { "KEY_SCOPY", KEY_SCOPY },
130 { "KEY_SCREATE", KEY_SCREATE },
131 { "KEY_SDC", KEY_SDC },
132 { "KEY_SDL", KEY_SDL },
133 { "KEY_SELECT", KEY_SELECT },
134 { "KEY_SEND", KEY_SEND },
135 { "KEY_SEOL", KEY_SEOL },
136 { "KEY_SEXIT", KEY_SEXIT },
137 { "KEY_SF", KEY_SF },
138 { "KEY_SFIND", KEY_SFIND },
139 { "KEY_SHELP", KEY_SHELP },
140 { "KEY_SHOME", KEY_SHOME },
141 { "KEY_SIC", KEY_SIC },
142 { "KEY_SLEFT", KEY_SLEFT },
143 { "KEY_SMESSAGE", KEY_SMESSAGE },
144 { "KEY_SMOVE", KEY_SMOVE },
145 { "KEY_SNEXT", KEY_SNEXT },
146 { "KEY_SOPTIONS", KEY_SOPTIONS },
147 { "KEY_SPREVIOUS", KEY_SPREVIOUS },
148 { "KEY_SPRINT", KEY_SPRINT },
149 { "KEY_SR", KEY_SR },
150 { "KEY_SREDO", KEY_SREDO },
151 { "KEY_SREPLACE", KEY_SREPLACE },
152 { "KEY_SRESET", KEY_SRESET },
153 { "KEY_SRIGHT", KEY_SRIGHT },
154 { "KEY_SRSUME", KEY_SRSUME },
155 { "KEY_SSAVE", KEY_SSAVE },
156 { "KEY_SSUSPEND", KEY_SSUSPEND },
157 { "KEY_STAB", KEY_STAB },
158 { "KEY_SUNDO", KEY_SUNDO },
159 { "KEY_SUSPEND", KEY_SUSPEND },
160 { "KEY_UNDO", KEY_UNDO },
161 { "KEY_UP", KEY_UP },
162 { 0, 0 }};
163
164NCURSES_EXPORT(NCURSES_CONST char *) keyname (int c)
165{
166 static char **table;
167 int i;
168 char name[20];
169 char *p;
170 NCURSES_CONST char *result = 0;
171
172 if (c == -1) {
173 result = "-1";
174 } else {
175 for (i = 0; _nc_key_names[i].name != 0; i++) {
176 if (_nc_key_names[i].code == c) {
177 result = (NCURSES_CONST char *)_nc_key_names[i].name;
178 break;
179 }
180 }
181
182 if (result == 0 && (c >= 0 && c < 256)) {
183 if (table == 0)
184 table = typeCalloc(char *, 256);
185 if (table != 0) {
186 if (table[c] == 0) {
187 p = name;
188 if (c >= 128) {
189 strcpy(p, "M-");
190 p += 2;
191 c -= 128;
192 }
193 if (c < 32)
194 sprintf(p, "^%c", c + '@');
195 else if (c == 127)
196 strcpy(p, "^?");
197 else
198 sprintf(p, "%c", c);
199 table[c] = strdup(name);
200 }
201 result = table[c];
202 }
203#if NCURSES_EXT_FUNCS && NCURSES_XNAMES
204 } else if (result == 0 && cur_term != 0) {
205 int j, k;
206 char * bound;
207 TERMTYPE *tp = &(cur_term->type);
208 int save_trace = _nc_tracing;
209
210 _nc_tracing = 0; /* prevent recursion via keybound() */
211 for (j = 0; (bound = keybound(c, j)) != 0; ++j) {
212 for(k = STRCOUNT; k < NUM_STRINGS(tp); k++) {
213 if (tp->Strings[k] != 0 && !strcmp(bound, tp->Strings[k])) {
214 result = ExtStrname(tp, k, strnames);
215 break;
216 }
217 }
218 if (result != 0)
219 break;
220 }
221 _nc_tracing = save_trace;
222#endif
223 }
224 }
225 return result;
226}
227
228#if USE_WIDEC_SUPPORT
229NCURSES_EXPORT(NCURSES_CONST char *) key_name (wchar_t c)
230{
231 NCURSES_CONST char *result = keyname((int)c);
232 if (!strncmp(result, "M-", 2)) result = 0;
233 return result;
234}
235#endif
Note: See TracBrowser for help on using the repository browser.