newpad(3X) newpad(3X)
NAME
newpad, pnoutrefresh, prefresh, subpad - pad management functions
SYNOPSIS
cc [flag ...] file ... -lcurses [library ...]
#include <curses.h>
WINDOW *newpad(int nlines, int ncols);
int pnoutrefresh(WINDOW *pad, int pminrow, int pmincol, int sminrow,
int smincol, int smaxrow, int smaxcol);
int prefresh(WINDOW *pad, int pminrow, int pmincol, int sminrow,
int smincol, int smaxrow, int smaxcol);
WINDOW *subpad(WINDOW *orig, int nlines, int ncols, int beginy,
int beginx);
DESCRIPTION
The newpad() function creates a specialised WINDOW data structure rep-
resenting a pad with nlines lines and ncols columns. A pad is like a
window, except that it is not necessarily associated with a viewable
part of the screen. Automatic refreshes of pads do not occur.
The subpad() function creates a subwindow within a pad with nlines
lines and ncols columns. Unlike subwin(), which uses screen coordi-
nates, the window is at position (beginy, beginx) on the pad. The
window is made in the middle of the window orig, so that changes made
to one window affect both windows.
The prefresh() and pnoutrefresh() functions are analogous to
wrefresh() and wnoutrefresh() except that they relate to pads instead
of windows. The additional arguments indicate what part of the pad and
screen are involved. The pminrow and pmincol arguments specify the
origin of the rectangle to be displayed in the pad. The sminrow,
smincol, smaxrow and smaxcol arguments specify the edges of the rec-
tangle to be displayed on the screen. The lower right-hand corner of
the rectangle to be displayed in the pad is calculated from the screen
coordinates, since the rectangles must be the same size. Both rectan-
gles must be entirely contained within their respective structures.
Negative values of pminrow, pmincol, sminrow or smincol are treated as
if they were zero.
RETURN VALUE
Upon successful completion, the newpad() and subpad() functions
return a pointer to the pad data structure. Otherwise, they return a
null pointer.
Upon successful completion, pnoutrefresh() and prefresh() return OK.
Otherwise, they return ERR.
Page 1 Reliant UNIX 5.44 Printed 11/98
newpad(3X) newpad(3X)
ERRORS
No errors are defined.
NOTES
To refresh a pad, call prefresh() or pnoutrefresh(), not wrefresh().
When porting code to use pads from WINDOWS, remember that these func-
tions require additional arguments to specify the part of the pad to
be displayed and the location on the screen to be used for the
display.
Although a subwindow and its parent pad may share memory representing
characters in the pad, they need not share status information about
what has changed in the pad. Therefore, after modifying a subwindow
within a pad, it may be necessary to call touchwin() or touchline() on
the pad before calling prefresh().
SEE ALSO
curses(3X), derwin(3X), doupdate(3X), islinetouched(3X), curses(5).
Page 2 Reliant UNIX 5.44 Printed 11/98