]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - test/demo_forms.c
ncurses 5.9 - patch 20121117
[ncurses.git] / test / demo_forms.c
index 70d249e21431b0c2a3f9d1f46c1a23184efca3bf..d20469460632ddeb2125ef6f73b6ca602f76fdc0 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 2003-2009,2010 Free Software Foundation, Inc.              *
+ * Copyright (c) 2003-2011,2012 Free Software Foundation, Inc.              *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
@@ -26,7 +26,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: demo_forms.c,v 1.36 2010/11/13 20:49:50 tom Exp $
+ * $Id: demo_forms.c,v 1.40 2012/11/18 01:22:44 tom Exp $
  *
  * Demonstrate a variety of functions from the form library.
  * Thomas Dickey - 2003/4/26
@@ -108,7 +108,7 @@ make_field(int frow, int fcol, int rows, int cols)
        set_field_just(f, j_value);
        if (d_option) {
            if (has_colors()) {
-               set_field_fore(f, COLOR_PAIR(2));
+               set_field_fore(f, (chtype) COLOR_PAIR(2));
                set_field_back(f, A_UNDERLINE | COLOR_PAIR(3));
            } else {
                set_field_fore(f, A_BOLD);
@@ -153,10 +153,10 @@ display_form(FORM * f)
        set_form_sub(f, derwin(w, rows, cols, 1, 2));
        box(w, 0, 0);
        keypad(w, TRUE);
-    }
 
-    if (post_form(f) != E_OK)
-       wrefresh(w);
+       if (post_form(f) != E_OK)
+           wrefresh(w);
+    }
 }
 
 static void
@@ -254,12 +254,14 @@ show_current_field(WINDOW *win, FORM * form)
     char *buffer;
     int nbuf;
     int field_rows, field_cols, field_max;
+    int currow, curcol;
 
     if (has_colors()) {
-       wbkgd(win, COLOR_PAIR(1));
+       wbkgd(win, (chtype) COLOR_PAIR(1));
     }
     werase(win);
-    wprintw(win, "Cursor: %d,%d", form->currow, form->curcol);
+    form_getyx(form, currow, curcol);
+    wprintw(win, "Cursor: %d,%d", currow, curcol);
     if (data_ahead(form))
        waddstr(win, " ahead");
     if (data_behind(form))
@@ -307,15 +309,15 @@ show_current_field(WINDOW *win, FORM * form)
        }
 
        waddch(win, ' ');
-       (void) wattrset(win, field_fore(field));
+       (void) wattrset(win, (int) field_fore(field));
        waddstr(win, "fore");
-       wattroff(win, field_fore(field));
+       wattroff(win, (int) field_fore(field));
 
        waddch(win, '/');
 
-       (void) wattrset(win, field_back(field));
+       (void) wattrset(win, (int) field_back(field));
        waddstr(win, "back");
-       wattroff(win, field_back(field));
+       wattroff(win, (int) field_back(field));
 
        wprintw(win, ", pad '%c'",
                field_pad(field));
@@ -529,7 +531,7 @@ main(int argc, char *argv[])
        init_pair(1, COLOR_WHITE, COLOR_BLUE);
        init_pair(2, COLOR_GREEN, COLOR_BLACK);
        init_pair(3, COLOR_CYAN, COLOR_BLACK);
-       bkgd(COLOR_PAIR(1));
+       bkgd((chtype) COLOR_PAIR(1));
        refresh();
     }
 
@@ -538,6 +540,7 @@ main(int argc, char *argv[])
     endwin();
     ExitProgram(EXIT_SUCCESS);
 }
+
 #else
 int
 main(void)