.\" Copyright (c) 1980 Regents of the University of California.
.\" All rights reserved. The Berkeley software License Agreement
.\" specifies the terms and conditions for redistribution.
.\" @(#)appen.B 6.1 (Berkeley) 4/23/86
.ie t .oh '\*(Ln Appendix B''PS1:18-%'
.eh 'PS1:18-%''\*(Ln Appendix B'
.el .he ''\fIAppendix B\fR''
.sh 1 "The WINDOW structure"
The WINDOW structure is defined as follows:
All variables not normally accessed directly by the user
are named with an initial
to avoid conflicts with the user's variables.
are the current \*y for the window.
New characters added to the screen
are the maximum values allowed for
.Vn \*_cury\*,\*_curx ). (
are the starting \*y on the terminal for the window,
.Vn \*_begy\*,\*_begx ), (
tells if a clear-screen sequence is to be generated
This is only meaningful for screens.
The initial clear-screen for the first
call is generated by initially setting clear to be TRUE for
which always generates a clear-screen if set,
irrelevant of the dimensions of the window involved.
is TRUE if the current \*y and the cursor
are to be left after the last character changed on the terminal,
or not moved if there is no change.
is a pointer to an array of lines which describe the terminal.
can have one or more values
For windows that are not subwindows,
it points to the main window
to which the window is subsidiary.
is a pointer in a circularly linked list
of all the windows which are subwindows of the same main window,
plus the main window itself.
arrays which contain the index of the
first and last changed characters
is the x offset for the window
it is the difference between the starting point of the main window
and that of the subindow,
so that change markers can be set relative to the main window.
This makes these markers global in scope.
All subwindows share the appropriate portions of
says that the end of the line for this window
is also the end of a screen.
says that this window is a screen.
indicates that the last character of this screen
is at the lower right-hand corner of the terminal;
if a character was put there,
the terminal would scroll.
says that the width of a line is the same as the width of the terminal.
should be called at the end of each
says that all characters added to the screen
is reserved for future use,
for lines on which there has been no change