forked from KolibriOS/kolibrios
dl: automatically extract downloaded zip and 7z files
various fixes git-svn-id: svn://kolibrios.org@8839 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
c986378f55
commit
0aae2f3c46
@ -30,8 +30,8 @@ docx=3
|
|||||||
exc=3
|
exc=3
|
||||||
wtx=3
|
wtx=3
|
||||||
inf=3
|
inf=3
|
||||||
xml=3
|
|
||||||
odt=3
|
odt=3
|
||||||
|
ob07=3
|
||||||
inc=4
|
inc=4
|
||||||
h=4
|
h=4
|
||||||
img=5
|
img=5
|
||||||
@ -148,18 +148,14 @@ mov=11
|
|||||||
mp4=11
|
mp4=11
|
||||||
vob=11
|
vob=11
|
||||||
webm=11
|
webm=11
|
||||||
ttf=12
|
htm=12
|
||||||
ttc=12
|
html=12
|
||||||
chr=12
|
mht=12
|
||||||
kf=12
|
eml=12
|
||||||
mt=12
|
url=12
|
||||||
htm=13
|
css=13
|
||||||
html=13
|
js=14
|
||||||
mht=13
|
lif=15
|
||||||
eml=13
|
|
||||||
url=13
|
|
||||||
lif=14
|
|
||||||
grf=14
|
|
||||||
3ds=15
|
3ds=15
|
||||||
asc=15
|
asc=15
|
||||||
vox=15
|
vox=15
|
||||||
@ -190,14 +186,22 @@ h=27
|
|||||||
java=27
|
java=27
|
||||||
pas=27
|
pas=27
|
||||||
pp=27
|
pp=27
|
||||||
|
xml=27
|
||||||
cpp=28
|
cpp=28
|
||||||
c=28
|
c=28
|
||||||
fb2=29
|
fb2=29
|
||||||
ob7=29
|
ob7=29
|
||||||
|
grf=47
|
||||||
mgb=47
|
mgb=47
|
||||||
|
ch8=48
|
||||||
dtp=52
|
dtp=52
|
||||||
pal=52
|
pal=52
|
||||||
ch8=48
|
ttf=59
|
||||||
|
ttc=59
|
||||||
|
chr=59
|
||||||
|
kf=59
|
||||||
|
mt=59
|
||||||
|
|
||||||
|
|
||||||
[icons32]
|
[icons32]
|
||||||
<dir>=45
|
<dir>=45
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 10 KiB |
@ -70,8 +70,8 @@ void ProcessButtonClick(int id)
|
|||||||
if (id==BTN_EXIT) { StopDownloading(); ExitProcess(); }
|
if (id==BTN_EXIT) { StopDownloading(); ExitProcess(); }
|
||||||
if (id==BTN_START) StartDownloading();
|
if (id==BTN_START) StartDownloading();
|
||||||
if (id==BTN_STOP) StopDownloading();
|
if (id==BTN_STOP) StopDownloading();
|
||||||
if (id==BTN_DIR) RunProgram("/sys/File managers/Eolite", #filepath);
|
if (id==BTN_DIR) { RunProgram("/sys/File managers/Eolite", #filepath); ExitProcess(); }
|
||||||
if (id==BTN_RUN) RunProgram("/sys/@open", #filepath);
|
if (id==BTN_RUN) { RunProgram("/sys/@open", #filepath); ExitProcess(); }
|
||||||
}
|
}
|
||||||
|
|
||||||
void ProcessKeyPress()
|
void ProcessKeyPress()
|
||||||
@ -234,12 +234,34 @@ void SaveFile(int attempt)
|
|||||||
} else {
|
} else {
|
||||||
miniprintf(#notify_message, FILE_NOT_SAVED, #filepath);
|
miniprintf(#notify_message, FILE_NOT_SAVED, #filepath);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!exit_param) notify(#notify_message);
|
if (!exit_param) notify(#notify_message);
|
||||||
|
|
||||||
|
if (!strcmpi(#filepath+strlen(#filepath)-4, ".zip"))
|
||||||
|
|| (!strcmpi(#filepath+strlen(#filepath)-3, ".7z")) {
|
||||||
|
Unarchive(#filepath);
|
||||||
|
}
|
||||||
|
|
||||||
if (open_file) ProcessButtonClick(BTN_RUN);
|
if (open_file) ProcessButtonClick(BTN_RUN);
|
||||||
if (autoclose.checked) ExitProcess();
|
if (autoclose.checked) ExitProcess();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Unarchive(dword _arc)
|
||||||
|
{
|
||||||
|
char folder_name[4096];
|
||||||
|
strcpy(#folder_name, "/tmp0/1/Downloads/");
|
||||||
|
strcpy(#folder_name, #filepath+strrchr(#filepath, '/'));
|
||||||
|
folder_name[strlen(#folder_name)-4] = '\0';
|
||||||
|
CreateDir(#folder_name);
|
||||||
|
|
||||||
|
strcpy(#param, "-o \"");
|
||||||
|
strcat(#param, #folder_name);
|
||||||
|
strcat(#param, "\" -h \"");
|
||||||
|
strcat(#param, #filepath);
|
||||||
|
chrcat(#param, '\"');
|
||||||
|
RunProgram("/sys/unz", #param);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
struct TIME
|
struct TIME
|
||||||
|
@ -21,7 +21,7 @@ void DrawIconByExtension(dword file_path, extension, xx, yy, fairing_color)
|
|||||||
default_icon=2;
|
default_icon=2;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (chrnum(file_path, '/')==2) {
|
if (ESBYTE[file_path+1]!='k') && (chrnum(file_path, '/')==2) {
|
||||||
if (ESBYTE[file_path+1]=='/') ext[0] = ESBYTE[file_path+2];
|
if (ESBYTE[file_path+1]=='/') ext[0] = ESBYTE[file_path+2];
|
||||||
else ext[0] = ESBYTE[file_path+1];
|
else ext[0] = ESBYTE[file_path+1];
|
||||||
ext[1] = '\0';
|
ext[1] = '\0';
|
||||||
|
@ -41,6 +41,6 @@ struct opendialog
|
|||||||
};
|
};
|
||||||
|
|
||||||
char communication_area_name[] = "FFFFFFFF_open_dialog";
|
char communication_area_name[] = "FFFFFFFF_open_dialog";
|
||||||
char open_dialog_path[] = "/rd/1/File managers/opendial";
|
char open_dialog_path[] = "/sys/File managers/opendial";
|
||||||
|
|
||||||
#endif
|
#endif
|
@ -122,10 +122,10 @@ void main()
|
|||||||
dword GetFreeSpaceOfRamdisk()
|
dword GetFreeSpaceOfRamdisk()
|
||||||
{
|
{
|
||||||
dword rdempty = malloc(1440*1024);
|
dword rdempty = malloc(1440*1024);
|
||||||
CreateFile(0, 1440*1024, rdempty, "/rd/1/rdempty");
|
CreateFile(0, 1440*1024, rdempty, "/sys/rdempty");
|
||||||
free(rdempty);
|
free(rdempty);
|
||||||
rdempty = get_file_size("/rd/1/rdempty");
|
rdempty = get_file_size("/sys/rdempty");
|
||||||
DeleteFile("/rd/1/rdempty");
|
DeleteFile("/sys/rdempty");
|
||||||
return rdempty;
|
return rdempty;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -184,7 +184,7 @@ void EventDownloadComplete()
|
|||||||
} else {
|
} else {
|
||||||
copyf("/sys", #backup);
|
copyf("/sys", #backup);
|
||||||
copyf(#latest, "/sys");
|
copyf(#latest, "/sys");
|
||||||
if (keep_settings.checked) copyf(#backup_settings, "/rd/1/settings");
|
if (keep_settings.checked) copyf(#backup_settings, "/sys/settings");
|
||||||
if (restart_apps.checked) RestartAllProcess();
|
if (restart_apps.checked) RestartAllProcess();
|
||||||
install_complete = true;
|
install_complete = true;
|
||||||
}
|
}
|
||||||
|
@ -66,7 +66,7 @@ import mtar, \
|
|||||||
mtar_read_header, 'mtar_read_header', \
|
mtar_read_header, 'mtar_read_header', \
|
||||||
mtar_write_data, 'mtar_write_data', \
|
mtar_write_data, 'mtar_write_data', \
|
||||||
mtar_finalize, 'mtar_finalize', \
|
mtar_finalize, 'mtar_finalize', \
|
||||||
mtar_close, 'mtar_finalize'
|
mtar_close, 'mtar_close'
|
||||||
|
|
||||||
import libc, \
|
import libc, \
|
||||||
printf, 'printf'
|
printf, 'printf'
|
||||||
|
@ -62,7 +62,7 @@ import mtar, \
|
|||||||
mtar_write_file_header, 'mtar_write_file_header', \
|
mtar_write_file_header, 'mtar_write_file_header', \
|
||||||
mtar_write_data, 'mtar_write_data', \
|
mtar_write_data, 'mtar_write_data', \
|
||||||
mtar_finalize, 'mtar_finalize', \
|
mtar_finalize, 'mtar_finalize', \
|
||||||
mtar_close, 'mtar_finalize'
|
mtar_close, 'mtar_close'
|
||||||
|
|
||||||
IM_END:
|
IM_END:
|
||||||
align 4
|
align 4
|
||||||
|
@ -131,13 +131,13 @@ fiTree dd 1
|
|||||||
|
|
||||||
|
|
||||||
imgFree:
|
imgFree:
|
||||||
file 'free.raw'
|
; file 'pic/free.raw'
|
||||||
imgOk:
|
imgOk:
|
||||||
file 'ok.raw'
|
; file 'pic/ok.raw'
|
||||||
imgMinus:
|
imgMinus:
|
||||||
file 'minus.raw'
|
; file 'pic/minus.raw'
|
||||||
imgPlus:
|
imgPlus:
|
||||||
file 'plus.raw'
|
; file 'pic/plus.raw'
|
||||||
i_end:
|
i_end:
|
||||||
|
|
||||||
readFolder dd rdFoldforTree ;äãªæ¨ï, ª®â®à®© ç¨â ¥âáï ¯ ¯ª
|
readFolder dd rdFoldforTree ;äãªæ¨ï, ª®â®à®© ç¨â ¥âáï ¯ ¯ª
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
@erase lang.inc
|
|
||||||
@echo lang fix es >lang.inc
|
|
||||||
@fasm unz.asm unz
|
|
||||||
@erase lang.inc
|
|
||||||
@pause
|
|
Loading…
Reference in New Issue
Block a user