mirror of
https://github.com/rfivet/uemacs.git
synced 2025-11-23 11:41:15 -05:00
Extract Struct terminal from estruct to terminal.h implemented by tcap.
This commit is contained in:
60
estruct.h
60
estruct.h
@@ -349,64 +349,4 @@
|
||||
int cexit( int status) ;
|
||||
#endif
|
||||
|
||||
/*
|
||||
* The editor communicates with the display using a high level interface. A
|
||||
* "TERM" structure holds useful variables, and indirect pointers to routines
|
||||
* that do useful operations. The low level get and put routines are here too.
|
||||
* This lets a terminal, in addition to having non standard commands, have
|
||||
* funny get and put character code too. The calls might get changed to
|
||||
* "termp->t_field" style in the future, to make it possible to run more than
|
||||
* one terminal type.
|
||||
*/
|
||||
struct terminal {
|
||||
short t_mrow; /* max number of rows allowable */
|
||||
short t_nrow; /* current number of rows used */
|
||||
short t_mcol; /* max Number of columns. */
|
||||
short t_ncol; /* current Number of columns. */
|
||||
short t_margin; /* min margin for extended lines */
|
||||
short t_scrsiz; /* size of scroll region " */
|
||||
int t_pause; /* # times thru update to pause */
|
||||
void (*t_open)(void); /* Open terminal at the start. */
|
||||
void (*t_close)(void); /* Close terminal at end. */
|
||||
void (*t_kopen)(void); /* Open keyboard */
|
||||
void (*t_kclose)(void); /* close keyboard */
|
||||
int (*t_getchar)(void); /* Get character from keyboard. */
|
||||
int (*t_putchar)(int); /* Put character to display. */
|
||||
void (*t_flush) (void); /* Flush output buffers. */
|
||||
void (*t_move)(int, int);/* Move the cursor, origin 0. */
|
||||
void (*t_eeol)(void); /* Erase to end of line. */
|
||||
void (*t_eeop)(void); /* Erase to end of page. */
|
||||
void (*t_beep)(void); /* Beep. */
|
||||
void (*t_rev)(int); /* set reverse video state */
|
||||
int (*t_rez)(char *); /* change screen resolution */
|
||||
#if COLOR
|
||||
int (*t_setfor) (); /* set forground color */
|
||||
int (*t_setback) (); /* set background color */
|
||||
#endif
|
||||
#if SCROLLCODE
|
||||
void (*t_scroll)(int, int,int); /* scroll a region of the screen */
|
||||
#endif
|
||||
};
|
||||
|
||||
/* TEMPORARY macros for terminal I/O (to be placed in a machine
|
||||
dependant place later) */
|
||||
|
||||
#define TTopen (*term.t_open)
|
||||
#define TTclose (*term.t_close)
|
||||
#define TTkopen (*term.t_kopen)
|
||||
#define TTkclose (*term.t_kclose)
|
||||
#define TTgetc (*term.t_getchar)
|
||||
#define TTputc (*term.t_putchar)
|
||||
#define TTflush (*term.t_flush)
|
||||
#define TTmove (*term.t_move)
|
||||
#define TTeeol (*term.t_eeol)
|
||||
#define TTeeop (*term.t_eeop)
|
||||
#define TTbeep (*term.t_beep)
|
||||
#define TTrev (*term.t_rev)
|
||||
#define TTrez (*term.t_rez)
|
||||
#if COLOR
|
||||
#define TTforg (*term.t_setfor)
|
||||
#define TTbacg (*term.t_setback)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user