/* * Copyright (c) 1998 by Sun Microsystems, Inc. * All rights reserved. */ #ifndef _TERM_H #define _TERM_H /* * term.h * * XCurses Library * * **** THIS FILE IS MACHINE GENERATED. * **** DO NOT EDIT THIS FILE. * * Copyright 1990, 1995 by Mortice Kern Systems Inc. All rights reserved. * * $Header$ */ #ifdef __cplusplus extern "C" { #endif #define __TERM cur_term-> #define auto_left_margin __TERM _bool[0] #define auto_right_margin __TERM _bool[1] #define no_esc_ctlc __TERM _bool[2] #define ceol_standout_glitch __TERM _bool[3] #define eat_newline_glitch __TERM _bool[4] #define erase_overstrike __TERM _bool[5] #define generic_type __TERM _bool[6] #define hard_copy __TERM _bool[7] #define has_meta_key __TERM _bool[8] #define has_status_line __TERM _bool[9] #define insert_null_glitch __TERM _bool[10] #define memory_above __TERM _bool[11] #define memory_below __TERM _bool[12] #define move_insert_mode __TERM _bool[13] #define move_standout_mode __TERM _bool[14] #define over_strike __TERM _bool[15] #define status_line_esc_ok __TERM _bool[16] #define dest_tabs_magic_smso __TERM _bool[17] #define tilde_glitch __TERM _bool[18] #define transparent_underline __TERM _bool[19] #define xon_xoff __TERM _bool[20] #define needs_xon_xoff __TERM _bool[21] #define prtr_silent __TERM _bool[22] #define hard_cursor __TERM _bool[23] #define non_rev_rmcup __TERM _bool[24] #define no_pad_char __TERM _bool[25] #define non_dest_scroll_region __TERM _bool[26] #define can_change __TERM _bool[27] #define back_color_erase __TERM _bool[28] #define hue_lightness_saturation __TERM _bool[29] #define col_addr_glitch __TERM _bool[30] #define cr_cancels_micro_mode __TERM _bool[31] #define has_print_wheel __TERM _bool[32] #define row_addr_glitch __TERM _bool[33] #define semi_auto_right_margin __TERM _bool[34] #define cpi_changes_res __TERM _bool[35] #define lpi_changes_res __TERM _bool[36] #define columns __TERM _num[0] #define init_tabs __TERM _num[1] #define lines __TERM _num[2] #define lines_of_memory __TERM _num[3] #define magic_cookie_glitch __TERM _num[4] #define padding_baud_rate __TERM _num[5] #define virtual_terminal __TERM _num[6] #define width_status_line __TERM _num[7] #define num_labels __TERM _num[8] #define label_height __TERM _num[9] #define label_width __TERM _num[10] #define max_attributes __TERM _num[11] #define maximum_windows __TERM _num[12] #define max_colors __TERM _num[13] #define max_pairs __TERM _num[14] #define no_color_video __TERM _num[15] #define buffer_capacity __TERM _num[16] #define dot_vert_spacing __TERM _num[17] #define dot_horz_spacing __TERM _num[18] #define max_micro_address __TERM _num[19] #define max_micro_jump __TERM _num[20] #define micro_col_size __TERM _num[21] #define micro_line_size __TERM _num[22] #define number_of_pins __TERM _num[23] #define output_res_char __TERM _num[24] #define output_res_line __TERM _num[25] #define output_res_horz_inch __TERM _num[26] #define output_res_vert_inch __TERM _num[27] #define print_rate __TERM _num[28] #define wide_char_size __TERM _num[29] #define buttons __TERM _num[30] #define bit_image_entwining __TERM _num[31] #define bit_image_type __TERM _num[32] #define back_tab __TERM _str[0] #define bell __TERM _str[1] #define carriage_return __TERM _str[2] #define change_scroll_region __TERM _str[3] #define clear_all_tabs __TERM _str[4] #define clear_screen __TERM _str[5] #define clr_eol __TERM _str[6] #define clr_eos __TERM _str[7] #define column_address __TERM _str[8] #define command_character __TERM _str[9] #define cursor_address __TERM _str[10] #define cursor_down __TERM _str[11] #define cursor_home __TERM _str[12] #define cursor_invisible __TERM _str[13] #define cursor_left __TERM _str[14] #define cursor_mem_address __TERM _str[15] #define cursor_normal __TERM _str[16] #define cursor_right __TERM _str[17] #define cursor_to_ll __TERM _str[18] #define cursor_up __TERM _str[19] #define cursor_visible __TERM _str[20] #define delete_character __TERM _str[21] #define delete_line __TERM _str[22] #define dis_status_line __TERM _str[23] #define down_half_line __TERM _str[24] #define enter_alt_charset_mode __TERM _str[25] #define enter_blink_mode __TERM _str[26] #define enter_bold_mode __TERM _str[27] #define enter_ca_mode __TERM _str[28] #define enter_delete_mode __TERM _str[29] #define enter_dim_mode __TERM _str[30] #define enter_insert_mode __TERM _str[31] #define enter_secure_mode __TERM _str[32] #define enter_protected_mode __TERM _str[33] #define enter_reverse_mode __TERM _str[34] #define enter_standout_mode __TERM _str[35] #define enter_underline_mode __TERM _str[36] #define erase_chars __TERM _str[37] #define exit_alt_charset_mode __TERM _str[38] #define exit_attribute_mode __TERM _str[39] #define exit_ca_mode __TERM _str[40] #define exit_delete_mode __TERM _str[41] #define exit_insert_mode __TERM _str[42] #define exit_standout_mode __TERM _str[43] #define exit_underline_mode __TERM _str[44] #define flash_screen __TERM _str[45] #define form_feed __TERM _str[46] #define from_status_line __TERM _str[47] #define init_1string __TERM _str[48] #define init_2string __TERM _str[49] #define init_3string __TERM _str[50] #define init_file __TERM _str[51] #define insert_character __TERM _str[52] #define insert_line __TERM _str[53] #define insert_padding __TERM _str[54] #define key_backspace __TERM _str[55] #define key_catab __TERM _str[56] #define key_clear __TERM _str[57] #define key_ctab __TERM _str[58] #define key_dc __TERM _str[59] #define key_dl __TERM _str[60] #define key_down __TERM _str[61] #define key_eic __TERM _str[62] #define key_eol __TERM _str[63] #define key_eos __TERM _str[64] #define key_f0 __TERM _str[65] #define key_f1 __TERM _str[66] #define key_f10 __TERM _str[67] #define key_f2 __TERM _str[68] #define key_f3 __TERM _str[69] #define key_f4 __TERM _str[70] #define key_f5 __TERM _str[71] #define key_f6 __TERM _str[72] #define key_f7 __TERM _str[73] #define key_f8 __TERM _str[74] #define key_f9 __TERM _str[75] #define key_home __TERM _str[76] #define key_ic __TERM _str[77] #define key_il __TERM _str[78] #define key_left __TERM _str[79] #define key_ll __TERM _str[80] #define key_npage __TERM _str[81] #define key_ppage __TERM _str[82] #define key_right __TERM _str[83] #define key_sf __TERM _str[84] #define key_sr __TERM _str[85] #define key_stab __TERM _str[86] #define key_up __TERM _str[87] #define keypad_local __TERM _str[88] #define keypad_xmit __TERM _str[89] #define lab_f0 __TERM _str[90] #define lab_f1 __TERM _str[91] #define lab_f10 __TERM _str[92] #define lab_f2 __TERM _str[93] #define lab_f3 __TERM _str[94] #define lab_f4 __TERM _str[95] #define lab_f5 __TERM _str[96] #define lab_f6 __TERM _str[97] #define lab_f7 __TERM _str[98] #define lab_f8 __TERM _str[99] #define lab_f9 __TERM _str[100] #define meta_off __TERM _str[101] #define meta_on __TERM _str[102] #define newline __TERM _str[103] #define pad_char __TERM _str[104] #define parm_dch __TERM _str[105] #define parm_delete_line __TERM _str[106] #define parm_down_cursor __TERM _str[107] #define parm_ich __TERM _str[108] #define parm_index __TERM _str[109] #define parm_insert_line __TERM _str[110] #define parm_left_cursor __TERM _str[111] #define parm_right_cursor __TERM _str[112] #define parm_rindex __TERM _str[113] #define parm_up_cursor __TERM _str[114] #define pkey_key __TERM _str[115] #define pkey_local __TERM _str[116] #define pkey_xmit __TERM _str[117] #define print_screen __TERM _str[118] #define prtr_off __TERM _str[119] #define prtr_on __TERM _str[120] #define repeat_char __TERM _str[121] #define reset_1string __TERM _str[122] #define reset_2string __TERM _str[123] #define reset_3string __TERM _str[124] #define reset_file __TERM _str[125] #define restore_cursor __TERM _str[126] #define row_address __TERM _str[127] #define save_cursor __TERM _str[128] #define scroll_forward __TERM _str[129] #define scroll_reverse __TERM _str[130] #define set_attributes __TERM _str[131] #define set_tab __TERM _str[132] #define set_window __TERM _str[133] #define tab __TERM _str[134] #define to_status_line __TERM _str[135] #define underline_char __TERM _str[136] #define up_half_line __TERM _str[137] #define init_prog __TERM _str[138] #define key_a1 __TERM _str[139] #define key_a3 __TERM _str[140] #define key_b2 __TERM _str[141] #define key_c1 __TERM _str[142] #define key_c3 __TERM _str[143] #define prtr_non __TERM _str[144] #define char_padding __TERM _str[145] #define acs_chars __TERM _str[146] #define plab_norm __TERM _str[147] #define key_btab __TERM _str[148] #define enter_xon_mode __TERM _str[149] #define exit_xon_mode __TERM _str[150] #define enter_am_mode __TERM _str[151] #define exit_am_mode __TERM _str[152] #define xon_character __TERM _str[153] #define xoff_character __TERM _str[154] #define ena_acs __TERM _str[155] #define label_on __TERM _str[156] #define label_off __TERM _str[157] #define key_beg __TERM _str[158] #define key_cancel __TERM _str[159] #define key_close __TERM _str[160] #define key_command __TERM _str[161] #define key_copy __TERM _str[162] #define key_create __TERM _str[163] #define key_end __TERM _str[164] #define key_enter __TERM _str[165] #define key_exit __TERM _str[166] #define key_find __TERM _str[167] #define key_help __TERM _str[168] #define key_mark __TERM _str[169] #define key_message __TERM _str[170] #define key_move __TERM _str[171] #define key_next __TERM _str[172] #define key_open __TERM _str[173] #define key_options __TERM _str[174] #define key_previous __TERM _str[175] #define key_print __TERM _str[176] #define key_redo __TERM _str[177] #define key_reference __TERM _str[178] #define key_refresh __TERM _str[179] #define key_replace __TERM _str[180] #define key_restart __TERM _str[181] #define key_resume __TERM _str[182] #define key_save __TERM _str[183] #define key_suspend __TERM _str[184] #define key_undo __TERM _str[185] #define key_sbeg __TERM _str[186] #define key_scancel __TERM _str[187] #define key_scommand __TERM _str[188] #define key_scopy __TERM _str[189] #define key_screate __TERM _str[190] #define key_sdc __TERM _str[191] #define key_sdl __TERM _str[192] #define key_select __TERM _str[193] #define key_send __TERM _str[194] #define key_seol __TERM _str[195] #define key_sexit __TERM _str[196] #define key_sfind __TERM _str[197] #define key_shelp __TERM _str[198] #define key_shome __TERM _str[199] #define key_sic __TERM _str[200] #define key_sleft __TERM _str[201] #define key_smessage __TERM _str[202] #define key_smove __TERM _str[203] #define key_snext __TERM _str[204] #define key_soptions __TERM _str[205] #define key_sprevious __TERM _str[206] #define key_sprint __TERM _str[207] #define key_sredo __TERM _str[208] #define key_sreplace __TERM _str[209] #define key_sright __TERM _str[210] #define key_srsume __TERM _str[211] #define key_ssave __TERM _str[212] #define key_ssuspend __TERM _str[213] #define key_sundo __TERM _str[214] #define req_for_input __TERM _str[215] #define key_f11 __TERM _str[216] #define key_f12 __TERM _str[217] #define key_f13 __TERM _str[218] #define key_f14 __TERM _str[219] #define key_f15 __TERM _str[220] #define key_f16 __TERM _str[221] #define key_f17 __TERM _str[222] #define key_f18 __TERM _str[223] #define key_f19 __TERM _str[224] #define key_f20 __TERM _str[225] #define key_f21 __TERM _str[226] #define key_f22 __TERM _str[227] #define key_f23 __TERM _str[228] #define key_f24 __TERM _str[229] #define key_f25 __TERM _str[230] #define key_f26 __TERM _str[231] #define key_f27 __TERM _str[232] #define key_f28 __TERM _str[233] #define key_f29 __TERM _str[234] #define key_f30 __TERM _str[235] #define key_f31 __TERM _str[236] #define key_f32 __TERM _str[237] #define key_f33 __TERM _str[238] #define key_f34 __TERM _str[239] #define key_f35 __TERM _str[240] #define key_f36 __TERM _str[241] #define key_f37 __TERM _str[242] #define key_f38 __TERM _str[243] #define key_f39 __TERM _str[244] #define key_f40 __TERM _str[245] #define key_f41 __TERM _str[246] #define key_f42 __TERM _str[247] #define key_f43 __TERM _str[248] #define key_f44 __TERM _str[249] #define key_f45 __TERM _str[250] #define key_f46 __TERM _str[251] #define key_f47 __TERM _str[252] #define key_f48 __TERM _str[253] #define key_f49 __TERM _str[254] #define key_f50 __TERM _str[255] #define key_f51 __TERM _str[256] #define key_f52 __TERM _str[257] #define key_f53 __TERM _str[258] #define key_f54 __TERM _str[259] #define key_f55 __TERM _str[260] #define key_f56 __TERM _str[261] #define key_f57 __TERM _str[262] #define key_f58 __TERM _str[263] #define key_f59 __TERM _str[264] #define key_f60 __TERM _str[265] #define key_f61 __TERM _str[266] #define key_f62 __TERM _str[267] #define key_f63 __TERM _str[268] #define clr_bol __TERM _str[269] #define clear_margins __TERM _str[270] #define set_left_margin __TERM _str[271] #define set_right_margin __TERM _str[272] #define label_format __TERM _str[273] #define set_clock __TERM _str[274] #define display_clock __TERM _str[275] #define remove_clock __TERM _str[276] #define create_window __TERM _str[277] #define goto_window __TERM _str[278] #define hangup __TERM _str[279] #define dial_phone __TERM _str[280] #define quick_dial __TERM _str[281] #define tone __TERM _str[282] #define pulse __TERM _str[283] #define flash_hook __TERM _str[284] #define fixed_pause __TERM _str[285] #define wait_tone __TERM _str[286] #define user0 __TERM _str[287] #define user1 __TERM _str[288] #define user2 __TERM _str[289] #define user3 __TERM _str[290] #define user4 __TERM _str[291] #define user5 __TERM _str[292] #define user6 __TERM _str[293] #define user7 __TERM _str[294] #define user8 __TERM _str[295] #define user9 __TERM _str[296] #define orig_pair __TERM _str[297] #define orig_colors __TERM _str[298] #define initialize_color __TERM _str[299] #define initialize_pair __TERM _str[300] #define set_color_pair __TERM _str[301] #define set_foreground __TERM _str[302] #define set_background __TERM _str[303] #define change_char_pitch __TERM _str[304] #define change_line_pitch __TERM _str[305] #define change_res_horz __TERM _str[306] #define change_res_vert __TERM _str[307] #define define_char __TERM _str[308] #define enter_doublewide_mode __TERM _str[309] #define enter_draft_quality __TERM _str[310] #define enter_italics_mode __TERM _str[311] #define enter_leftward_mode __TERM _str[312] #define enter_micro_mode __TERM _str[313] #define enter_near_letter_quality __TERM _str[314] #define enter_normal_quality __TERM _str[315] #define enter_shadow_mode __TERM _str[316] #define enter_subscript_mode __TERM _str[317] #define enter_superscript_mode __TERM _str[318] #define enter_upward_mode __TERM _str[319] #define exit_doublewide_mode __TERM _str[320] #define exit_italics_mode __TERM _str[321] #define exit_leftward_mode __TERM _str[322] #define exit_micro_mode __TERM _str[323] #define exit_shadow_mode __TERM _str[324] #define exit_subscript_mode __TERM _str[325] #define exit_superscript_mode __TERM _str[326] #define exit_upward_mode __TERM _str[327] #define micro_column_address __TERM _str[328] #define micro_down __TERM _str[329] #define micro_left __TERM _str[330] #define micro_right __TERM _str[331] #define micro_row_address __TERM _str[332] #define micro_up __TERM _str[333] #define order_of_pins __TERM _str[334] #define parm_down_micro __TERM _str[335] #define parm_left_micro __TERM _str[336] #define parm_right_micro __TERM _str[337] #define parm_up_micro __TERM _str[338] #define select_char_set __TERM _str[339] #define set_bottom_margin __TERM _str[340] #define set_bottom_margin_parm __TERM _str[341] #define set_left_margin_parm __TERM _str[342] #define set_right_margin_parm __TERM _str[343] #define set_top_margin __TERM _str[344] #define set_top_margin_parm __TERM _str[345] #define start_bit_image __TERM _str[346] #define start_char_set_def __TERM _str[347] #define stop_bit_image __TERM _str[348] #define stop_char_set_def __TERM _str[349] #define subscript_characters __TERM _str[350] #define superscript_characters __TERM _str[351] #define these_cause_cr __TERM _str[352] #define zero_motion __TERM _str[353] #define char_set_names __TERM _str[354] #define key_mouse __TERM _str[355] #define mouse_info __TERM _str[356] #define req_mouse_pos __TERM _str[357] #define get_mouse __TERM _str[358] #define set_a_foreground __TERM _str[359] #define set_a_background __TERM _str[360] #define pkey_plab __TERM _str[361] #define device_type __TERM _str[362] #define code_set_init __TERM _str[363] #define set0_des_seq __TERM _str[364] #define set1_des_seq __TERM _str[365] #define set2_des_seq __TERM _str[366] #define set3_des_seq __TERM _str[367] #define set_lr_margin __TERM _str[368] #define set_tb_margin __TERM _str[369] #define bit_image_repeat __TERM _str[370] #define bit_image_newline __TERM _str[371] #define bit_image_carriage_return __TERM _str[372] #define color_names __TERM _str[373] #define define_bit_image_region __TERM _str[374] #define end_bit_image_region __TERM _str[375] #define set_color_band __TERM _str[376] #define set_page_length __TERM _str[377] #define display_pc_char __TERM _str[378] #define enter_pc_charset_mode __TERM _str[379] #define exit_pc_charset_mode __TERM _str[380] #define enter_scancode_mode __TERM _str[381] #define exit_scancode_mode __TERM _str[382] #define pc_term_options __TERM _str[383] #define scancode_escape __TERM _str[384] #define alt_scancode_esc __TERM _str[385] #define enter_horizontal_hl_mode __TERM _str[386] #define enter_left_hl_mode __TERM _str[387] #define enter_low_hl_mode __TERM _str[388] #define enter_right_hl_mode __TERM _str[389] #define enter_top_hl_mode __TERM _str[390] #define enter_vertical_hl_mode __TERM _str[391] #define set_a_attributes __TERM _str[392] #define set_pglen_inch __TERM _str[393] #define __COUNT_BOOL 37 #define __COUNT_NUM 33 #define __COUNT_STR 394 /* * The following __MOVE_ constants are indices into the _move[] member * of a SCREEN structure. The array is used by m_mvcur() for cursor * motion costs and initialized by newterm(). * * The following indices refer to relative cursor motion actions that * have a base-cost times the distance/count. */ #define __MOVE_UP 0 #define __MOVE_DOWN 1 #define __MOVE_LEFT 2 #define __MOVE_RIGHT 3 #define __MOVE_TAB 4 #define __MOVE_BACK_TAB 5 #define __MOVE_MAX_RELATIVE 6 /* * These should have fixed costs. */ #define __MOVE_RETURN 6 #define __MOVE_HOME 7 #define __MOVE_LAST_LINE 8 /* * These have worst case cost based on moving the maximum possible * value for a parameter given the screen size. */ #define __MOVE_N_UP 9 #define __MOVE_N_DOWN 10 #define __MOVE_N_LEFT 11 #define __MOVE_N_RIGHT 12 #define __MOVE_ROW 13 #define __MOVE_COLUMN 14 #define __MOVE_ROW_COLUMN 15 #define __MOVE_MAX 16 /* * For a cursor motion to be used there must be a base-cost of at least 1. */ #define __MOVE_INFINITY 1000 #define __TERM_ISATTY_IN 0x0001 /* Input is a terminal */ #define __TERM_ISATTY_OUT 0x0002 /* Output is a terminal */ #define __TERM_HALF_DELAY 0x0004 /* halfdelay() has priority. */ #define __TERM_INSERT_MODE 0x0008 /* Terminal is in insert mode. */ #define __TERM_NL_IS_CRLF 0x8000 /* Newline is mapped on output. */ /* * Opaque data type. Keep your grubby mits off. */ typedef struct { int _ifd; /* Input file descriptor */ int _ofd; /* Output file descriptor */ void *_prog; void *_shell; void *_save; void *_actual; /* What has actually been set in the terminal */ short _co; /* Current color-pair. */ unsigned short _at; /* Current attribute state. */ short (*_pair)[2]; short (*_color)[3]; unsigned short _flags; char _bool[__COUNT_BOOL]; short _num[__COUNT_NUM]; char *_str[__COUNT_STR]; /* Pointers into _str_table. */ char *_str_table; char *_names; /* Terminal alias in _str_table. */ char *_term; /* TERM name loaded. */ struct { char *_seq; short _cost; } _move[__MOVE_MAX]; } TERMINAL; extern TERMINAL *cur_term; #if !(defined(__cplusplus) && defined(_BOOL)) #ifndef _BOOL_DEFINED typedef short bool; #define _BOOL_DEFINED #endif #endif /* * Globals */ extern int del_curterm(TERMINAL *); extern int putp(const char *); extern int restartterm(char *, int, int *); extern TERMINAL *set_curterm(TERMINAL *); extern int setupterm(char *, int, int *); extern int tgetent(char *, const char *); extern int tgetflag(char *); extern int tgetnum(char *); extern char *tgetstr(char *, char **); extern char *tgoto(char *, int, int); extern int tigetflag(char *); extern int tigetnum(char *); extern char *tigetstr(char *); extern char *tparm( char *, long, long, long, long, long, long, long, long, long); extern int tputs(const char *, int, int (*)(int)); #ifdef __cplusplus } #endif #endif /* _TERM_H */