curs_touch(3)

名称
touchwin, touchline, untouchwin, wtouchln, is_linetouched, is_wintouched - ncurses refresh control routines

書式
#include <ncurses.h>
int touchwin(WINDOW *win);
int touchline(WINDOW *win, int start, int count);
int untouchwin(WINDOW *win);
int wtouchln(WINDOW *win, int y, int n, int changed);
int is_linetouched(WINDOW *win, int line);
int is_wintouched(WINDOW *win);

解説
touchwin ルーチンと touchline ルーチンは、ウィンドウ全体が 描画されているかのようにして、ウィンドウのどの部分が接触させられたかに 関するすべての最適化情報を廃棄します。オーバーラップするウィンドウを 使用するときはこれが必要なことがときどきあります。 1 つのウィンドウの変更が 他のウィンドウに影響を及ぼすものの、他のウィンドウ内でどの行が 変更されたかの記録は変更を反映しないからです。ルーチン touchline は、行 start から始めて、 count 行が変化したかのようにします。 untouchwin ルーチンは、 wrefresh の最後の呼び出し以降、 ウィンドウ内のすべての行が変化していないとマークします。 wtouchln ルーチンは、行 y で始めて、ウィンドウ内に n 行を作成し、 wrefresh の最後の呼び出し以降、変化した (changed=1) か、または (changed=0) 変化していないかのように見えます。 is_linetouched ルーチンと is_wintouched ルーチンは、 wrefresh の最後の呼び出し以降、指定の行 / ウィンドウが修正された場合は TRUE を返します。そうでない場合、 FALSE を返します。さらに、 is_linetouched は、指定のウィンドウについて line が有効でない場合、 ERR を返します。

戻り値
すべてのルーチンが、処理失敗すると整数 ERR を返してきます。処理が正常に完了した場合は、 ERR 以外の整数値を返します。ただし、前述のルーチンの解説で 異なるように記載した場合は別です。

注釈
wtouchln を除くすべてのルーチンがマクロである可能性があることに 注意してください。

関連項目
ncurses(3), curs_refresh(3).