-</PRE>
-<H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- The <STRONG>newpad</STRONG> routine creates and returns a pointer to a new
- pad data structure with the given number of lines, <EM>nlines</EM>,
- and columns, <EM>ncols</EM>. A pad is like a window, except that
- it is not restricted by the screen size, and is not neces-
- sarily associated with a particular part of the screen.
- Pads can be used when a large window is needed, and only a
- part of the window will be on the screen at one time. Au-
- tomatic refreshes of pads (e.g., from scrolling or echoing
- of input) do not occur. It is not legal to call <STRONG>wrefresh</STRONG>
- with a <EM>pad</EM> as an argument; the routines <STRONG>prefresh</STRONG> or
- <STRONG>pnoutrefresh</STRONG> should be called instead. Note that these
- routines require additional parameters to specify the part
- of the pad to be displayed and the location on the screen
- to be used for the display.
-
- The <STRONG>subpad</STRONG> routine creates and returns a pointer to a sub-
- window within a pad with the given number of lines,
- <EM>nlines</EM>, and columns, <EM>ncols</EM>. Unlike <STRONG>subwin</STRONG>, which uses
- screen coordinates, the window is at position (<EM>begin</EM>_<EM>x</EM><STRONG>,</STRONG>
- <EM>begin</EM>_<EM>y</EM>) on the pad. The window is made in the middle of
- the window <EM>orig</EM>, so that changes made to one window affect
- both windows. During the use of this routine, it will of-
- ten be necessary to call <STRONG>touchwin</STRONG> or <STRONG>touchline</STRONG> on <EM>orig</EM> be-
- fore calling <STRONG>prefresh</STRONG>.
-
- The <STRONG>prefresh</STRONG> and <STRONG>pnoutrefresh</STRONG> routines are analogous to
- <STRONG>wrefresh</STRONG> and <STRONG>wnoutrefresh</STRONG> except that they relate to pads
- instead of windows. The additional parameters are needed
- to indicate what part of the pad and screen are involved.
- The <EM>pminrow</EM> and <EM>pmincol</EM> parameters specify the upper left-
- hand corner of the rectangle to be displayed in the pad.
- The <EM>sminrow</EM>, <EM>smincol</EM>, <EM>smaxrow</EM>, and <EM>smaxcol</EM> parameters
- specify the edges of the rectangle 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 co-
- ordinates, since the rectangles must be the same size.
- Both rectangles must be entirely contained within their
- respective structures. Negative values of <EM>pminrow</EM>, <EM>pmin-</EM>
- <EM>col</EM>, <EM>sminrow</EM>, or <EM>smincol</EM> are treated as if they were zero.
-
- The <STRONG>pechochar</STRONG> routine is functionally equivalent to a call
- to <STRONG>addch</STRONG> followed by a call to <STRONG>refresh</STRONG>, a call to <STRONG>waddch</STRONG>
- followed by a call to <STRONG>wrefresh</STRONG>, or a call to <STRONG>waddch</STRONG> fol-
- lowed by a call to <STRONG>prefresh</STRONG>. The knowledge that only a
- single character is being output is taken into considera-
- tion and, for non-control characters, a considerable per-
- formance gain might be seen by using these routines in-
- stead of their equivalents. In the case of <STRONG>pechochar</STRONG>, the
- last location of the pad on the screen is reused for the
- arguments to <STRONG>prefresh</STRONG>.
-
- The <STRONG>pecho_wchar</STRONG> function is the analogous wide-character
- form of <STRONG>pechochar</STRONG>. It outputs one character to a pad and
- immediately refreshes the pad. It does this by a call to
- <STRONG>wadd_wch</STRONG> followed by a call to <STRONG>prefresh</STRONG>.