Create and return a new window with the given number of lines (or rows), nlines, and columns, ncols. The upper left corner of the window is at line begy, column begx. If either nlines or ncols is 0, they will be set to the value of
COLS-begx. A new full-screen window is created by calling
Create and return a pointer to a new window with the given number of lines (or rows), nlines, and columns, ncols. The window is at position (begy, begx) on the screen. This position is relative to the screen, and not to the window orig. The window is made in the middle of the window orig, so that changes made to one window will affect both windows. When using this routine, often it will be necessary to call
touchlineon orig before calling
Deletes the window win, freeing up all memory associated with it. In the case of sub-windows, they should be deleted before the main window win.
These routines are called to write output to the terminal, as most other routines merely manipulate data structures.
force-outputcopies the window win to the physical terminal screen, taking into account what is already there in order to minimize the amount of information that's sent to the terminal (called optimization). Unless
leaveokhas been enabled, the physical cursor of the terminal is left at the location of window win's cursor. With
refresh, the number of characters output to the terminal is returned.
Move the window win so that the upper left corner will be at position (y, x). If the move would cause the window win to be off the screen, it is an error and the window win is not moved.
These routines overlay srcwin on top of dstwin; that is, all text in srcwin is copied into dstwin. srcwin and dstwin need not be the same size; only text where the two windows overlap is copied. The difference is that
overlayis non-destructive (blanks are not copied), while
Throw away all optimization information about which parts of the window win have been touched, by pretending that the entire window win has been drawn on. This is sometimes necessary when using overlapping windows, since a change to one window will affect the other window, but the records of which lines have been changed in the other window will not reflect the change.
touchlineonly pretends that count lines have been changed, beginning with line start.