xref: /original-bsd/lib/libcurses/PSD.doc/intro.5 (revision c3e32dec)
Copyright (c) 1980, 1993
The Regents of the University of California. All rights reserved.

%sccs.include.redist.roff%

@(#)intro.5 8.1 (Berkeley) 06/04/93

.sh 1 "Character Output and Scrolling" .pp The character output policy deals with the following problems. First, where is the location of the cursor after a character is printed, and secondly, when does the screen scroll if scrolling is enabled. .pp In the normal case the characters are output as expected, with the cursor occupying the position of the next character to be output. However, when the cursor is on the last column of the line, the cursor will remain on that position after the last character on the line is output and will only assume the position on the next line when the next character (the first on the next line) is output. .pp Likewise, if scrolling is enabled, a scroll will be invoked only when the first character on he first line past the bottom line of the window is output. If scrolling is not enabled the chracters will to be output to the bottom right corner of the window which is the cursor location. .pp This policy allows consistent behavior of the cursor at the boundary conditions. Furthermore, it prevents a scroll from happening before it is actually needed (the old package used to scroll when the bottom right position was output a character). As a precendent, it models the .i xterm character output conventions. .sh 1 "Terminal State Handling" .pp The variable .Vn curses_termios contains the terminal state of the terminal. Certain historical routines return information: .Fn baudrate , .Fn erasechar , .Fn killchar , and .Fn ospeed . These routines are obsolete and exist only for backward compatibility. If you wish to use the information in the .Vn curses_termios structure, you should use the tsetattr(3) routines. .sh 1 "Subwindows" .pp Subwindows are windows which do not have an independent text structure, .i i.e. , they are windows whose text is a subset of the text of a larger window: the .i parent window. One consequence of this is that changes to either the parent or the child window are destructive to the other, .i i.e. , a change to the subwindow is also a change to the parent window and a change to the parent window in the region defined by the subwindow is implicitly a change to the subwindow as well. Apart from this detail, subwindows function like any other window.