4 <STRONG>touchwin</STRONG>, <STRONG>touchline</STRONG>, <STRONG>untouchwin</STRONG>, <STRONG>wtouchln</STRONG>, <STRONG>is_linetouched</STRONG>,
5 <STRONG>is_wintouched</STRONG> - <STRONG>curses</STRONG> refresh control routines
10 <STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
11 <STRONG>int</STRONG> <STRONG>touchwin(WINDOW</STRONG> <STRONG>*win);</STRONG>
12 <STRONG>int</STRONG> <STRONG>touchline(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>start,</STRONG> <STRONG>int</STRONG> <STRONG>count);</STRONG>
13 <STRONG>int</STRONG> <STRONG>untouchwin(WINDOW</STRONG> <STRONG>*win);</STRONG>
14 <STRONG>int</STRONG> <STRONG>wtouchln(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>n,</STRONG> <STRONG>int</STRONG> <STRONG>changed);</STRONG>
15 <STRONG>int</STRONG> <STRONG>is_linetouched(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>line);</STRONG>
16 <STRONG>int</STRONG> <STRONG>is_wintouched(WINDOW</STRONG> <STRONG>*win);</STRONG>
20 <H2>DESCRIPTION</H2><PRE>
21 The <STRONG>touchwin</STRONG> and <STRONG>touchline</STRONG> routines throw away all opti-
22 mization information about which parts of the window have
23 been touched, by pretending that the entire window has
24 been drawn on. This is sometimes necessary when using
25 overlapping windows, since a change to one window affects
26 the other window, but the records of which lines have been
27 changed in the other window do not reflect the change.
28 The routine <STRONG>touchline</STRONG> only pretends that <EM>count</EM> lines have
29 been changed, beginning with line <EM>start</EM>.
31 The <STRONG>untouchwin</STRONG> routine marks all lines in the window as
32 unchanged since the last call to <STRONG>wrefresh</STRONG>.
34 The <STRONG>wtouchln</STRONG> routine makes <EM>n</EM> lines in the window, starting
35 at line <EM>y</EM>, look as if they have (<EM>changed</EM><STRONG>=1</STRONG>) or have not
36 (<EM>changed</EM><STRONG>=0</STRONG>) been changed since the last call to <STRONG>wrefresh</STRONG>.
38 The <STRONG>is_linetouched</STRONG> and <STRONG>is_wintouched</STRONG> routines return <STRONG>TRUE</STRONG>
39 if the specified line/window was modified since the last
40 call to <STRONG>wrefresh</STRONG>; otherwise they return <STRONG>FALSE</STRONG>. In addi-
41 tion, <STRONG>is_linetouched</STRONG> returns <STRONG>ERR</STRONG> if <EM>line</EM> is not valid for
46 <H2>RETURN VALUE</H2><PRE>
47 All routines return the integer <STRONG>ERR</STRONG> upon failure and an
48 integer value other than <STRONG>ERR</STRONG> upon successful completion,
49 unless otherwise noted in the preceding routine descrip-
54 <H2>PORTABILITY</H2><PRE>
55 The XSI Curses standard, Issue 4 describes these func-
58 Some historic curses implementations had, as an undocu-
59 mented feature, the ability to do the equivalent of
60 <STRONG>clearok(...,</STRONG> <STRONG>1)</STRONG> by saying <STRONG>touchwin(stdscr)</STRONG> or <STRONG>clear(std-</STRONG>
61 <STRONG>scr)</STRONG>. This will not work under ncurses.
66 <STRONG><A HREF="ncurses.3x.html">curses(3X)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3X)</A></STRONG>.