X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/ffba5290f8f2c8f215cc07d59cf5559f5383c8b8..925614222efcf0d79b24563577c712ff14e25312:/emufs_gui/emufs_view.c?ds=sidebyside diff --git a/emufs_gui/emufs_view.c b/emufs_gui/emufs_view.c index 7d2616d..2f48972 100644 --- a/emufs_gui/emufs_view.c +++ b/emufs_gui/emufs_view.c @@ -1,5 +1,4 @@ - #include #include #include @@ -14,6 +13,7 @@ #include "facturas.h" #include "emufs.h" #include "viewer.h" +#include "tree_viewer.h" #define CTRLD 4 @@ -118,6 +118,19 @@ t_Param param_ok(int argc, char *argv[]) parametros.tam_bloque_nota = atoi(argv[i]); if (parametros.tam_bloque_nota <= 0) return SHOW_HELP; } + break; + case 2: + if (i >= argc) return SHOW_HELP; + n = atoi(argv[i]); + if ((n<1) || (n>3)) return SHOW_HELP; + parametros.tipo_arch_nota = n; + if (((n == 1) || (n == 3)) && ((i+1)>=argc)) + return SHOW_HELP; + i++; + if (n != 2) { + parametros.tam_bloque_nota = atoi(argv[i]); + if (parametros.tam_bloque_nota <= 0) return SHOW_HELP; + } } PERR("ACA"); parametros.xml_fact = file; @@ -151,7 +164,7 @@ void print_help(char *s) int main(int argc, char *argv[]) { - int c, fin=0; + int fin=0; WINDOW *dialog; parametros.xml_art = parametros.xml_fact = -1; @@ -255,33 +268,7 @@ int main(int argc, char *argv[]) msg_box_free(stdscr, dialog); - /* CICLO PRINCIPAL DE LA APLICACION */ - while ((c = main_menu()) != -1) { - switch (c) { - case 0: - menu_articulos(); - break; - case 1: - menu_facturas(); - break; - case 2: - menu_ver_registros(); - break; - case 3: - menu_ver_bloques(); - break; - case 4: - menu_estadisticas(); - break; - case 5: - menu_mantenimiento(); - break; - case 6: - fin = 1; - break; - } - if (fin == 1) break; - } + main_menu(); endwin(); @@ -297,11 +284,12 @@ void menu_facturas() MENU_OPCION("Alta", "Crear una nueva factura."), MENU_OPCION("Baja", "Elimina una factura existente."), MENU_OPCION("Modificacion", "Modifica una factura existente."), + MENU_OPCION("Consultas", "Consulta varias de articulo."), MENU_OPCION("Volver", "Volver al menu anterior.") }; int opt; - while ((opt = menu_ejecutar(mi_menu, 4, "Menu Articulos")) != 3) { + while ((opt = menu_ejecutar(mi_menu, 5, "Menu Articulos")) != 4) { switch (opt) { case 0: fact_agregar(NULL); @@ -311,6 +299,8 @@ void menu_facturas() break; case 2: fact_modificar(NULL); + case 3: + fact_consultas(NULL); } } } @@ -321,11 +311,12 @@ void menu_articulos() MENU_OPCION("Alta", "Crear un nuevo articulo."), MENU_OPCION("Baja", "Elimina un articulo existente."), MENU_OPCION("Modificacion", "Modifica un articulo existente."), + MENU_OPCION("Consultas", "Consulta varias de articulo."), MENU_OPCION("Volver", "Volver al menu anterior.") }; int opt; - while ((opt = menu_ejecutar(mi_menu, 4, "Menu Articulos")) != 3) { + while ((opt = menu_ejecutar(mi_menu, 5, "Menu Articulos")) != 4) { switch (opt) { case 0: art_agregar(NULL); @@ -335,6 +326,9 @@ void menu_articulos() break; case 2: art_modificar(NULL); + break; + case 3: + art_consultas(NULL); } } @@ -427,6 +421,8 @@ void menu_ver_bloques() int main_menu() { + int c, w, h; + WINDOW *win; MENU(mi_menu) { MENU_OPCION("Articulos","Alta,baja,consulta y modificacion de articulos."), MENU_OPCION("Facturas","Alta,baja,consulta y modificacion de facturas."), @@ -434,10 +430,40 @@ int main_menu() 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("DEBUG", "Debug de Arbol B"), MENU_OPCION("Salir", "Salir del sistema.") }; - return menu_ejecutar(mi_menu, 7, "Menu Principal"); + while ((c=menu_ejecutar(mi_menu, 8, "Menu Principal"))!=7) { + switch (c) { + case 0: + menu_articulos(); + break; + case 1: + menu_facturas(); + break; + case 2: + menu_ver_registros(); + break; + case 3: + menu_ver_bloques(); + break; + case 4: + menu_estadisticas(); + break; + case 5: + menu_mantenimiento(); + break; + case 6: + h = LINES-2; + w = COLS-2; + win = newwin(h, w, 1, 1); + emufs_indice_b_ver(art_get_lst()->fp->indices, win, w, h, 0); + delwin(win); + } + } + + return 0; } @@ -528,6 +554,7 @@ void menu_mantenimiento() dlg = msg_box(stdscr, COLS, LINES, "Cambiando el formato de archivo .... Aguarde"); fact_reformatear(nuevo_tipo, nuevo_tam_bloque, nuevo_tam_registro, nuevo_tipo1, nuevo_tam_bloque1, nuevo_tam_registro1); msg_box_free(stdscr, dlg); + break; case 5: s = preguntar_file(); if (s) { @@ -666,50 +693,25 @@ void ver_estadisticas(EMUFS *fp) waddstr(win, s); } - if ((fp->tipo == T1) || (fp->tipo == T3)) { - wattron(win, A_BOLD); - mvwaddstr(win, i++, 1, "Cantidad de bloques : "); - wattroff(win, A_BOLD); - sprintf(s, "%lu", stats.cant_bloques); - waddstr(win, s); - } - - wattron(win, A_BOLD); - mvwaddstr(win, i++, 1, "Cant. Registros : "); - wattroff(win, A_BOLD); - sprintf(s, "%lu", stats.cant_registros); - waddstr(win, s); wattron(win, A_BOLD); - mvwaddstr(win, i++, 1, "Tamaño de Archivo de datos : "); + mvwaddstr(win, i++, 1, "Tamaño ocupado por datos / Tamaño archivo : "); wattroff(win, A_BOLD); - sprintf(s, "%lu bytes", stats.tam_archivo); - waddstr(win, s); - - wattron(win, A_BOLD); - mvwaddstr(win, i++, 1, "Tamaño de Archivos auxiliares : "); - wattroff(win, A_BOLD); - sprintf(s, "%lu bytes", stats.tam_archivos_aux); - waddstr(win, s); - - wattron(win, A_BOLD); - mvwaddstr(win, i++, 1, "Tamaño ocupado por datos : "); - wattroff(win, A_BOLD); - sprintf(s, "%lu bytes (%.2f %%)", - stats.tam_archivo - stats.tam_info_control_dat - stats.total_fs, + sprintf(s, "%lu/%lu bytes (%.2f %%)", + stats.tam_archivo - stats.tam_info_control_dat - stats.total_fs,stats.tam_archivo, (stats.tam_archivo-stats.tam_info_control_dat-stats.total_fs)*100.0f/(float)stats.tam_archivo); waddstr(win, s); wattron(win, A_BOLD); - mvwaddstr(win, i++, 1, "Tamaño de campos de control de datos: "); + mvwaddstr(win, i++, 1, "Tamaño info de control(1) / Tamaño archivo : "); wattroff(win, A_BOLD); - sprintf(s, "%lu bytes (%.2f %%)", stats.tam_info_control_dat, stats.tam_info_control_dat*100.0f/(float)stats.tam_archivo); + sprintf(s, "%lu/%lu bytes (%.2f %%)", stats.tam_info_control_dat+stats.tam_archivos_aux, stats.tam_archivo, (stats.tam_info_control_dat+stats.tam_archivos_aux)*100.0f/(float)stats.tam_archivo); waddstr(win, s); wattron(win, A_BOLD); - mvwaddstr(win, i++, 1, "Espacio Libre : "); + mvwaddstr(win, i++, 1, "Espacio Libre / Tamaño archivo : "); wattroff(win, A_BOLD); - sprintf(s, "%lu bytes (%.2f %%)", stats.total_fs, stats.total_fs*100.0f/(float)stats.tam_archivo); + sprintf(s, "%lu/%lu bytes (%.2f %%)", stats.total_fs, stats.tam_archivo, stats.total_fs*100.0f/(float)stats.tam_archivo); waddstr(win, s); wattron(win, A_BOLD); @@ -730,6 +732,41 @@ void ver_estadisticas(EMUFS *fp) sprintf(s, "%lu bytes", stats.min_fs); waddstr(win, s); + wattron(win, A_BOLD); + mvwaddstr(win, i++, 1, "Tamaño de Archivo de datos : "); + wattroff(win, A_BOLD); + sprintf(s, "%lu bytes", stats.tam_archivo); + waddstr(win, s); + + wattron(win, A_BOLD); + mvwaddstr(win, i++, 1, "Tamaño de Archivos auxiliares : "); + wattroff(win, A_BOLD); + sprintf(s, "%lu bytes", stats.tam_archivos_aux); + waddstr(win, s); + + wattron(win, A_BOLD); + mvwaddstr(win, i++, 1, "Información de control en el .dat : "); + wattroff(win, A_BOLD); + sprintf(s, "%lu bytes", stats.tam_info_control_dat); + waddstr(win, s); + + if ((fp->tipo == T1) || (fp->tipo == T3)) { + wattron(win, A_BOLD); + mvwaddstr(win, i++, 1, "Cantidad de bloques : "); + wattroff(win, A_BOLD); + sprintf(s, "%lu", stats.cant_bloques); + waddstr(win, s); + } + + wattron(win, A_BOLD); + mvwaddstr(win, i++, 1, "Cant. Registros : "); + wattroff(win, A_BOLD); + sprintf(s, "%lu", stats.cant_registros); + waddstr(win, s); + + wattron(win, A_BOLD); + mvwaddstr(win, i++, 1, "(1) Info control del .dat + los archivos auxiliares!."); + wattroff(win, A_BOLD); wattron(win, A_BLINK); mvwaddstr(win, i+2, 1, "Presione una tecla para continuar."); @@ -767,5 +804,3 @@ char *preguntar_file() form_destruir(form); return t; } - -