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¶
The
scroll routine scrolls the window up one line. This involves moving
the lines in the window data structure. As an optimization, if the scrolling
region of the window is the entire screen, the physical screen may be scrolled
at the same time.
For positive
n, the
scrl and
wscrl routines scroll the
window up
n lines (line
i+
n becomes
i); otherwise
scroll the window down
n lines. This involves moving the lines in the
window character image structure. The current cursor position is not changed.
For these functions to work, scrolling must be enabled via
scrollok.
RETURN VALUE¶
These routines return
ERR upon failure, and
OK (SVr4 only
specifies "an integer value other than
ERR") upon successful
completion.
X/Open defines no error conditions.
This implementation returns an error if the window pointer is null, or if
scrolling is not enabled in the window, e.g., with
scrollok.
NOTES¶
Note that
scrl and
scroll may be macros.
The SVr4 documentation says that the optimization of physically scrolling
immediately if the scroll region is the entire screen "is"
performed, not "may be" performed. This implementation 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 the SVr4 nor the XSI documentation specify whether the current attribute
or current color-pair of blanks generated by the scroll function is zeroed.
Under this implementation it is.
PORTABILITY¶
The XSI Curses standard, Issue 4 describes these functions.
SEE ALSO¶
ncurses(3NCURSES),
outopts(3NCURSES)