X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/9f5a4b155f0d5599b1e7f04418333995d484d820..44e29ffea53b9da70e6b5e16f96aa0231540dd87:/gui/gui.c?ds=sidebyside diff --git a/gui/gui.c b/gui/gui.c index f1a8a21..7a15fcd 100644 --- a/gui/gui.c +++ b/gui/gui.c @@ -6,31 +6,38 @@ #include #include "form.h" +#include "articulos.h" static void finish(int sig); -/** Simula un TextField - * - * \param win Ventana - * \param x Posicion en X - * \param y Posicion en Y - * \param w Cantidad maxima de caracteres. - * \param s Destino donde guardar - */ - int main(int argc, char *argv[]) { /* initialize your non-curses data structures here */ WINDOW *mainwin; t_Form *form; + t_LstArticulos *articulos; + t_Articulo *art; + + articulos = art_cargar(argv[1]); + /* Inicio Curses */ signal(SIGINT, finish); /* arrange interrupts to terminate */ mainwin = initscr(); /* initialize the curses library */ + + /* Verifico un tamaño minimo de consola */ + if ((LINES < 25) || (COLS < 80)) { + delwin(mainwin); + endwin(); + printf("El tamaño de la consola debe ser de por lo menos 80x25!\n"); + return 1; + } + keypad(stdscr, TRUE); /* enable keyboard mapping */ nonl(); /* tell curses not to do NL->CR/NL on output */ cbreak(); /* take input chars one at a time, no wait for \n */ noecho(); /* don't echo input */ + /* Si se soporta color, los inicializo */ if (has_colors()) { start_color(); /* Simple color assignment, often all we need. */ @@ -51,37 +58,37 @@ int main(int argc, char *argv[]) /* Creo el formulario */ form = form_crear(mainwin); - form_agregar_widget(form, INPUT, "Nombre", 15, ""); - form_agregar_widget(form, RADIO, "Voto", 2, "Si,No"); - form_agregar_widget(form, INPUT, "Datos", 30, ""); + form_agregar_widget(form, INPUT, "Numero de Articulo", 8, ""); form_ejecutar(form, 10, 10); - delwin(mainwin); endwin(); + art = art_obtener(articulos, form_obtener_valor(form, "Numero de Articulo")); + /* Imprimo los datos! */ - printf("Datos Ingresados : \n"); - printf("\tNombre : %s\n", form_obtener_valor(form, "Nombre")); - printf("\tVoto : %s\n", form_obtener_valor(form, "Voto")); - printf("\tDatos : %s\n", form_obtener_valor(form, "Datos")); - + printf("Datos : \n"); + if (art != NULL) { + printf("\tDescripcion : %s\n", art->desc); + printf("\tPresentacion : %s\n", art->presentacion); + printf("\tExistencia : %s\n", art->existencia); + } else { + printf("NO EXISTE!\n"); + } /* Libero el formulario */ form_destruir(form); + art_liberar(articulos); MD_Listar(); return 0; } - - static void finish(int sig) { endwin(); /* do your non-curses wrapup here */ - exit(0); }