The Single UNIX ® Specification, Version 2
Copyright © 1997 The Open Group


is_linetouched, is_wintouched, touchline, touchwin, untouchwin, wtouchln - window refresh control functions


#include <curses.h>

bool is_linetouched(WINDOW *win, int line);

bool is_wintouched(WINDOW *win);

int touchline(WINDOW *win, int start, int count);

int touchwin(WINDOW *win);

int untouchwin(WINDOW *win);

int wtouchln(WINDOW *win, int y, int n, int changed);


The touchwin() function touches the specified window (that is, marks it as having changed more recently than the last refresh operation).  The touchline() function only touches count lines, beginning with line start.

The untouchwin() function marks all lines in the window as unchanged since the last refresh operation.

Calling wtouchln(), if changed is 1, touches n lines in the specified window, starting at line y. If changed is 0, wtouchln() marks such lines as unchanged since the last refresh operation.

The is_wintouched() function determines whether the specified window is touched. The is_linetouched() function determines whether line line of the specified window is touched.


The is_linetouched() and is_wintouched() functions return TRUE if any of the specified lines, or the specified window, respectively, has been touched since the last refresh operation. Otherwise, they return FALSE.

Upon successful completion, the other functions return OK. Otherwise, they return ERR. Exceptions to this are noted in the preceding function descriptions.


No errors are defined.


Calling touchwin() or touchline() is sometimes necessary when using overlapping windows, since a change to one window affects the other window, but the records of which lines have been changed in the other window do not reflect the change.


Screens, Windows and Terminals , doupdate(), <curses.h>.

UNIX ® is a registered Trademark of The Open Group.
Copyright © 1997 The Open Group
[ Main Index | XSH | XCU | XBD | XCURSES | XNS ]