Remove x.c dependency on term

The xinit function only needs to the rows/cols, so pass those in rather
than accessing term directly.  With a bit of arithmetic, we are able to
avoid the need for term.row and term.col in x2col, y2row, and
xdrawglyphfontspecs as well, completing the removal.

Term is now fully internal to st.c.

Signed-off-by: Devin J. Pohly <djpohly@gmail.com>
This commit is contained in:
Devin J. Pohly
2018-02-24 15:32:48 -06:00
parent a5dc1b4697
commit a3beb626d2
3 changed files with 39 additions and 39 deletions

21
st.h
View File

@ -76,26 +76,6 @@ typedef struct {
char state;
} TCursor;
/* Internal representation of the screen */
typedef struct {
int row; /* nb row */
int col; /* nb col */
Line *line; /* screen */
Line *alt; /* alternate screen */
int *dirty; /* dirtyness of lines */
TCursor c; /* cursor */
int ocx; /* old cursor col */
int ocy; /* old cursor row */
int top; /* top scroll limit */
int bot; /* bottom scroll limit */
int mode; /* terminal mode flags */
int esc; /* escape state flags */
char trantbl[4]; /* charset table translation */
int charset; /* current charset */
int icharset; /* selected charset for sequence */
int *tabs;
} Term;
/* Purely graphic info */
typedef struct {
int tw, th; /* tty width and height */
@ -168,7 +148,6 @@ void *xrealloc(void *, size_t);
char *xstrdup(char *);
/* Globals */
extern Term term;
extern int cmdfd;
extern pid_t pid;
extern int oldbutton;