Mercurial > repos > rliterman > csp2
comparison CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/include/ncursesw/term.h @ 69:33d812a61356
planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author | jpayne |
---|---|
date | Tue, 18 Mar 2025 17:55:14 -0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
67:0e9998148a16 | 69:33d812a61356 |
---|---|
1 /**************************************************************************** | |
2 * Copyright 2018-2021,2023 Thomas E. Dickey * | |
3 * Copyright 1998-2013,2017 Free Software Foundation, Inc. * | |
4 * * | |
5 * Permission is hereby granted, free of charge, to any person obtaining a * | |
6 * copy of this software and associated documentation files (the * | |
7 * "Software"), to deal in the Software without restriction, including * | |
8 * without limitation the rights to use, copy, modify, merge, publish, * | |
9 * distribute, distribute with modifications, sublicense, and/or sell * | |
10 * copies of the Software, and to permit persons to whom the Software is * | |
11 * furnished to do so, subject to the following conditions: * | |
12 * * | |
13 * The above copyright notice and this permission notice shall be included * | |
14 * in all copies or substantial portions of the Software. * | |
15 * * | |
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * | |
17 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * | |
18 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * | |
19 * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * | |
20 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * | |
21 * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * | |
22 * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * | |
23 * * | |
24 * Except as contained in this notice, the name(s) of the above copyright * | |
25 * holders shall not be used in advertising or otherwise to promote the * | |
26 * sale, use or other dealings in this Software without prior written * | |
27 * authorization. * | |
28 ****************************************************************************/ | |
29 | |
30 /****************************************************************************/ | |
31 /* Author: Zeyd M. Ben-Halim <zmbenhal@netcom.com> 1992,1995 */ | |
32 /* and: Eric S. Raymond <esr@snark.thyrsus.com> */ | |
33 /* and: Thomas E. Dickey 1995-on */ | |
34 /****************************************************************************/ | |
35 | |
36 /* $Id: MKterm.h.awk.in,v 1.85 2023/04/23 19:15:36 tom Exp $ */ | |
37 | |
38 /* | |
39 ** term.h -- Definition of struct term | |
40 */ | |
41 | |
42 #ifndef NCURSES_TERM_H_incl | |
43 #define NCURSES_TERM_H_incl 1 | |
44 | |
45 #undef NCURSES_VERSION | |
46 #define NCURSES_VERSION "6.5" | |
47 | |
48 #include <ncursesw/ncurses_dll.h> | |
49 | |
50 #ifdef __cplusplus | |
51 extern "C" { | |
52 #endif | |
53 | |
54 /* Make this file self-contained by providing defaults for the HAVE_TERMIO[S]_H | |
55 * definition (based on the system for which this was configured). | |
56 */ | |
57 | |
58 #ifndef __NCURSES_H | |
59 | |
60 typedef struct screen SCREEN; | |
61 | |
62 #if 1 | |
63 #undef NCURSES_SP_FUNCS | |
64 #define NCURSES_SP_FUNCS 20240427 | |
65 #undef NCURSES_SP_NAME | |
66 #define NCURSES_SP_NAME(name) name##_sp | |
67 | |
68 /* Define the sp-funcs helper function */ | |
69 #undef NCURSES_SP_OUTC | |
70 #define NCURSES_SP_OUTC NCURSES_SP_NAME(NCURSES_OUTC) | |
71 typedef int (*NCURSES_SP_OUTC)(SCREEN*, int); | |
72 #endif | |
73 | |
74 #endif /* __NCURSES_H */ | |
75 | |
76 #undef NCURSES_CONST | |
77 #define NCURSES_CONST const | |
78 | |
79 #undef NCURSES_SBOOL | |
80 #define NCURSES_SBOOL char | |
81 | |
82 #undef NCURSES_USE_DATABASE | |
83 #define NCURSES_USE_DATABASE 1 | |
84 | |
85 #undef NCURSES_USE_TERMCAP | |
86 #define NCURSES_USE_TERMCAP 1 | |
87 | |
88 #undef NCURSES_XNAMES | |
89 #define NCURSES_XNAMES 1 | |
90 | |
91 /* We will use these symbols to hide differences between | |
92 * termios/termio/sgttyb interfaces. | |
93 */ | |
94 #undef TTY | |
95 #undef SET_TTY | |
96 #undef GET_TTY | |
97 | |
98 /* Assume POSIX termio if we have the header and function */ | |
99 /* #if HAVE_TERMIOS_H && HAVE_TCGETATTR */ | |
100 #if 1 && 1 | |
101 | |
102 #undef TERMIOS | |
103 #define TERMIOS 1 | |
104 | |
105 #include <termios.h> | |
106 #define TTY struct termios | |
107 | |
108 #else /* !HAVE_TERMIOS_H */ | |
109 | |
110 /* #if HAVE_TERMIO_H */ | |
111 #if 1 | |
112 | |
113 #undef TERMIOS | |
114 #define TERMIOS 1 | |
115 | |
116 #include <termio.h> | |
117 #define TTY struct termio | |
118 | |
119 #else /* !HAVE_TERMIO_H */ | |
120 | |
121 #if (defined(_WIN32) || defined(_WIN64)) | |
122 #if 0 | |
123 #include <ncursesw/win32_curses.h> | |
124 #define TTY struct winconmode | |
125 #else | |
126 #include <ncursesw/ncurses_mingw.h> | |
127 #define TTY struct termios | |
128 #endif | |
129 #else | |
130 #undef TERMIOS | |
131 #include <sgtty.h> | |
132 #include <sys/ioctl.h> | |
133 #define TTY struct sgttyb | |
134 #endif /* MINGW32 */ | |
135 #endif /* HAVE_TERMIO_H */ | |
136 | |
137 #endif /* HAVE_TERMIOS_H */ | |
138 | |
139 #ifdef TERMIOS | |
140 #define GET_TTY(fd, buf) tcgetattr(fd, buf) | |
141 #define SET_TTY(fd, buf) tcsetattr(fd, TCSADRAIN, buf) | |
142 #elif 0 && (defined(_WIN32) || defined(_WIN64)) | |
143 #define GET_TTY(fd, buf) _nc_console_getmode(_nc_console_fd2handle(fd),buf) | |
144 #define SET_TTY(fd, buf) _nc_console_setmode(_nc_console_fd2handle(fd),buf) | |
145 #else | |
146 #define GET_TTY(fd, buf) gtty(fd, buf) | |
147 #define SET_TTY(fd, buf) stty(fd, buf) | |
148 #endif | |
149 | |
150 #ifndef GCC_NORETURN | |
151 #define GCC_NORETURN /* nothing */ | |
152 #endif | |
153 | |
154 #define NAMESIZE 256 | |
155 | |
156 /* The cast works because TERMTYPE is the first data in TERMINAL */ | |
157 #define CUR ((TERMTYPE *)(cur_term))-> | |
158 | |
159 #define auto_left_margin CUR Booleans[0] | |
160 #define auto_right_margin CUR Booleans[1] | |
161 #define no_esc_ctlc CUR Booleans[2] | |
162 #define ceol_standout_glitch CUR Booleans[3] | |
163 #define eat_newline_glitch CUR Booleans[4] | |
164 #define erase_overstrike CUR Booleans[5] | |
165 #define generic_type CUR Booleans[6] | |
166 #define hard_copy CUR Booleans[7] | |
167 #define has_meta_key CUR Booleans[8] | |
168 #define has_status_line CUR Booleans[9] | |
169 #define insert_null_glitch CUR Booleans[10] | |
170 #define memory_above CUR Booleans[11] | |
171 #define memory_below CUR Booleans[12] | |
172 #define move_insert_mode CUR Booleans[13] | |
173 #define move_standout_mode CUR Booleans[14] | |
174 #define over_strike CUR Booleans[15] | |
175 #define status_line_esc_ok CUR Booleans[16] | |
176 #define dest_tabs_magic_smso CUR Booleans[17] | |
177 #define tilde_glitch CUR Booleans[18] | |
178 #define transparent_underline CUR Booleans[19] | |
179 #define xon_xoff CUR Booleans[20] | |
180 #define needs_xon_xoff CUR Booleans[21] | |
181 #define prtr_silent CUR Booleans[22] | |
182 #define hard_cursor CUR Booleans[23] | |
183 #define non_rev_rmcup CUR Booleans[24] | |
184 #define no_pad_char CUR Booleans[25] | |
185 #define non_dest_scroll_region CUR Booleans[26] | |
186 #define can_change CUR Booleans[27] | |
187 #define back_color_erase CUR Booleans[28] | |
188 #define hue_lightness_saturation CUR Booleans[29] | |
189 #define col_addr_glitch CUR Booleans[30] | |
190 #define cr_cancels_micro_mode CUR Booleans[31] | |
191 #define has_print_wheel CUR Booleans[32] | |
192 #define row_addr_glitch CUR Booleans[33] | |
193 #define semi_auto_right_margin CUR Booleans[34] | |
194 #define cpi_changes_res CUR Booleans[35] | |
195 #define lpi_changes_res CUR Booleans[36] | |
196 #define columns CUR Numbers[0] | |
197 #define init_tabs CUR Numbers[1] | |
198 #define lines CUR Numbers[2] | |
199 #define lines_of_memory CUR Numbers[3] | |
200 #define magic_cookie_glitch CUR Numbers[4] | |
201 #define padding_baud_rate CUR Numbers[5] | |
202 #define virtual_terminal CUR Numbers[6] | |
203 #define width_status_line CUR Numbers[7] | |
204 #define num_labels CUR Numbers[8] | |
205 #define label_height CUR Numbers[9] | |
206 #define label_width CUR Numbers[10] | |
207 #define max_attributes CUR Numbers[11] | |
208 #define maximum_windows CUR Numbers[12] | |
209 #define max_colors CUR Numbers[13] | |
210 #define max_pairs CUR Numbers[14] | |
211 #define no_color_video CUR Numbers[15] | |
212 #define buffer_capacity CUR Numbers[16] | |
213 #define dot_vert_spacing CUR Numbers[17] | |
214 #define dot_horz_spacing CUR Numbers[18] | |
215 #define max_micro_address CUR Numbers[19] | |
216 #define max_micro_jump CUR Numbers[20] | |
217 #define micro_col_size CUR Numbers[21] | |
218 #define micro_line_size CUR Numbers[22] | |
219 #define number_of_pins CUR Numbers[23] | |
220 #define output_res_char CUR Numbers[24] | |
221 #define output_res_line CUR Numbers[25] | |
222 #define output_res_horz_inch CUR Numbers[26] | |
223 #define output_res_vert_inch CUR Numbers[27] | |
224 #define print_rate CUR Numbers[28] | |
225 #define wide_char_size CUR Numbers[29] | |
226 #define buttons CUR Numbers[30] | |
227 #define bit_image_entwining CUR Numbers[31] | |
228 #define bit_image_type CUR Numbers[32] | |
229 #define back_tab CUR Strings[0] | |
230 #define bell CUR Strings[1] | |
231 #define carriage_return CUR Strings[2] | |
232 #define change_scroll_region CUR Strings[3] | |
233 #define clear_all_tabs CUR Strings[4] | |
234 #define clear_screen CUR Strings[5] | |
235 #define clr_eol CUR Strings[6] | |
236 #define clr_eos CUR Strings[7] | |
237 #define column_address CUR Strings[8] | |
238 #define command_character CUR Strings[9] | |
239 #define cursor_address CUR Strings[10] | |
240 #define cursor_down CUR Strings[11] | |
241 #define cursor_home CUR Strings[12] | |
242 #define cursor_invisible CUR Strings[13] | |
243 #define cursor_left CUR Strings[14] | |
244 #define cursor_mem_address CUR Strings[15] | |
245 #define cursor_normal CUR Strings[16] | |
246 #define cursor_right CUR Strings[17] | |
247 #define cursor_to_ll CUR Strings[18] | |
248 #define cursor_up CUR Strings[19] | |
249 #define cursor_visible CUR Strings[20] | |
250 #define delete_character CUR Strings[21] | |
251 #define delete_line CUR Strings[22] | |
252 #define dis_status_line CUR Strings[23] | |
253 #define down_half_line CUR Strings[24] | |
254 #define enter_alt_charset_mode CUR Strings[25] | |
255 #define enter_blink_mode CUR Strings[26] | |
256 #define enter_bold_mode CUR Strings[27] | |
257 #define enter_ca_mode CUR Strings[28] | |
258 #define enter_delete_mode CUR Strings[29] | |
259 #define enter_dim_mode CUR Strings[30] | |
260 #define enter_insert_mode CUR Strings[31] | |
261 #define enter_secure_mode CUR Strings[32] | |
262 #define enter_protected_mode CUR Strings[33] | |
263 #define enter_reverse_mode CUR Strings[34] | |
264 #define enter_standout_mode CUR Strings[35] | |
265 #define enter_underline_mode CUR Strings[36] | |
266 #define erase_chars CUR Strings[37] | |
267 #define exit_alt_charset_mode CUR Strings[38] | |
268 #define exit_attribute_mode CUR Strings[39] | |
269 #define exit_ca_mode CUR Strings[40] | |
270 #define exit_delete_mode CUR Strings[41] | |
271 #define exit_insert_mode CUR Strings[42] | |
272 #define exit_standout_mode CUR Strings[43] | |
273 #define exit_underline_mode CUR Strings[44] | |
274 #define flash_screen CUR Strings[45] | |
275 #define form_feed CUR Strings[46] | |
276 #define from_status_line CUR Strings[47] | |
277 #define init_1string CUR Strings[48] | |
278 #define init_2string CUR Strings[49] | |
279 #define init_3string CUR Strings[50] | |
280 #define init_file CUR Strings[51] | |
281 #define insert_character CUR Strings[52] | |
282 #define insert_line CUR Strings[53] | |
283 #define insert_padding CUR Strings[54] | |
284 #define key_backspace CUR Strings[55] | |
285 #define key_catab CUR Strings[56] | |
286 #define key_clear CUR Strings[57] | |
287 #define key_ctab CUR Strings[58] | |
288 #define key_dc CUR Strings[59] | |
289 #define key_dl CUR Strings[60] | |
290 #define key_down CUR Strings[61] | |
291 #define key_eic CUR Strings[62] | |
292 #define key_eol CUR Strings[63] | |
293 #define key_eos CUR Strings[64] | |
294 #define key_f0 CUR Strings[65] | |
295 #define key_f1 CUR Strings[66] | |
296 #define key_f10 CUR Strings[67] | |
297 #define key_f2 CUR Strings[68] | |
298 #define key_f3 CUR Strings[69] | |
299 #define key_f4 CUR Strings[70] | |
300 #define key_f5 CUR Strings[71] | |
301 #define key_f6 CUR Strings[72] | |
302 #define key_f7 CUR Strings[73] | |
303 #define key_f8 CUR Strings[74] | |
304 #define key_f9 CUR Strings[75] | |
305 #define key_home CUR Strings[76] | |
306 #define key_ic CUR Strings[77] | |
307 #define key_il CUR Strings[78] | |
308 #define key_left CUR Strings[79] | |
309 #define key_ll CUR Strings[80] | |
310 #define key_npage CUR Strings[81] | |
311 #define key_ppage CUR Strings[82] | |
312 #define key_right CUR Strings[83] | |
313 #define key_sf CUR Strings[84] | |
314 #define key_sr CUR Strings[85] | |
315 #define key_stab CUR Strings[86] | |
316 #define key_up CUR Strings[87] | |
317 #define keypad_local CUR Strings[88] | |
318 #define keypad_xmit CUR Strings[89] | |
319 #define lab_f0 CUR Strings[90] | |
320 #define lab_f1 CUR Strings[91] | |
321 #define lab_f10 CUR Strings[92] | |
322 #define lab_f2 CUR Strings[93] | |
323 #define lab_f3 CUR Strings[94] | |
324 #define lab_f4 CUR Strings[95] | |
325 #define lab_f5 CUR Strings[96] | |
326 #define lab_f6 CUR Strings[97] | |
327 #define lab_f7 CUR Strings[98] | |
328 #define lab_f8 CUR Strings[99] | |
329 #define lab_f9 CUR Strings[100] | |
330 #define meta_off CUR Strings[101] | |
331 #define meta_on CUR Strings[102] | |
332 #define newline CUR Strings[103] | |
333 #define pad_char CUR Strings[104] | |
334 #define parm_dch CUR Strings[105] | |
335 #define parm_delete_line CUR Strings[106] | |
336 #define parm_down_cursor CUR Strings[107] | |
337 #define parm_ich CUR Strings[108] | |
338 #define parm_index CUR Strings[109] | |
339 #define parm_insert_line CUR Strings[110] | |
340 #define parm_left_cursor CUR Strings[111] | |
341 #define parm_right_cursor CUR Strings[112] | |
342 #define parm_rindex CUR Strings[113] | |
343 #define parm_up_cursor CUR Strings[114] | |
344 #define pkey_key CUR Strings[115] | |
345 #define pkey_local CUR Strings[116] | |
346 #define pkey_xmit CUR Strings[117] | |
347 #define print_screen CUR Strings[118] | |
348 #define prtr_off CUR Strings[119] | |
349 #define prtr_on CUR Strings[120] | |
350 #define repeat_char CUR Strings[121] | |
351 #define reset_1string CUR Strings[122] | |
352 #define reset_2string CUR Strings[123] | |
353 #define reset_3string CUR Strings[124] | |
354 #define reset_file CUR Strings[125] | |
355 #define restore_cursor CUR Strings[126] | |
356 #define row_address CUR Strings[127] | |
357 #define save_cursor CUR Strings[128] | |
358 #define scroll_forward CUR Strings[129] | |
359 #define scroll_reverse CUR Strings[130] | |
360 #define set_attributes CUR Strings[131] | |
361 #define set_tab CUR Strings[132] | |
362 #define set_window CUR Strings[133] | |
363 #define tab CUR Strings[134] | |
364 #define to_status_line CUR Strings[135] | |
365 #define underline_char CUR Strings[136] | |
366 #define up_half_line CUR Strings[137] | |
367 #define init_prog CUR Strings[138] | |
368 #define key_a1 CUR Strings[139] | |
369 #define key_a3 CUR Strings[140] | |
370 #define key_b2 CUR Strings[141] | |
371 #define key_c1 CUR Strings[142] | |
372 #define key_c3 CUR Strings[143] | |
373 #define prtr_non CUR Strings[144] | |
374 #define char_padding CUR Strings[145] | |
375 #define acs_chars CUR Strings[146] | |
376 #define plab_norm CUR Strings[147] | |
377 #define key_btab CUR Strings[148] | |
378 #define enter_xon_mode CUR Strings[149] | |
379 #define exit_xon_mode CUR Strings[150] | |
380 #define enter_am_mode CUR Strings[151] | |
381 #define exit_am_mode CUR Strings[152] | |
382 #define xon_character CUR Strings[153] | |
383 #define xoff_character CUR Strings[154] | |
384 #define ena_acs CUR Strings[155] | |
385 #define label_on CUR Strings[156] | |
386 #define label_off CUR Strings[157] | |
387 #define key_beg CUR Strings[158] | |
388 #define key_cancel CUR Strings[159] | |
389 #define key_close CUR Strings[160] | |
390 #define key_command CUR Strings[161] | |
391 #define key_copy CUR Strings[162] | |
392 #define key_create CUR Strings[163] | |
393 #define key_end CUR Strings[164] | |
394 #define key_enter CUR Strings[165] | |
395 #define key_exit CUR Strings[166] | |
396 #define key_find CUR Strings[167] | |
397 #define key_help CUR Strings[168] | |
398 #define key_mark CUR Strings[169] | |
399 #define key_message CUR Strings[170] | |
400 #define key_move CUR Strings[171] | |
401 #define key_next CUR Strings[172] | |
402 #define key_open CUR Strings[173] | |
403 #define key_options CUR Strings[174] | |
404 #define key_previous CUR Strings[175] | |
405 #define key_print CUR Strings[176] | |
406 #define key_redo CUR Strings[177] | |
407 #define key_reference CUR Strings[178] | |
408 #define key_refresh CUR Strings[179] | |
409 #define key_replace CUR Strings[180] | |
410 #define key_restart CUR Strings[181] | |
411 #define key_resume CUR Strings[182] | |
412 #define key_save CUR Strings[183] | |
413 #define key_suspend CUR Strings[184] | |
414 #define key_undo CUR Strings[185] | |
415 #define key_sbeg CUR Strings[186] | |
416 #define key_scancel CUR Strings[187] | |
417 #define key_scommand CUR Strings[188] | |
418 #define key_scopy CUR Strings[189] | |
419 #define key_screate CUR Strings[190] | |
420 #define key_sdc CUR Strings[191] | |
421 #define key_sdl CUR Strings[192] | |
422 #define key_select CUR Strings[193] | |
423 #define key_send CUR Strings[194] | |
424 #define key_seol CUR Strings[195] | |
425 #define key_sexit CUR Strings[196] | |
426 #define key_sfind CUR Strings[197] | |
427 #define key_shelp CUR Strings[198] | |
428 #define key_shome CUR Strings[199] | |
429 #define key_sic CUR Strings[200] | |
430 #define key_sleft CUR Strings[201] | |
431 #define key_smessage CUR Strings[202] | |
432 #define key_smove CUR Strings[203] | |
433 #define key_snext CUR Strings[204] | |
434 #define key_soptions CUR Strings[205] | |
435 #define key_sprevious CUR Strings[206] | |
436 #define key_sprint CUR Strings[207] | |
437 #define key_sredo CUR Strings[208] | |
438 #define key_sreplace CUR Strings[209] | |
439 #define key_sright CUR Strings[210] | |
440 #define key_srsume CUR Strings[211] | |
441 #define key_ssave CUR Strings[212] | |
442 #define key_ssuspend CUR Strings[213] | |
443 #define key_sundo CUR Strings[214] | |
444 #define req_for_input CUR Strings[215] | |
445 #define key_f11 CUR Strings[216] | |
446 #define key_f12 CUR Strings[217] | |
447 #define key_f13 CUR Strings[218] | |
448 #define key_f14 CUR Strings[219] | |
449 #define key_f15 CUR Strings[220] | |
450 #define key_f16 CUR Strings[221] | |
451 #define key_f17 CUR Strings[222] | |
452 #define key_f18 CUR Strings[223] | |
453 #define key_f19 CUR Strings[224] | |
454 #define key_f20 CUR Strings[225] | |
455 #define key_f21 CUR Strings[226] | |
456 #define key_f22 CUR Strings[227] | |
457 #define key_f23 CUR Strings[228] | |
458 #define key_f24 CUR Strings[229] | |
459 #define key_f25 CUR Strings[230] | |
460 #define key_f26 CUR Strings[231] | |
461 #define key_f27 CUR Strings[232] | |
462 #define key_f28 CUR Strings[233] | |
463 #define key_f29 CUR Strings[234] | |
464 #define key_f30 CUR Strings[235] | |
465 #define key_f31 CUR Strings[236] | |
466 #define key_f32 CUR Strings[237] | |
467 #define key_f33 CUR Strings[238] | |
468 #define key_f34 CUR Strings[239] | |
469 #define key_f35 CUR Strings[240] | |
470 #define key_f36 CUR Strings[241] | |
471 #define key_f37 CUR Strings[242] | |
472 #define key_f38 CUR Strings[243] | |
473 #define key_f39 CUR Strings[244] | |
474 #define key_f40 CUR Strings[245] | |
475 #define key_f41 CUR Strings[246] | |
476 #define key_f42 CUR Strings[247] | |
477 #define key_f43 CUR Strings[248] | |
478 #define key_f44 CUR Strings[249] | |
479 #define key_f45 CUR Strings[250] | |
480 #define key_f46 CUR Strings[251] | |
481 #define key_f47 CUR Strings[252] | |
482 #define key_f48 CUR Strings[253] | |
483 #define key_f49 CUR Strings[254] | |
484 #define key_f50 CUR Strings[255] | |
485 #define key_f51 CUR Strings[256] | |
486 #define key_f52 CUR Strings[257] | |
487 #define key_f53 CUR Strings[258] | |
488 #define key_f54 CUR Strings[259] | |
489 #define key_f55 CUR Strings[260] | |
490 #define key_f56 CUR Strings[261] | |
491 #define key_f57 CUR Strings[262] | |
492 #define key_f58 CUR Strings[263] | |
493 #define key_f59 CUR Strings[264] | |
494 #define key_f60 CUR Strings[265] | |
495 #define key_f61 CUR Strings[266] | |
496 #define key_f62 CUR Strings[267] | |
497 #define key_f63 CUR Strings[268] | |
498 #define clr_bol CUR Strings[269] | |
499 #define clear_margins CUR Strings[270] | |
500 #define set_left_margin CUR Strings[271] | |
501 #define set_right_margin CUR Strings[272] | |
502 #define label_format CUR Strings[273] | |
503 #define set_clock CUR Strings[274] | |
504 #define display_clock CUR Strings[275] | |
505 #define remove_clock CUR Strings[276] | |
506 #define create_window CUR Strings[277] | |
507 #define goto_window CUR Strings[278] | |
508 #define hangup CUR Strings[279] | |
509 #define dial_phone CUR Strings[280] | |
510 #define quick_dial CUR Strings[281] | |
511 #define tone CUR Strings[282] | |
512 #define pulse CUR Strings[283] | |
513 #define flash_hook CUR Strings[284] | |
514 #define fixed_pause CUR Strings[285] | |
515 #define wait_tone CUR Strings[286] | |
516 #define user0 CUR Strings[287] | |
517 #define user1 CUR Strings[288] | |
518 #define user2 CUR Strings[289] | |
519 #define user3 CUR Strings[290] | |
520 #define user4 CUR Strings[291] | |
521 #define user5 CUR Strings[292] | |
522 #define user6 CUR Strings[293] | |
523 #define user7 CUR Strings[294] | |
524 #define user8 CUR Strings[295] | |
525 #define user9 CUR Strings[296] | |
526 #define orig_pair CUR Strings[297] | |
527 #define orig_colors CUR Strings[298] | |
528 #define initialize_color CUR Strings[299] | |
529 #define initialize_pair CUR Strings[300] | |
530 #define set_color_pair CUR Strings[301] | |
531 #define set_foreground CUR Strings[302] | |
532 #define set_background CUR Strings[303] | |
533 #define change_char_pitch CUR Strings[304] | |
534 #define change_line_pitch CUR Strings[305] | |
535 #define change_res_horz CUR Strings[306] | |
536 #define change_res_vert CUR Strings[307] | |
537 #define define_char CUR Strings[308] | |
538 #define enter_doublewide_mode CUR Strings[309] | |
539 #define enter_draft_quality CUR Strings[310] | |
540 #define enter_italics_mode CUR Strings[311] | |
541 #define enter_leftward_mode CUR Strings[312] | |
542 #define enter_micro_mode CUR Strings[313] | |
543 #define enter_near_letter_quality CUR Strings[314] | |
544 #define enter_normal_quality CUR Strings[315] | |
545 #define enter_shadow_mode CUR Strings[316] | |
546 #define enter_subscript_mode CUR Strings[317] | |
547 #define enter_superscript_mode CUR Strings[318] | |
548 #define enter_upward_mode CUR Strings[319] | |
549 #define exit_doublewide_mode CUR Strings[320] | |
550 #define exit_italics_mode CUR Strings[321] | |
551 #define exit_leftward_mode CUR Strings[322] | |
552 #define exit_micro_mode CUR Strings[323] | |
553 #define exit_shadow_mode CUR Strings[324] | |
554 #define exit_subscript_mode CUR Strings[325] | |
555 #define exit_superscript_mode CUR Strings[326] | |
556 #define exit_upward_mode CUR Strings[327] | |
557 #define micro_column_address CUR Strings[328] | |
558 #define micro_down CUR Strings[329] | |
559 #define micro_left CUR Strings[330] | |
560 #define micro_right CUR Strings[331] | |
561 #define micro_row_address CUR Strings[332] | |
562 #define micro_up CUR Strings[333] | |
563 #define order_of_pins CUR Strings[334] | |
564 #define parm_down_micro CUR Strings[335] | |
565 #define parm_left_micro CUR Strings[336] | |
566 #define parm_right_micro CUR Strings[337] | |
567 #define parm_up_micro CUR Strings[338] | |
568 #define select_char_set CUR Strings[339] | |
569 #define set_bottom_margin CUR Strings[340] | |
570 #define set_bottom_margin_parm CUR Strings[341] | |
571 #define set_left_margin_parm CUR Strings[342] | |
572 #define set_right_margin_parm CUR Strings[343] | |
573 #define set_top_margin CUR Strings[344] | |
574 #define set_top_margin_parm CUR Strings[345] | |
575 #define start_bit_image CUR Strings[346] | |
576 #define start_char_set_def CUR Strings[347] | |
577 #define stop_bit_image CUR Strings[348] | |
578 #define stop_char_set_def CUR Strings[349] | |
579 #define subscript_characters CUR Strings[350] | |
580 #define superscript_characters CUR Strings[351] | |
581 #define these_cause_cr CUR Strings[352] | |
582 #define zero_motion CUR Strings[353] | |
583 #define char_set_names CUR Strings[354] | |
584 #define key_mouse CUR Strings[355] | |
585 #define mouse_info CUR Strings[356] | |
586 #define req_mouse_pos CUR Strings[357] | |
587 #define get_mouse CUR Strings[358] | |
588 #define set_a_foreground CUR Strings[359] | |
589 #define set_a_background CUR Strings[360] | |
590 #define pkey_plab CUR Strings[361] | |
591 #define device_type CUR Strings[362] | |
592 #define code_set_init CUR Strings[363] | |
593 #define set0_des_seq CUR Strings[364] | |
594 #define set1_des_seq CUR Strings[365] | |
595 #define set2_des_seq CUR Strings[366] | |
596 #define set3_des_seq CUR Strings[367] | |
597 #define set_lr_margin CUR Strings[368] | |
598 #define set_tb_margin CUR Strings[369] | |
599 #define bit_image_repeat CUR Strings[370] | |
600 #define bit_image_newline CUR Strings[371] | |
601 #define bit_image_carriage_return CUR Strings[372] | |
602 #define color_names CUR Strings[373] | |
603 #define define_bit_image_region CUR Strings[374] | |
604 #define end_bit_image_region CUR Strings[375] | |
605 #define set_color_band CUR Strings[376] | |
606 #define set_page_length CUR Strings[377] | |
607 #define display_pc_char CUR Strings[378] | |
608 #define enter_pc_charset_mode CUR Strings[379] | |
609 #define exit_pc_charset_mode CUR Strings[380] | |
610 #define enter_scancode_mode CUR Strings[381] | |
611 #define exit_scancode_mode CUR Strings[382] | |
612 #define pc_term_options CUR Strings[383] | |
613 #define scancode_escape CUR Strings[384] | |
614 #define alt_scancode_esc CUR Strings[385] | |
615 #define enter_horizontal_hl_mode CUR Strings[386] | |
616 #define enter_left_hl_mode CUR Strings[387] | |
617 #define enter_low_hl_mode CUR Strings[388] | |
618 #define enter_right_hl_mode CUR Strings[389] | |
619 #define enter_top_hl_mode CUR Strings[390] | |
620 #define enter_vertical_hl_mode CUR Strings[391] | |
621 #define set_a_attributes CUR Strings[392] | |
622 #define set_pglen_inch CUR Strings[393] | |
623 | |
624 #define BOOLWRITE 37 | |
625 #define NUMWRITE 33 | |
626 #define STRWRITE 394 | |
627 | |
628 /* older synonyms for some capabilities */ | |
629 #define beehive_glitch no_esc_ctlc | |
630 #define teleray_glitch dest_tabs_magic_smso | |
631 | |
632 /* HPUX-11 uses this name rather than the standard one */ | |
633 #ifndef micro_char_size | |
634 #define micro_char_size micro_col_size | |
635 #endif | |
636 | |
637 #ifdef __INTERNAL_CAPS_VISIBLE | |
638 #define termcap_init2 CUR Strings[394] | |
639 #define termcap_reset CUR Strings[395] | |
640 #define magic_cookie_glitch_ul CUR Numbers[33] | |
641 #define backspaces_with_bs CUR Booleans[37] | |
642 #define crt_no_scrolling CUR Booleans[38] | |
643 #define no_correctly_working_cr CUR Booleans[39] | |
644 #define carriage_return_delay CUR Numbers[34] | |
645 #define new_line_delay CUR Numbers[35] | |
646 #define linefeed_if_not_lf CUR Strings[396] | |
647 #define backspace_if_not_bs CUR Strings[397] | |
648 #define gnu_has_meta_key CUR Booleans[40] | |
649 #define linefeed_is_newline CUR Booleans[41] | |
650 #define backspace_delay CUR Numbers[36] | |
651 #define horizontal_tab_delay CUR Numbers[37] | |
652 #define number_of_function_keys CUR Numbers[38] | |
653 #define other_non_function_keys CUR Strings[398] | |
654 #define arrow_key_map CUR Strings[399] | |
655 #define has_hardware_tabs CUR Booleans[42] | |
656 #define return_does_clr_eol CUR Booleans[43] | |
657 #define acs_ulcorner CUR Strings[400] | |
658 #define acs_llcorner CUR Strings[401] | |
659 #define acs_urcorner CUR Strings[402] | |
660 #define acs_lrcorner CUR Strings[403] | |
661 #define acs_ltee CUR Strings[404] | |
662 #define acs_rtee CUR Strings[405] | |
663 #define acs_btee CUR Strings[406] | |
664 #define acs_ttee CUR Strings[407] | |
665 #define acs_hline CUR Strings[408] | |
666 #define acs_vline CUR Strings[409] | |
667 #define acs_plus CUR Strings[410] | |
668 #define memory_lock CUR Strings[411] | |
669 #define memory_unlock CUR Strings[412] | |
670 #define box_chars_1 CUR Strings[413] | |
671 #endif /* __INTERNAL_CAPS_VISIBLE */ | |
672 | |
673 | |
674 /* | |
675 * Predefined terminfo array sizes | |
676 */ | |
677 #define BOOLCOUNT 44 | |
678 #define NUMCOUNT 39 | |
679 #define STRCOUNT 414 | |
680 | |
681 /* used by code for comparing entries */ | |
682 #define acs_chars_index 146 | |
683 | |
684 typedef struct termtype { /* in-core form of terminfo data */ | |
685 char *term_names; /* str_table offset of term names */ | |
686 char *str_table; /* pointer to string table */ | |
687 NCURSES_SBOOL *Booleans; /* array of boolean values */ | |
688 short *Numbers; /* array of integer values */ | |
689 char **Strings; /* array of string offsets */ | |
690 | |
691 #if NCURSES_XNAMES | |
692 char *ext_str_table; /* pointer to extended string table */ | |
693 char **ext_Names; /* corresponding names */ | |
694 | |
695 unsigned short num_Booleans;/* count total Booleans */ | |
696 unsigned short num_Numbers; /* count total Numbers */ | |
697 unsigned short num_Strings; /* count total Strings */ | |
698 | |
699 unsigned short ext_Booleans;/* count extensions to Booleans */ | |
700 unsigned short ext_Numbers; /* count extensions to Numbers */ | |
701 unsigned short ext_Strings; /* count extensions to Strings */ | |
702 #endif /* NCURSES_XNAMES */ | |
703 | |
704 } TERMTYPE; | |
705 | |
706 /* | |
707 * The only reason these structures are visible is for read-only use. | |
708 * Programs which modify the data are not, never were, portable across | |
709 * curses implementations. | |
710 * | |
711 * The first field in TERMINAL is used in macros. | |
712 * The remaining fields are private. | |
713 */ | |
714 #ifdef NCURSES_INTERNALS | |
715 | |
716 #undef TERMINAL | |
717 #define TERMINAL struct term | |
718 TERMINAL; | |
719 | |
720 typedef struct termtype2 { /* in-core form of terminfo data */ | |
721 char *term_names; /* str_table offset of term names */ | |
722 char *str_table; /* pointer to string table */ | |
723 NCURSES_SBOOL *Booleans; /* array of boolean values */ | |
724 int *Numbers; /* array of integer values */ | |
725 char **Strings; /* array of string offsets */ | |
726 | |
727 #if NCURSES_XNAMES | |
728 char *ext_str_table; /* pointer to extended string table */ | |
729 char **ext_Names; /* corresponding names */ | |
730 | |
731 unsigned short num_Booleans;/* count total Booleans */ | |
732 unsigned short num_Numbers; /* count total Numbers */ | |
733 unsigned short num_Strings; /* count total Strings */ | |
734 | |
735 unsigned short ext_Booleans;/* count extensions to Booleans */ | |
736 unsigned short ext_Numbers; /* count extensions to Numbers */ | |
737 unsigned short ext_Strings; /* count extensions to Strings */ | |
738 #endif /* NCURSES_XNAMES */ | |
739 | |
740 } TERMTYPE2; | |
741 #else | |
742 | |
743 typedef struct term { /* describe an actual terminal */ | |
744 TERMTYPE type; /* terminal type description */ | |
745 } TERMINAL; | |
746 | |
747 #endif /* NCURSES_INTERNALS */ | |
748 | |
749 | |
750 #if 0 && !0 | |
751 extern NCURSES_EXPORT_VAR(TERMINAL *) cur_term; | |
752 #elif 0 | |
753 NCURSES_WRAPPED_VAR(TERMINAL *, cur_term); | |
754 #define cur_term NCURSES_PUBLIC_VAR(cur_term()) | |
755 #else | |
756 extern NCURSES_EXPORT_VAR(TERMINAL *) cur_term; | |
757 #endif | |
758 | |
759 #if 0 || 0 | |
760 NCURSES_WRAPPED_VAR(NCURSES_CONST char * const *, boolnames); | |
761 NCURSES_WRAPPED_VAR(NCURSES_CONST char * const *, boolcodes); | |
762 NCURSES_WRAPPED_VAR(NCURSES_CONST char * const *, boolfnames); | |
763 NCURSES_WRAPPED_VAR(NCURSES_CONST char * const *, numnames); | |
764 NCURSES_WRAPPED_VAR(NCURSES_CONST char * const *, numcodes); | |
765 NCURSES_WRAPPED_VAR(NCURSES_CONST char * const *, numfnames); | |
766 NCURSES_WRAPPED_VAR(NCURSES_CONST char * const *, strnames); | |
767 NCURSES_WRAPPED_VAR(NCURSES_CONST char * const *, strcodes); | |
768 NCURSES_WRAPPED_VAR(NCURSES_CONST char * const *, strfnames); | |
769 | |
770 #define boolnames NCURSES_PUBLIC_VAR(boolnames()) | |
771 #define boolcodes NCURSES_PUBLIC_VAR(boolcodes()) | |
772 #define boolfnames NCURSES_PUBLIC_VAR(boolfnames()) | |
773 #define numnames NCURSES_PUBLIC_VAR(numnames()) | |
774 #define numcodes NCURSES_PUBLIC_VAR(numcodes()) | |
775 #define numfnames NCURSES_PUBLIC_VAR(numfnames()) | |
776 #define strnames NCURSES_PUBLIC_VAR(strnames()) | |
777 #define strcodes NCURSES_PUBLIC_VAR(strcodes()) | |
778 #define strfnames NCURSES_PUBLIC_VAR(strfnames()) | |
779 | |
780 #else | |
781 | |
782 extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolnames[]; | |
783 extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolcodes[]; | |
784 extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolfnames[]; | |
785 extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numnames[]; | |
786 extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numcodes[]; | |
787 extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numfnames[]; | |
788 extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strnames[]; | |
789 extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strcodes[]; | |
790 extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strfnames[]; | |
791 | |
792 #endif | |
793 | |
794 /* | |
795 * These entrypoints are used only by the ncurses utilities such as tic. | |
796 */ | |
797 #ifdef NCURSES_INTERNALS | |
798 | |
799 extern NCURSES_EXPORT(int) _nc_set_tty_mode (TTY *buf); | |
800 extern NCURSES_EXPORT(int) _nc_read_entry2 (const char * const, char * const, TERMTYPE2 *const); | |
801 extern NCURSES_EXPORT(int) _nc_read_file_entry (const char *const, TERMTYPE2 *); | |
802 extern NCURSES_EXPORT(int) _nc_read_termtype (TERMTYPE2 *, char *, int); | |
803 extern NCURSES_EXPORT(char *) _nc_first_name (const char *const); | |
804 extern NCURSES_EXPORT(int) _nc_name_match (const char *const, const char *const, const char *const); | |
805 extern NCURSES_EXPORT(char *) _nc_tiparm(int, const char *, ...); | |
806 extern NCURSES_EXPORT(const TERMTYPE *) _nc_fallback (const char *); | |
807 extern NCURSES_EXPORT(int) _nc_read_entry (const char * const, char * const, TERMTYPE *const); | |
808 | |
809 #endif /* NCURSES_INTERNALS */ | |
810 | |
811 /* | |
812 * Normal entry points | |
813 */ | |
814 extern NCURSES_EXPORT(TERMINAL *) set_curterm (TERMINAL *); | |
815 extern NCURSES_EXPORT(int) del_curterm (TERMINAL *); | |
816 | |
817 /* miscellaneous entry points */ | |
818 extern NCURSES_EXPORT(int) restartterm (NCURSES_CONST char *, int, int *); | |
819 extern NCURSES_EXPORT(int) setupterm (const char *,int,int *); | |
820 | |
821 /* terminfo entry points, also declared in curses.h */ | |
822 #if !defined(__NCURSES_H) | |
823 extern NCURSES_EXPORT(char *) tigetstr (const char *); | |
824 extern NCURSES_EXPORT_VAR(char) ttytype[]; | |
825 extern NCURSES_EXPORT(int) putp (const char *); | |
826 extern NCURSES_EXPORT(int) tigetflag (const char *); | |
827 extern NCURSES_EXPORT(int) tigetnum (const char *); | |
828 | |
829 #if 1 /* NCURSES_TPARM_VARARGS */ | |
830 extern NCURSES_EXPORT(char *) tparm (const char *, ...); /* special */ | |
831 #else | |
832 extern NCURSES_EXPORT(char *) tparm (const char *, long,long,long,long,long,long,long,long,long); /* special */ | |
833 #endif | |
834 | |
835 extern NCURSES_EXPORT(char *) tiparm (const char *, ...); /* special */ | |
836 extern NCURSES_EXPORT(char *) tiparm_s (int, int, const char *, ...); /* special */ | |
837 extern NCURSES_EXPORT(int) tiscan_s (int *, int *, const char *); /* special */ | |
838 | |
839 #endif /* __NCURSES_H */ | |
840 | |
841 /* termcap database emulation (XPG4 uses const only for 2nd param of tgetent) */ | |
842 #if !defined(NCURSES_TERMCAP_H_incl) | |
843 extern NCURSES_EXPORT(char *) tgetstr (const char *, char **); | |
844 extern NCURSES_EXPORT(char *) tgoto (const char *, int, int); | |
845 extern NCURSES_EXPORT(int) tgetent (char *, const char *); | |
846 extern NCURSES_EXPORT(int) tgetflag (const char *); | |
847 extern NCURSES_EXPORT(int) tgetnum (const char *); | |
848 extern NCURSES_EXPORT(int) tputs (const char *, int, int (*)(int)); | |
849 #endif /* NCURSES_TERMCAP_H_incl */ | |
850 | |
851 /* | |
852 * Include curses.h before term.h to enable these extensions. | |
853 */ | |
854 #if defined(NCURSES_SP_FUNCS) && (NCURSES_SP_FUNCS != 0) | |
855 | |
856 extern NCURSES_EXPORT(char *) NCURSES_SP_NAME(tigetstr) (SCREEN*, const char *); | |
857 extern NCURSES_EXPORT(int) NCURSES_SP_NAME(putp) (SCREEN*, const char *); | |
858 extern NCURSES_EXPORT(int) NCURSES_SP_NAME(tigetflag) (SCREEN*, const char *); | |
859 extern NCURSES_EXPORT(int) NCURSES_SP_NAME(tigetnum) (SCREEN*, const char *); | |
860 | |
861 #if 1 /* NCURSES_TPARM_VARARGS */ | |
862 extern NCURSES_EXPORT(char *) NCURSES_SP_NAME(tparm) (SCREEN*, const char *, ...); /* special */ | |
863 #else | |
864 extern NCURSES_EXPORT(char *) NCURSES_SP_NAME(tparm) (SCREEN*, const char *, long,long,long,long,long,long,long,long,long); /* special */ | |
865 #endif | |
866 | |
867 /* termcap database emulation (XPG4 uses const only for 2nd param of tgetent) */ | |
868 extern NCURSES_EXPORT(char *) NCURSES_SP_NAME(tgetstr) (SCREEN*, const char *, char **); | |
869 extern NCURSES_EXPORT(char *) NCURSES_SP_NAME(tgoto) (SCREEN*, const char *, int, int); | |
870 extern NCURSES_EXPORT(int) NCURSES_SP_NAME(tgetent) (SCREEN*, char *, const char *); | |
871 extern NCURSES_EXPORT(int) NCURSES_SP_NAME(tgetflag) (SCREEN*, const char *); | |
872 extern NCURSES_EXPORT(int) NCURSES_SP_NAME(tgetnum) (SCREEN*, const char *); | |
873 extern NCURSES_EXPORT(int) NCURSES_SP_NAME(tputs) (SCREEN*, const char *, int, NCURSES_SP_OUTC); | |
874 | |
875 extern NCURSES_EXPORT(TERMINAL *) NCURSES_SP_NAME(set_curterm) (SCREEN*, TERMINAL *); | |
876 extern NCURSES_EXPORT(int) NCURSES_SP_NAME(del_curterm) (SCREEN*, TERMINAL *); | |
877 | |
878 extern NCURSES_EXPORT(int) NCURSES_SP_NAME(restartterm) (SCREEN*, NCURSES_CONST char *, int, int *); | |
879 #endif /* NCURSES_SP_FUNCS */ | |
880 | |
881 /* | |
882 * Debugging features. | |
883 */ | |
884 extern GCC_NORETURN NCURSES_EXPORT(void) exit_terminfo(int); | |
885 | |
886 #ifdef __cplusplus | |
887 } | |
888 #endif | |
889 | |
890 #endif /* NCURSES_TERM_H_incl */ |