# curs_scroll 3x

    curs_scroll(3x)                                                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

           The  scroll routine scrolls the window up one line.  This involves mov-
           ing 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 func-
           tion is zeroed.  Under this implementation it is.

## PORTABILITY

           The XSI Curses standard, Issue 4 describes these functions.

## SEE ALSO

           curses(3x), curs_outopts(3x)

                                                                   curs_scroll(3x)