int main(int argc, char* argv[]) { if(argc < 3) { printf("Argumentos invalidos\n"); return 1; } if(!strcmp(argv[1], "-i")) { //Insersion return insersion(argc, argv); } else if(!strcmp(argv[1], "-l")) { //Listado return listado(argc, argv); } else if(!strcmp(argv[1], "-k")) { //busqueda return busqueda(argc, argv); } else if(!strcmp(argv[1], "-ok")) { return sort_menu(argc, argv, &sort_cmp_id); } else if(!strcmp(argv[1], "-on")) { printf("Sort name\n"); return sort_menu(argc, argv, &sort_cmp_entidad); } else { printf("Argumentos invalidos\n"); return 1; } return 0; }
/* * load() : Load address file. */ void load(List *list) { char pathname[] = "test.dat"; DLL_Return ExitCode; int (*pfun)() = NULL; switch(sort_menu()) { case 1: pfun = sort_name; break; case 2: pfun = sort_state; break; case 3: pfun = sort_zip; break; case 4: pfun = NULL; break; } if((ExitCode = DLL_LoadList(list, pathname, pfun)) != DLL_NORMAL) { (void)(ExitCode == DLL_MEM_ERROR && fputs("Fatal memory error.\n\n", stderr)); (void)(ExitCode == DLL_NULL_LIST && fputs("List is empty.\n\n", stderr)); (void)(ExitCode == DLL_OPEN_ERROR && fputs("Cannot open file.\n\n", stderr)); (void)(ExitCode == DLL_READ_ERROR && fputs("Read file error.\n\n", stderr)); } }
/* * enter() : Enter names and addresses. */ void enter(List *list) { int (*pfun)() = NULL; memset(&put_addr, '\0', sizeof(put_addr)); switch(sort_menu()) { case 1: pfun = sort_name; break; case 2: pfun = sort_state; break; case 3: pfun = sort_zip; break; case 4: pfun = NULL; break; } for(;;) { fputs("\nEnter a new item, or press <Enter> to return to menu.\n", stdout); input("Enter name: ", put_addr.name, sizeof(put_addr.name)); if(put_addr.name[0] == '\r' || put_addr.name[0] == '\n' || put_addr.name[0] == '\0') break; input("Enter Street: ", put_addr.street, sizeof(put_addr.street)); input("Enter City: ", put_addr.city, sizeof(put_addr.city)); input("Enter State: ", put_addr.state, sizeof(put_addr.state)); input("Enter Zip: ", put_addr.zip, sizeof(put_addr.zip)); if(DLL_AddRecord(list, &put_addr, pfun) == DLL_MEM_ERROR) { fputs("Fatal memory error\n", stderr); exit(EXIT_FAILURE); } #if DEBUG fputs("DEBUG MODE *** DATA DIRECTLY FROM LINK LIST ***\n", stderr); fprintf(stderr, "list->head: %p, list->current: %p, list->tail: %p\n", list->head, list->current, list->tail); fprintf(stderr, "list->listsize: %ld, list->current_index: %ld\n", list->listsize, list->current_index); display(list->current->info); #endif } }
void SORTPlugin::domenu(const QString &menu_name, V3DPluginCallback2 &callback, QWidget *parent) { if (menu_name == tr("sort_swc")) { sort_menu(callback,parent); } else if (menu_name == tr("help")) { printHelp(callback,parent); } else { printHelp(callback,parent); } }