-</PRE><H3><a name="h3-wget_wch">wget_wch</a></H3><PRE>
- The <STRONG>get_wch</STRONG>, <STRONG>wget_wch</STRONG>, <STRONG>mvget_wch</STRONG>, and <STRONG>mvwget_wch</STRONG> functions read a char-
- acter from the terminal associated with the current or specified win-
- dow. In no-delay mode, if no input is waiting, the value <STRONG>ERR</STRONG> is re-
- turned. In delay mode, the program waits until the system passes text
- through to the program. Depending on the setting of <STRONG>cbreak</STRONG>, this is
- after one character (cbreak mode), or after the first newline (nocbreak
- mode). In half-delay mode, the program waits until the user types a
- character or the specified timeout interval has elapsed.
-
- Unless <STRONG>noecho</STRONG> has been set, these routines echo the character into the
- designated window.
-
- If the window is not a pad and has been moved or modified since the
- last call to <STRONG>wrefresh</STRONG>, <STRONG>wrefresh</STRONG> will be called before another character
- is read.
-
- If <STRONG>keypad</STRONG> is enabled, these functions respond to the pressing of a
- function key by setting the object pointed to by <EM>wch</EM> to the keycode as-
- signed to the function key, and returning <STRONG>KEY_CODE_YES</STRONG>. If a character
- (such as escape) that could be the beginning of a function key is re-
- ceived, curses sets a timer. If the remainder of the sequence does ar-
- rive within the designated time, curses passes through the character;
- otherwise, curses returns the function key value. For this reason,
- many terminals experience a delay between the time a user presses the
- escape key and the time the escape is returned to the program.
-
- The keycodes returned by these functions are the same as those returned
- by <STRONG>wgetch</STRONG>:
-
- <STRONG>o</STRONG> The predefined function keys are listed in <STRONG><curses.h></STRONG> as macros
- with values outside the range of 8-bit characters. Their names be-
- gin with <STRONG>KEY_</STRONG>.
-
- <STRONG>o</STRONG> Other (user-defined) function keys which may be defined using <STRONG>de-</STRONG>
- <STRONG><A HREF="define_key.3x.html">fine_key(3x)</A></STRONG> have no names, but also are expected to have values
- outside the range of 8-bit characters.
-
-
-</PRE><H3><a name="h3-unget_wch">unget_wch</a></H3><PRE>
- The <STRONG>unget_wch</STRONG> function pushes the wide character <EM>wch</EM> back onto the head
- of the input queue, so the wide character is returned by the next call
- to <STRONG>get_wch</STRONG>. The pushback of one character is guaranteed. If the pro-
- gram calls <STRONG>unget_wch</STRONG> too many times without an intervening call to
- <STRONG>get_wch</STRONG>, the operation may fail.
-
- Unlike <STRONG>ungetch</STRONG> and <STRONG>wgetch</STRONG>, <STRONG>unget_wch</STRONG> cannot distinguish special charac-
- ters returned by <STRONG>wget_wch</STRONG> from ordinary characters. An application can
- push special keys which it may read via <STRONG>wget_wch</STRONG> by checking for the
- <STRONG>KEY_CODE_YES</STRONG> result, and using <STRONG>ungetch</STRONG> for those special keys.