curs_scroll
Section: Library calls (3X)
Updated: 202-0-05
Index
Return to Main Contents
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.
wscrl
and
scrl
scroll the specified window or
stdscr,
respectively,
up or down per the sign of
n.
.IP * 4
For positive
n,
line
i+
n
becomes
i
(scrolling up);
.IP * 4
for negative
n,
line
i-
n
becomes
i
(scrolling down).
A line that scrolls beyond the window boundaries disappears;
curses
populates a new one emerging at the opposite boundary
with the background character;
see bkgd(3X)
(wid-character API users: 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).
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.
In
ncurses,
they return
ERR
if
.IP * 4
the
curses
screen has not been initialized,
.IP * 4
(for functions taking a
WINDOW
pointer argument)
win
is a null pointer,
or
.IP * 4
scrolling is not enabled in the window
(as by scrollok(3X)).
NOTES
scroll
and
scrl
may be implemented as macros.
Unusually,
there is no
wscroll
function;
scroll
behaves as one would expect
wscroll
to,
accepting a
WINDOW
pointer argument.
PORTABILITY
X/Open Curses Issue 4 describes these functions.
It specifies no error conditions for them.
SVr4 describes a successful return value only as
"an integer value other than
ERR".
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 occurs,
to leave open the possibility of better optimization of multiple scroll
actions on the next update.
Neither SVr4
curses
nor X/Open Curses specify whether these functions zero the attributes or
color pair identifier of the background character.
In
ncurses,
they do not.
HISTORY
4BSD (1980)
introduced
scroll,
defining it as a function.
SVr3.1 (1987)
added
scrl
and
wscrl,
redefining
scroll
as a macro wrapping the latter.
SEE ALSO
curses(3X),
curs_outopts(3X)
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- RETURN VALUE
-
- NOTES
-
- PORTABILITY
-
- HISTORY
-
- SEE ALSO
-