1 /* @(#)terminal.h 1.6 04/03/12 Copyright 1989, 1996-2004 J. Schilling */ 2 /* 3 * Definitions tor the exported layer of the TERMPCAP interface. 4 * 5 * Copyright (c) 1989, 1996-2004 J. Schilling 6 */ 7 /* 8 * The contents of this file are subject to the terms of the 9 * Common Development and Distribution License, Version 1.0 only 10 * (the "License"). You may not use this file except in compliance 11 * with the License. 12 * 13 * See the file CDDL.Schily.txt in this distribution for details. 14 * A copy of the CDDL is also available via the Internet at 15 * http://www.opensource.org/licenses/cddl1.txt 16 * 17 * When distributing Covered Code, include this CDDL HEADER in each 18 * file and include the License file CDDL.Schily.txt from this distribution. 19 */ 20 21 /* 22 * Function names must be unique within 7 chars to allow compilationson systems 23 * with a linker that supports only 8 chars in identifiers. 24 * CPP supports at least 32 char "identifiers". 25 * We redefine short function names to longer upper case names to make 26 * the termcap interface functions easy to find and easy to understand. 27 */ 28 #define CURSOR_HOME t_home /* ho corsor home */ 29 #define CURSOR_LEFT t_left /* le cursor left */ 30 #define CURSOR_RIGHT t_right /* nd cursor right */ 31 #define CURSOR_UP t_up /* up cursor up */ 32 #define CURSOR_DOWN t_down /* do cursor down */ 33 #define MOVE_CURSOR t_move /* cm* optimised */ 34 #define MOVE_CURSOR_ABS t_move_abs /* cm cursor address */ 35 #define CLEAR_SCREEN t_clear /* cl clear screen */ 36 #define CLEAR_TO_EOF_SCREEN t_cleos /* cd clear to end of screen */ 37 #define CLEAR_TO_EOF_LINE t_cleol /* cl clear to end of line */ 38 #define INSERT_CHAR t_insch /* ic insert character */ 39 #define INSERT_LINE t_insln /* al insert line */ 40 #define DELETE_CHAR t_delch /* dc delete character */ 41 #define DELETE_LINE t_delln /* dl delete line */ 42 #define WRITE_ALT t_alt /* ** write alt */ 43 #define SET_SCROLL_REGION t_setscroll /* cs change scroll region */ 44 #define SCROLL_UP t_scrup /* sf scroll text up */ 45 #define SCROLL_DOWN t_scrdown /* sr scroll text down */ 46 47 /* 48 * The following variables are used to tell our users 49 * whether a specific function is supported or not. 50 */ 51 extern char f_home; /* Function Cursor Home */ 52 extern char f_era_screen; /* Function clear to end of screen */ 53 extern char f_era_line; /* Function clear to end of line */ 54 extern char f_ins_line; /* Function insert line */ 55 extern char f_del_line; /* Function lelete line */ 56 extern char f_ins_char; /* Function insert character */ 57 extern char f_del_char; /* Function delete character */ 58 extern char f_alternate_video; /* Function alternate video */ 59 extern char f_move_cursor; /* Function move cursor */ 60 extern char f_clear_screen; /* Function clear screen & home cursor */ 61 extern char f_left; /* Function cursor left */ 62 extern char f_right; /* Function cursor right */ 63 extern char f_up; /* Function cursor up */ 64 extern char f_down; /* Function cursor down */ 65 extern char f_set_scroll_region; /* Function set scrolling region */ 66 extern char f_scr_up; /* Function scroll up */ 67 extern char f_scr_down; /* Function scroll down */ 68 69 70 #define b_auto_right_margin AM 71 /* variables telling whether the various characteristics exits. */ 72 73 extern char b_auto_right_margin; /* Terminal does automatic wrapping */ 74