]> git.llucax.com Git - z.facultad/75.06/emufs.git/blobdiff - gui/gui.c
* Algunos cambios.
[z.facultad/75.06/emufs.git] / gui / gui.c
index f1a8a2103602b6ba7ca226ccc7c0fbd1fd0941ce..7a15fcdc9e5fd872f0b10d291bf6791a67b8f70f 100644 (file)
--- a/gui/gui.c
+++ b/gui/gui.c
@@ -6,31 +6,38 @@
 #include <string.h>
 
 #include "form.h"
 #include <string.h>
 
 #include "form.h"
+#include "articulos.h"
 
 static void finish(int sig);
                                
 
 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;
 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 */
        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 */
 
        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. */
        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);
 
        /* 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);
 
 
        form_ejecutar(form, 10, 10);
 
-
        delwin(mainwin);
        endwin();
        
        delwin(mainwin);
        endwin();
        
+       art = art_obtener(articulos, form_obtener_valor(form, "Numero de Articulo"));
+
        /* Imprimo los datos! */
        /* 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);
        /* Libero el formulario */
        form_destruir(form);
+       art_liberar(articulos);
        
        MD_Listar();
        return 0;
 }
 
        
        MD_Listar();
        return 0;
 }
 
-
-
 static void finish(int sig)
 {
        endwin();
 
        /* do your non-curses wrapup here */
 static void finish(int sig)
 {
        endwin();
 
        /* do your non-curses wrapup here */
-
        exit(0);
 }
 
        exit(0);
 }