December 4, 2002 CURSES_PAD 3

### NAME

curses_pad, newpad, subpad, prefresh, pnoutrefresh - curses pad routines

### LIBRARY

Curses Library (libcurses, -lcurses)

### SYNOPSIS

```WINDOW``*` newpad(```int lines``, int cols`)
```WINDOW``*` subpad(```WINDOW *pad``, int lines``, int cols``, int begin_y``, int begin_x`)
```int` prefresh(```WINDOW *pad``, int pbeg_y``, int pbeg_x``, int sbeg_y``, int sbeg_x``, int smax_y``, int smax_x`)
```int` pnoutrefresh(```WINDOW *pad``, int pbeg_y``, int pbeg_x``, int sbeg_y``, int sbeg_x``, int smax_y``, int smax_x`)

### DESCRIPTION

These functions create and display pads on the current screen.

The newpad(``) function creates a new pad of size ```lines`, ```cols`.

subpad(``) is similar to newpad(``) excepting that the size of the subpad is bounded by the parent pad ```pad`. The subpad shares internal data structures with the parent pad and will be refreshed when the parent pad is refreshed. The starting column and row ```begin_y`, ```begin_x` are relative to the parent pad origin.

The pnoutrefresh(``) function performs the internal processing required by curses to determine what changes need to be made to synchronise the internal screen buffer and the terminal but does not modify the terminal display. A rectangular area of the pad starting at column and row ```pbeg_y`, ```pbeg_x` is copied to the corresponding rectangular area of the screen buffer starting at column and row ```sbeg_y`, ```sbeg_x` and extending to ```smax_y`, ```smax_x`.

The prefresh(``) function causes curses to propagate changes made to the pad specified by ```pad` to the terminal display. A rectangular area of the pad starting at column and row ```pbeg_y`, ```pbeg_x` is copied to the corresponding rectangular area of the terminal starting at column and row ```sbeg_y`, ```sbeg_x` and extending to ```smax_y`, ```smax_x`.

The pnoutrefresh(``) and doupdate(``) functions can be used together to speed up terminal redraws by deferring the actual terminal updates until after a batch of updates to multiple pads has been done.

### RETURN VALUES

Functions returning pointers will return ```NULL` if an error is detected. The functions that return an int will return one of the following values:

```OK`
  The function completed successfully.
```ERR`
  An error occurred in the function.

### SEE ALSO

curses_refresh(3), curses_window(3)

### NOTES

The subpad(``) function is similar to the derwin(3) function, and not the subwin(3) function.

### STANDARDS

The NetBSD Curses library complies with the X/Open Curses specification, part of the Single Unix Specification.

### HISTORY

The Curses package appeared in 4.0BSD.