curs_add_wchstr(3x) curs_add_wchstr(3x)
add_wchstr, add_wchnstr, wadd_wchstr, wadd_wchnstr,
mvadd_wchstr, mvadd_wchnstr, mvwadd_wchstr, mvwadd_wchnstr
- curses ウインドウに複合文字 (と属性) の配列を追加する
#include <curses.h>
int add_wchstr(const cchar_t *wchstr);
int add_wchnstr(const cchar_t *wchstr, int n);
int wadd_wchstr(WINDOW * win, const cchar_t *wchstr);
int wadd_wchnstr(WINDOW * win, const cchar_t *wchstr, int n);
int mvadd_wchstr(int y, int x, const cchar_t *wchstr);
int mvadd_wchnstr(int y, int x, const cchar_t *wchstr, int n);
int mvwadd_wchstr(WINDOW *win, int y, int x, const cchar_t *wchstr);
int mvwadd_wchnstr(WINDOW *win, int y, int x, const cchar_t *wchstr, int n);
これらの関数は wchstr の指す (ヌルで終わる) 複合文字の配列を
ウインドウのイメージ構造に現在のカーソル位置からコピーします。
最後の引数に n を取る 4 つの関数は、行に収まる限り、
最大 n 要素をコピーします。
n=-1 ならば配列全体をコピーします。文字の最大数は
行に収まるだけとなります。
ウインドウのカーソルは進みません。
これらの関数は waddnstr より速く動作します。
その一方
o (改行、バックスペース、復帰文字のような)
チェックをしません。
o 現在のカーソル位置を進めません。
o その他の制御文字を ^ 表現に展開しません。
o 右端 (マージン) に達した場合、新しい行に折り返さず、
文字列を切り詰めます。
これらの関数は cchar_t 型のヌルに出会うか、または現在の行を
埋めつくすと正常に終了します。
複合文字が現在行の終わりにちょうど収まらない場合、残りの桁は
背景文字と背景属性で埋められます。
すべての関数は失敗のとき整数 ERR を、成功のとき
OK を返します。
X/Open はエラーの条件を何も定義していません。
この実装では、ウインドウ・ポインタがヌルのときエラーを
返します。
mv で始まる関数は、最初に wmove を使用してカーソルを移動し、
位置がウインドウの外だった場合、またはウインドウ・ポインタが
ヌルの場合にエラーを返します。
wadd_wchnstr 以外のすべてのルーチンはマクロであるかも
しれません。
これらのルーチンは XSI Curses standard, Issue 4 に
記載されています。
curs_addwstr(3x), curses(3x).
1 バイト文字用ライブラリ (ncurses) で対応する関数群は
curs_addchstr(3x) で説明しています。
curs_add_wchstr(3x)