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