EN JA
curs_pad(3X)
curs_pad(3X) curs_pad(3X)

名称

newpad, subpad, prefresh, pnoutrefresh, pechochar, pecho_wchar - curses の詰め物 (pad) を作成して表示する

書式

#include <curses.h>
 
WINDOW *newpad(int nlines, int ncols);
 
WINDOW *subpad(WINDOW *orig, int nlines, int ncols,
int begin_y, int begin_x);
 
int prefresh(WINDOW *pad, int pminrow, int pmincol,
int sminrow, int smincol, int smaxrow, int smaxcol);
 
int pnoutrefresh(WINDOW *pad, int pminrow, int pmincol,
int sminrow, int smincol, int smaxrow, int smaxcol);
 
int pechochar(WINDOW *pad, chtype ch);
 
int pecho_wchar(WINDOW *pad, const cchar_t *wch);

解説

newpad ルーチンは、与えられた行の数 nlines と列 ncols がある新しい詰め物のデータ構造へのポインタを作成して返します。詰め物は、画面サイズによって制限されないことを除いて、ウィンドウに似ていて、画面の特定の部分に関連する必要はありません。大きなウィンドウが必要なとき、詰め物を使用することができ、ウィンドウの一部だけが一度に画面にあります。詰め物の自動的なリフレッシュ (例えば、スクロールまたは入力のエコーから) は、起こりません。引数として pad をつけて wrefresh を呼び出すことは正しくありません。代わりに、ルーチン prefresh または pnoutrefresh が呼び出されるべきです。これらのルーチンは、表示される詰め物の一部、と表示のために使用される画面の位置を指定するために追加のパラメータが必要であることに注意してください。

subpad ルーチンは、与えられた行の数 nlines と列 ncols で詰め物内のサブウィンドウへのポインタを作成し返します。画面の座標を使用する subwin とは異なり、ウィンドウは、詰め物の位置 ( begin_ x, begin_ y) にあります。ウィンドウは、ウィンドウ orig の中央に作成されるので、 1 つのウィンドウに行なわれた変更は、両方のウィンドウに影響します。このルーチンの使用の間、 prefresh を呼び出す前に origtouchwin または touchline を呼び出すことがしばしば必要です。

prefreshpnoutrefresh ルーチンは、それらがウィンドウの代わりに詰め物に関連していることを除いて、 wrefreshwnoutrefresh に類似しています。追加のパラメータは、詰め物と画面のどの部分が関係しているのかを示すために、必要とされます。 pminrowpmincol は、詰め物で表示される長方形の左上角を指定します。 sminrowsmincolsmaxrowsmaxcol は、画面に表示される長方形の端を指定します。詰め物に表示される長方形の右下角は、長方形が同じサイズでなければならないので、画面の座標から計算されます。両方の長方形は、個別の構造内に完全に含まれていなければなりません。 pminrowpmincolsminrow または smincol が負の値なら、0 であるかのように扱われます。

pechochar ルーチンは、 addch の呼び出しに続いて refresh の呼び出し、 waddch の呼び出しに続いて wrefresh の呼び出し、または waddch の呼び出しに続いて prefresh の呼び出しと機能的に同等です。 1 文字だけが出力されている知識は、考慮に入れられ、制御文字でない文字については、同等のルーチンの代わりに、それらのルーチンを使用することによって、かなりの性能向上が見られるかもしれません。 pechochar の場合、画面の詰め物の最後の位置は、 prefresh への引数として再利用されます。

pecho_wchar 関数は、 pechochar の類似しているワイド文字形式です。 1 つの文字を詰め物に出力して、直ちに詰め物をリフレッシュします。 wadd_wch への呼び出しに続く prefresh への呼び出しによってこれを行います。

戻り値

整数を返すルーチンは、失敗すると ERR を返し、成功して終了すれば、 OK (SVr4 は、" ERR 以外の整数値"とだけ明記されています) を返します。

ポインタを返すルーチンは、エラーの場合 NULL を返し、 errnoENOMEM を設定します。

X/Open は、エラー条件を何も定義していません。この実装では、

prefreshpnoutrefresh
は、ウィンドウのポインタが NULL であるか、またはウィンドウが実際の詰め物でないか、またはリフレッシュする領域が画面の外に拡張しているか、または最小の座標が最大より大きいなら、エラーを返します。
pechochar
は、ウィンドウが実際に詰め物でなくて、 wechochar への関連する呼び出しがエラーを返すなら、エラーを返します。
pecho_wchar
は、ウィンドウが実際に詰め物でなくて、 wecho_wchar への関連する呼び出しがエラーを返すなら、エラーを返します。

pechochar は、マクロであるかもしれないことに注意してください。

移植性

XSI Curses standard, Issue 4 は、これら関数を記述しています。

関連項目

curses(3X), curs_refresh(3X), curs_touch(3X), curs_addch(3X)