10 static void finish(int sig);
12 int main(int argc, char *argv[])
14 /* initialize your non-curses data structures here */
19 signal(SIGINT, finish); /* arrange interrupts to terminate */
20 mainwin = initscr(); /* initialize the curses library */
22 /* Verifico un tamaño minimo de consola */
23 if ((LINES < 25) || (COLS < 80)) {
26 printf("El tamaño de la consola debe ser de por lo menos 80x25!\n");
30 keypad(stdscr, TRUE); /* enable keyboard mapping */
31 nonl(); /* tell curses not to do NL->CR/NL on output */
32 cbreak(); /* take input chars one at a time, no wait for \n */
33 noecho(); /* don't echo input */
35 /* Si se soporta color, los inicializo */
38 /* Simple color assignment, often all we need. */
39 init_pair(COLOR_BLACK, COLOR_BLACK, COLOR_BLACK);
40 init_pair(COLOR_GREEN, COLOR_GREEN, COLOR_BLACK);
41 init_pair(COLOR_RED, COLOR_RED, COLOR_BLACK);
42 init_pair(COLOR_CYAN, COLOR_CYAN, COLOR_BLACK);
43 init_pair(COLOR_WHITE, COLOR_WHITE, COLOR_BLACK);
44 init_pair(COLOR_MAGENTA, COLOR_MAGENTA, COLOR_BLACK);
45 init_pair(COLOR_BLUE, COLOR_BLUE, COLOR_BLACK);
46 init_pair(COLOR_YELLOW, COLOR_YELLOW, COLOR_BLACK);
49 /* Ventana, caracter para linea vertical, caracter para linea horizontal*/
50 box(mainwin, ACS_VLINE, ACS_HLINE);
51 /* Ventana, Y, X, Texto */
52 mvwaddstr(mainwin, 2, 10, "Ejemplo de Formulario");
54 /* Creo el formulario */
55 form = form_crear(mainwin);
56 form_agregar_widget(form, INPUT, "Nombre", 15, "");
57 form_agregar_widget(form, RADIO, "Voto", 3, "Si,No,No Corresponde");
58 form_agregar_widget(form, INPUT, "Datos", 30, "");
60 form_ejecutar(form, 10, 10);
65 /* Imprimo los datos! */
66 printf("Datos Ingresados : \n");
67 printf("\tNombre : %s\n", form_obtener_valor(form, "Nombre"));
68 printf("\tVoto : %s\n", form_obtener_valor(form, "Voto"));
69 printf("\tDatos : %s\n", form_obtener_valor(form, "Datos"));
71 /* Libero el formulario */
78 static void finish(int sig)
82 /* do your non-curses wrapup here */