//* //* MAKE NEW FOLDER //* byte auia_newfolder(AUI_VARSP v) { byte redoing = 0; char new_folder_name[256]; snprintf(new_folder_name, 256, "New Folder"); byte dispatch_ret = 1; do { redoing = 0; dispatch_ret = 1; char * ret = aw_ime(v->hWin, new_folder_name, alang_get("newfolder")); if (ret != NULL) { if (strlen(ret) == 0) { redoing = aw_confirm(v->hWin, alang_get("newfolder"), alang_get ("newfolder.insertname"), aui_icons(37), alang_get("tryagain"), alang_get("cancel")); } else { char * path_newfolder = NULL; aui_setpath(&path_newfolder, v->path, ret, 0); if (path_newfolder != NULL) { if (file_exists(path_newfolder)) { redoing = aw_confirm(v->hWin, alang_get ("newfolder"), alang_get ("newfolder.exist"), aui_icons (39), alang_get ("tryagain"), alang_get ("cancel")); } else { int retval = mkdir(path_newfolder, 0777); if (retval == 0) { dispatch_ret = 0; v->reshow = 1; snprintf(v->selfile, 256, "%s", ret); } else { redoing = aw_confirm(v->hWin, alang_get ("newfolder"), alang_get ("newfolder.error"), aui_icons (37), alang_get ("tryagain"), alang_get ("cancel")); } } free(path_newfolder); } } snprintf(new_folder_name, 256, "%s", ret); free(ret); } } while (redoing); return dispatch_ret; }
//* //* ONHOLD //* //* //* MAKE NEW FOLDER //* byte auia_hold_rename(AUI_VARSP v, char *oldname) { byte redoing = 0; char new_folder_name[256]; snprintf(new_folder_name, 256, oldname); byte dispatch_ret = 1; do { redoing = 0; dispatch_ret = 1; char *ret = aw_ime(v->hWin, new_folder_name, alang_get("rename")); if (ret != NULL) { if (strlen(ret) == 0) { redoing = aw_confirm(v->hWin, alang_get("rename"), alang_get ("rename.insertname"), aui_icons(37), alang_get("tryagain"), alang_get("cancel")); } else if (strcmp(ret, oldname) == 0) { redoing = 0; } else { char *path_newfolder = NULL; aui_setpath(&path_newfolder, v->path, ret, 0); if (path_newfolder != NULL) { if (file_exists(path_newfolder)) { redoing = aw_confirm(v->hWin, alang_get ("rename"), alang_get ("rename.exist"), aui_icons (39), alang_get ("tryagain"), alang_get ("cancel")); } else { char *path_oldfolder = NULL; aui_setpath(&path_oldfolder, v->path, oldname, 0); if (path_oldfolder) { int retval = rename (path_oldfolder, path_newfolder); if (retval != -1) { dispatch_ret = 0; v->reshow = 1; snprintf(v-> selfile, 256, "%s", ret); } else { redoing = aw_confirm (v->hWin, alang_get ("rename"), alang_get ("rename.error"), aui_icons (37), alang_get ("tryagain"), alang_get ("cancel")); } free(path_oldfolder); } } free(path_newfolder); } } snprintf(new_folder_name, 256, ret); free(ret); } } while (redoing); return dispatch_ret; }