X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/9bbb4b390299cc1c13b735a700d7050e9f6a6ad1..0e6e058c514e07878085512095d5be4f5b50e8d9:/emufs_gui/gui.c diff --git a/emufs_gui/gui.c b/emufs_gui/gui.c index 35ebc98..03b61a3 100644 --- a/emufs_gui/gui.c +++ b/emufs_gui/gui.c @@ -7,6 +7,7 @@ #include #include +#include "gui.h" #include "menu.h" #include "form.h" #include "articulos.h" @@ -23,14 +24,12 @@ void menu_articulos(); void menu_facturas(); void menu_mantenimiento(); void menu_estadisticas(); +void menu_ver_registros(); +void menu_ver_bloques(); void preguntar_nuevo_tipo(int *tipo, int *tam_bloque, int *tam_reg); void ver_estadisticas(EMUFS *fp); -/* cuadro de msg. w y h son de la ventana padre */ -WINDOW *msg_box(WINDOW *win, int w, int h, const char *format, ...); -void msg_box_free(WINDOW *padre, WINDOW *win); - typedef enum { PARAM_OK, /* Parametros estan ok */ NO_ART_FILE, /* No se especifico nombre de archivo Articulos */ @@ -70,7 +69,6 @@ t_Param param_ok(int argc, char *argv[]) return BLOQUE_NO_DEFINIDO; parametros.tipo_arch_art = n; parametros.tam_bloque_art = atoi(argv[i+2]); - fprintf(stderr, "%d\n", parametros.tam_bloque_art); if (parametros.tam_bloque_art <= 0) return NULL_BLOCK_FOUND; parametros.xml_art = i; } else { @@ -232,20 +230,18 @@ int main(int argc, char *argv[]) menu_facturas(); break; case 2: - dialog = derwin(stdscr, LINES-4, COLS-2, 2, 1); - ver_registros(dialog, COLS-2, LINES-4); - werase(dialog); - wrefresh(dialog); - delwin(dialog); - refresh(); + menu_ver_registros(); break; - case 5: + case 3: + menu_ver_bloques(); + break; + case 4: menu_estadisticas(); break; - case 6: + case 5: menu_mantenimiento(); break; - case 7: + case 6: fin = 1; break; } @@ -333,20 +329,93 @@ void menu_estadisticas() } } +void menu_ver_registros() +{ + MENU(mi_menu) { + MENU_OPCION("Articulos", "Ver registros del archivo de Articulos."), + MENU_OPCION("Facturas", "Ver registros del archivo de Facturas."), + MENU_OPCION("Notas", "Ver registros del archivo de Notas."), + MENU_OPCION("Volver", "Ir al menu anterior.") + }; + int opt; + WINDOW *dialog; + + while ((opt = menu_ejecutar(mi_menu, 4, "Menu Ver Registros")) != 3) { + switch (opt) { + case 0: + dialog = derwin(stdscr, LINES-4, COLS-2, 2, 1); + ver_registros(dialog, COLS-2, LINES-4, 0); + werase(dialog); + wrefresh(dialog); + delwin(dialog); + refresh(); + break; + case 1: + dialog = derwin(stdscr, LINES-4, COLS-2, 2, 1); + ver_registros(dialog, COLS-2, LINES-4, 1); + werase(dialog); + wrefresh(dialog); + delwin(dialog); + refresh(); + /* break; */ + /* case 2: */ + } + } +} + +void menu_ver_bloques() +{ + MENU(mi_menu) { + MENU_OPCION("Articulos", "Ver bloques del archivo de Articulos."), + MENU_OPCION("Facturas", "Ver bloques del archivo de Facturas."), + MENU_OPCION("Notas", "Ver bloques del archivo de Notas."), + MENU_OPCION("Volver", "Ir al menu anterior.") + }; + int opt; + WINDOW *dialog; + + while ((opt = menu_ejecutar(mi_menu, 4, "Menu Ver Bloques")) != 3) { + switch (opt) { + case 0: + dialog = derwin(stdscr, LINES-4, COLS-2, 2, 1); + ver_bloques(dialog, COLS-2, LINES-4, 0); + werase(dialog); + wrefresh(dialog); + delwin(dialog); + refresh(); + break; + case 1: + dialog = derwin(stdscr, LINES-4, COLS-2, 2, 1); + ver_bloques(dialog, COLS-2, LINES-4, 1); + werase(dialog); + wrefresh(dialog); + delwin(dialog); + refresh(); + break; + case 2: + dialog = derwin(stdscr, LINES-4, COLS-2, 2, 1); + ver_bloques(dialog, COLS-2, LINES-4, 2); + werase(dialog); + wrefresh(dialog); + delwin(dialog); + refresh(); + } + } +} + int main_menu() { MENU(mi_menu) { MENU_OPCION("Articulos","Alta,baja,consulta y modificacion de articulos."), MENU_OPCION("Facturas","Alta,baja,consulta y modificacion de facturas."), - MENU_OPCION("Ver Registros","Ver registros/bloques de archivo Articulos."), - MENU_OPCION("Ver Facturas","Ver registros/bloques de archivo Facturas."), - MENU_OPCION("Ver Notas","Ver registros/bloques de archivo Notas."), + MENU_OPCION("Ver Registros","Ver registros (en su contexto) de los archivos ."), + MENU_OPCION("Ver Bloques","Ver bloques (en su contexto) de los archivos."), MENU_OPCION("Estadisticas","Ver estadisticas de ocupacion de archivos."), MENU_OPCION("Mantenimiento","Tareas de mantenimiento de los archivos."), MENU_OPCION("Salir", "Salir del sistema.") }; - return menu_ejecutar(mi_menu, 8, "Menu Principal"); + return menu_ejecutar(mi_menu, 7, "Menu Principal"); }