Author: Eric S. Raymond <esr@snark.thyrsus.com> 1993
Thomas E. Dickey (beginning revision 1.27 in 1996).
-$Id: ncurses.c,v 1.371 2012/06/09 20:30:32 tom Exp $
+$Id: ncurses.c,v 1.373 2012/07/21 17:40:21 tom Exp $
***************************************************************************/
#define remember_boxes(level,text,frame) /* nothing */
#endif
+/*
+ * Return-code is OK/ERR or a keyname.
+ */
+static const char *
+ok_keyname(int code)
+{
+ return ((code == OK) ? "OK" : ((code == ERR) ? "ERR" : keyname(code)));
+}
+
static void
wgetch_test(unsigned level, WINDOW *win, int delay)
{
} else if (c == 'g') {
waddstr(win, "getstr test: ");
echo();
- wgetnstr(win, buf, sizeof(buf) - 1);
+ c = wgetnstr(win, buf, sizeof(buf) - 1);
noecho();
- wprintw(win, "I saw %d characters:\n\t`%s'.", (int) strlen(buf), buf);
+ wprintw(win, "I saw %d characters:\n\t`%s' (%s).",
+ (int) strlen(buf), buf,
+ ok_keyname(c));
wclrtoeol(win);
wgetch_wrap(win, first_y);
} else if (c == 'k') {
," -a f,b set default-colors (assumed white-on-black)"
," -d use default-colors if terminal supports them"
#endif
+ ," -E call use_env(FALSE) to ignore $LINES and $COLUMNS"
#if USE_SOFTKEYS
," -e fmt specify format for soft-keys test (e)"
#endif
#if USE_LIBPANEL
," -s msec specify nominal time for panel-demo (default: 1, to hold)"
#endif
+#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20120714)
+ ," -T call use_tioctl(TRUE) to allow SIGWINCH to override environment"
+#endif
#ifdef TRACE
," -t mask specify default trace-level (may toggle with ^T)"
#endif
setlocale(LC_ALL, "");
- while ((c = getopt(argc, argv, "a:de:fhmp:s:t:")) != -1) {
+ while ((c = getopt(argc, argv, "a:dEe:fhmp:s:Tt:")) != -1) {
switch (c) {
#ifdef NCURSES_VERSION
case 'a':
default_colors = TRUE;
break;
#endif
+ case 'E':
+ use_env(FALSE);
+ break;
case 'e':
my_e_param = atoi(optarg);
#ifdef NCURSES_VERSION
nap_msec = (int) atol(optarg);
break;
#endif
+#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20120714)
+ case 'T':
+ use_tioctl(TRUE);
+ break;
+#endif
#ifdef TRACE
case 't':
save_trace = (unsigned) strtol(optarg, 0, 0);