FreeBSD manual
download PDF document: curs_scroll.3.pdf
curs_scroll(3X) Library calls curs_scroll(3X)
NAME
scroll, scrl, wscrl - scroll a curses window
SYNOPSIS
#include <curses.h>
int scroll(WINDOW *win);
int scrl(int n);
int wscrl(WINDOW *win, int n);
DESCRIPTION
scroll scrolls the given window up one line. That is, every visible
line we might number i becomes line i-1. The text of the top line in
the window disappears and the bottom line is populated with blank
characters; see bkgd(3X) or bkgrnd(3X). As an optimization, if the
scrolling region of the window is the entire screen, the physical
screen may be scrolled at the same time; see curscr(3X).
scrl and wscrl scroll stdscr or the specified window up or down
depending on the sign of n.
o For positive n, line i+n becomes i (scrolling up);
o for negative n, line i-n becomes i (scrolling down).
The cursor does not move. These functions perform no operation unless
scrolling is enabled for the window via scrollok(3X).
RETURN VALUE
These functions return ERR upon failure and OK upon success.
ncurses returns ERR if scrolling is not enabled in the window, for
example with scrollok(3X), or if the WINDOW pointer is null.
NOTES
Unusually, there is no wscroll function; scroll behaves as one would
expect wscroll to, accepting a WINDOW pointer argument.
scrl and scroll may be implemented as macros.
PORTABILITY
X/Open Curses, Issue 4 describes these functions. It defines no error
conditions.
SVr4 specifies only "an integer value other than ERR" as a successful
return value.
SVr4 indicates that the optimization of physically scrolling
immediately if the scroll region is the entire screen "is" performed,
not "may be" performed. ncurses deliberately does not guarantee that
this will occur, to leave open the possibility of smarter optimization
of multiple scroll actions on the next update.
Neither SVr4 curses nor X/Open Curses specify whether the current
attribute or current color pair of blanks generated by the scroll
function are zeroed. ncurses does so.