Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
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.	 wscrl	and  scrl  scroll  the
       specified window	or stdscr, respectively, up or down per	the sign of n.

          For positive	n, line	i+n becomes i (scrolling up);

          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	 back-
       ground  character; see bkgd(3X) (wide-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

          the curses screen has not been initialized,

          (for	functions taking a WINDOW pointer  argument)  win  is  a  null
	   pointer, or

          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 immedi-
       ately 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	multi-
       ple 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  charac-
       ter.  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 wrap-
       ping the	latter.

SEE ALSO
       curses(3X), curs_outopts(3X)

ncurses	6.6			  2025-04-05		       curs_scroll(3X)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=curs_scroll&sektion=3&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help