]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - test/testcurs.c
ncurses 5.6 - patch 20070602
[ncurses.git] / test / testcurs.c
index e8aa918eacb9b57e026b697d16181369f4f4108e..bf602bffc5b26feef5786c5171f928eeb23ee7e2 100644 (file)
@@ -7,7 +7,7 @@
  *  wrs(5/28/93) -- modified to be consistent (perform identically) with either
  *                  PDCurses or under Unix System V, R4
  *
- * $Id: testcurs.c,v 1.32 2002/10/19 22:11:24 tom Exp $
+ * $Id: testcurs.c,v 1.37 2005/12/31 20:23:09 tom Exp $
  */
 
 #include <test.priv.h>
@@ -33,7 +33,7 @@ struct commands {
 };
 typedef struct commands COMMAND;
 
-const COMMAND command[] =
+static const COMMAND command[] =
 {
     {"General Test", introTest},
     {"Pad Test", padTest},
@@ -58,7 +58,7 @@ strdup(char *s)
 }
 #endif /* not HAVE_STRDUP */
 
-int width, height;
+static int width, height;
 
 int
 main(
@@ -158,7 +158,7 @@ Continue(WINDOW *win)
     int x1 = getmaxx(win);
     int y0 = y1 < 10 ? y1 : 10;
     int x0 = 1;
-    long save;
+    chtype save;
 
     save = mvwinch(win, y0, x1 - 1);
 
@@ -342,13 +342,19 @@ inputTest(WINDOW *win)
     mvwaddstr(win, 1, 1, "Press keys (or mouse buttons) to show their names");
     mvwaddstr(win, 2, 1, "Press spacebar to finish");
     wrefresh(win);
+
     keypad(win, TRUE);
     raw();
     noecho();
+
+#if HAVE_TYPEAHEAD
     typeahead(-1);
+#endif
+
 #if defined(PDCURSES)
     mouse_set(ALL_MOUSE_EVENTS);
 #endif
+
     for (;;) {
        wmove(win, 3, 5);
        c = wgetch(win);
@@ -358,7 +364,7 @@ inputTest(WINDOW *win)
        else if (isprint(c))
            wprintw(win, "Key Pressed: %c", c);
        else
-           wprintw(win, "Key Pressed: %s", unctrl(c));
+           wprintw(win, "Key Pressed: %s", unctrl(UChar(c)));
 #if defined(PDCURSES)
        if (c == KEY_MOUSE) {
            int button = 0;
@@ -400,7 +406,8 @@ inputTest(WINDOW *win)
 
     repeat = 0;
     do {
-       static const char *fmt[] = {
+       static const char *fmt[] =
+       {
            "%d %10s",
            "%d %[a-zA-Z]s",
            "%d %[][a-zA-Z]s",
@@ -439,6 +446,17 @@ outputTest(WINDOW *win)
     chtype ch;
     int by, bx;
 
+#if !HAVE_TIGETSTR
+#if HAVE_TGETENT
+    char tc_buffer[4096];
+    char tc_parsed[4096];
+    char *area_pointer = tc_parsed;
+    tgetent(tc_buffer, getenv("TERM"));
+#else
+#define tgetstr(a,b) 0
+#endif
+#endif /* !HAVE_TIGETSTR */
+
     nl();
     wclear(win);
     mvwaddstr(win, 1, 1,
@@ -529,8 +547,10 @@ outputTest(WINDOW *win)
     winsch(win, ch);
     Continue(win);
 
+#if HAVE_WINSSTR
     mvwinsstr(win, 6, 2, "A1B2C3D4E5");
     Continue(win);
+#endif
 
     wmove(win, 5, 1);
     winsertln(win);
@@ -553,14 +573,14 @@ outputTest(WINDOW *win)
     *Buffer = 0;
     scanw("%s", Buffer);
 
-    if (tigetstr("cvvis") != 0) {
+    if (TIGETSTR("cvvis", "vs") != 0) {
        wclear(win);
        curs_set(2);
        mvwaddstr(win, 1, 1, "The cursor should appear as a block (visible)");
        Continue(win);
     }
 
-    if (tigetstr("civis") != 0) {
+    if (TIGETSTR("civis", "vi") != 0) {
        wclear(win);
        curs_set(0);
        mvwaddstr(win, 1, 1,
@@ -568,7 +588,7 @@ outputTest(WINDOW *win)
        Continue(win);
     }
 
-    if (tigetstr("cnorm") != 0) {
+    if (TIGETSTR("cnorm", "ve") != 0) {
        wclear(win);
        curs_set(1);
        mvwaddstr(win, 1, 1, "The cursor should be an underline (normal)");
@@ -585,6 +605,8 @@ outputTest(WINDOW *win)
 #endif
 
     werase(win);
+
+#if HAVE_TERMNAME
     mvwaddstr(win, 1, 1, "Information About Your Terminal");
     mvwaddstr(win, 3, 1, termname());
     mvwaddstr(win, 4, 1, longname());
@@ -592,6 +614,7 @@ outputTest(WINDOW *win)
        mvwaddstr(win, 5, 1, "This terminal supports blinking.");
     else
        mvwaddstr(win, 5, 1, "This terminal does NOT support blinking.");
+#endif
 
     mvwaddnstr(win, 7, 5, "Have a nice day!ok", 16);
     wrefresh(win);
@@ -689,12 +712,12 @@ padTest(WINDOW *dummy GCC_UNUSED)
 static void
 display_menu(int old_option, int new_option)
 {
-    register size_t i;
+    int i;
 
     attrset(A_NORMAL);
     mvaddstr(3, 20, "PDCurses Test Program");
 
-    for (i = 0; i < MAX_OPTIONS; i++)
+    for (i = 0; i < (int) MAX_OPTIONS; i++)
        mvaddstr(5 + i, 25, command[i].text);
     if (old_option != (-1))
        mvaddstr(5 + old_option, 25, command[old_option].text);