/programs/cmm/eolite/Eolite.c |
---|
152,7 → 152,7 |
if (param) |
{ |
strcpy(#path, #param); |
if (path[strlen(#path)-1]=='/') path[strlen(#path)-1]=NULL; //no "/" in the end |
if (path[strlen(#path)-1]!='/') chrcat(#path, '/'); //add "/" to the end of the string |
} |
Open_Dir(#path,ONLY_OPEN); |
707,8 → 707,7 |
{ |
itdir = TestBit(attr, 4); |
strcpy(#file_name, file_name_off); |
if (!strcmp(#path,"/")) sprintf(#file_path,"%s%s",#path,file_name_off); |
else sprintf(#file_path,"%s/%s",#path,file_name_off); |
sprintf(#file_path,"%s%s",#path,file_name_off); |
if (text_col==0xA6A6B7) text_col=0xFFFFFF; |
} |
if (file.selected) text_col=0xFF0000; |
747,8 → 746,10 |
if (redraw!=ONLY_SHOW) |
{ |
selected_count = 0; |
if (ESBYTE[dir_path+1]!='\0') ESBYTE[dir_path+strlen(dir_path)-1] = '\0'; |
if (buf) free(buf); |
errornum = GetDir(#buf, #files.count, dir_path, DIRS_NOROOT); |
if (ESBYTE[dir_path+1]!='\0') chrcat(dir_path, '/'); |
if (errornum) |
{ |
history.add(#path); |
865,14 → 866,14 |
void Dir_Up() |
{ |
char old_folder_name[4096]; |
char cur_folder[4096]; |
i=strlen(#path)-1; |
if (i==0) return; |
//path[i]=0x00; |
path[i]=0x00; |
i = strrchr(#path, '/'); |
strcpy(#old_folder_name, #path+i); |
if (i>1) path[i-1]=NULL; else path[i]=NULL; |
SelectFileByName(#old_folder_name); |
strcpy(#cur_folder, #path+i); |
path[i]=0x00; |
SelectFileByName(#cur_folder); |
} |
void Open(byte rez) |
883,6 → 884,7 |
{ |
if (!strncmp(#file_name,"..",3)) return; |
strcpy(#temp, #file_path); |
if (path[strlen(#temp)-1]!='/') chrcat(#temp, '/'); //need "/" in the end |
RunProgram("/sys/File Managers/Eolite", #temp); |
return; |
} |
895,6 → 897,7 |
{ |
if (!strncmp(#file_name,"..",3)) { Dir_Up(); return; } |
strcpy(#path, #file_path); |
if (path[strlen(#path)-1]!='/') chrcat(#path, '/'); //need "/" in the end |
files.first=files.cur_y=0; |
Open_Dir(#path,WITH_REDRAW); |
} |
904,6 → 907,7 |
{ |
char cur_folder[4096]; |
strcpy(#cur_folder, #path); |
cur_folder[strlen(#cur_folder)-1]=0x00; //delete last '/' |
if (history.back()) { |
strcpy(#path, history.current()); |
SelectFileByName(#cur_folder+strrchr(#cur_folder,'/')); |
923,7 → 927,7 |
byte del_rezult, copy_rezult, info_result; |
if (newf) |
{ |
sprintf(#temp,"%s/%s",#path,new_file_ed.text); |
sprintf(#temp,"%s%s",#path,new_file_ed.text); |
info_result = GetFileInfo(#temp, #element_info); |
switch(new_element_active) |
{ |
/programs/cmm/eolite/include/copy.h |
---|
26,12 → 26,14 |
if (files.count<=0) return; //no files |
if (selected_count==0) setElementSelectedFlag(files.cur_y, true); //no element selected by "insert", so we copy current element |
debugi(selected_count); |
size_buf = 4; |
for (i=0; i<files.count; i++) |
{ |
selected_offset2 = file_mas[i]*304 + buf+32 + 7; |
if (ESBYTE[selected_offset2]) { |
sprintf(#copy_t,"%s/%s",#path,file_mas[i]*304+buf+72); |
strcpy(#copy_t, #path); |
strcat(#copy_t, file_mas[i]*304+buf+72); |
path_len = strlen(#copy_t); |
size_buf += path_len + 1; |
} |
46,10 → 48,12 |
{ |
selected_offset2 = file_mas[i]*304 + buf+32 + 7; |
if (ESBYTE[selected_offset2]) { |
sprintf(copy_buf_offset,"%s/%s",#path,file_mas[i]*304+buf+72); |
strcpy(copy_buf_offset, #path); |
strcat(copy_buf_offset, file_mas[i]*304+buf+72); |
copy_buf_offset += strlen(copy_buf_offset) + 1; |
} |
} |
WriteFile(size_buf, buff_data, "/rd/1/log.log"); |
if (selected_count==1) setElementSelectedFlag(files.cur_y, false); |
clipboard.SetSlotData(size_buf, buff_data); |
cut_active = cut; |
92,10 → 96,13 |
for (j = 0; j < paste_elements_count; j++) { |
strcpy(#copy_from, path_offset); |
if (!copy_from) DialogExit(); |
sprintf(#copy_to, "%s/%s", #path, #copy_from+strrchr(#copy_from,'/')); |
strcpy(#copy_to, #path); |
strcat(#copy_to, #copy_from+strrchr(#copy_from,'/')); |
if (!strcmp(#copy_from,#copy_to)) |
{ |
sprintf(#copy_to, "%s/NEW_%s", #path, #copy_from+strrchr(#copy_from,'/')); |
strcpy(#copy_to, #path); |
strcat(#copy_to, "NEW_"); |
strcat(#copy_to, #copy_from+strrchr(#copy_from,'/')); |
} |
if (strstr(#copy_to, #copy_from)) |
{ |
/programs/cmm/eolite/include/delete.h |
---|
42,7 → 42,7 |
{ |
selected_offset2 = file_mas[i]*304 + buf+32 + 7; |
if (ESBYTE[selected_offset2]) { |
sprintf(#del_from,"%s/%s",#path,file_mas[i]*304+buf+72); |
sprintf(#del_from,"%s%s",#path,file_mas[i]*304+buf+72); |
GetFileInfo(#del_from, #file_info_count); |
if ( file_info_count.isfolder ) DirFileCount(#del_from); |
else file_count_copy++; |
65,7 → 65,7 |
{ |
selected_offset2 = file_mas[i]*304 + buf+32 + 7; |
if (ESBYTE[selected_offset2]) { |
sprintf(#del_from,"%s/%s",#path,file_mas[i]*304+buf+72); |
sprintf(#del_from,"%s%s",#path,file_mas[i]*304+buf+72); |
Del_File2(#del_from, 1); |
} |
} |
/programs/cmm/eolite/include/properties.h |
---|
203,7 → 203,7 |
{ |
selected_offset2 = file_mas[i]*304 + buf+32 + 7; |
if (ESBYTE[selected_offset2]) { |
sprintf(#cur_file,"%s/%s",way,file_mas[i]*304+buf+72); |
sprintf(#cur_file,"%s%s",way,file_mas[i]*304+buf+72); |
if (TestBit(ESDWORD[file_mas[i]*304+buf+32], 4) ) |
{ |
GetSizeDir(#cur_file); |
/programs/cmm/eolite/include/translations.h |
---|
1,5 → 1,5 |
#define TITLE "Eolite File Manager v3.68" |
#define ABOUT_TITLE "EOLITE 3.68" |
#define TITLE "Eolite File Manager v3.67" |
#define ABOUT_TITLE "EOLITE 3.67" |
#ifdef LANG_RUS |
?define T_FILE " ©«" |
/programs/cmm/eolite/include/left_panel.h |
---|
103,18 → 103,18 |
dev_num = EBX; |
for (i1=0; i1<dev_num; i1++) |
{ |
sprintf(#dev_name,"/%s",i1*304+ devbuf+72); |
sprintf(#dev_name,"/%s/",i1*304+ devbuf+72); |
Open_Dir(#dev_name, ONLY_OPEN); |
dev_disc_num = files.count; |
for (j1=0; j1<dev_disc_num; j1++;) |
{ |
sprintf(#sys_discs,"%s/%s",#dev_name,j1*304+ buf+72); |
sprintf(#sys_discs,"%s%s/",#dev_name,j1*304+ buf+72); |
list.add(#sys_discs); |
} |
if (!strcmp(#sys_discs, "/rd/1")) |
if (!strcmp(#sys_discs, "/rd/1/")) |
{ |
GetDir(#tempbuf, #temp_file_count, "/kolibrios", DIRS_ONLYREAL); |
if (temp_file_count) list.add("/kolibrios"); |
if (temp_file_count) list.add("/kolibrios/"); |
free(tempbuf); |
} |
} |
134,6 → 134,7 |
for (i=0;i<list.count;i++) |
{ |
strcpy(#dev_name, list.get(i)); |
dev_name[strlen(#dev_name)-1]=NULL; |
GetDiskIconAndName(dev_name[1], #dev_icon, #disc_name); |
if (strstr(#path, #dev_name)) is_active=true; else is_active=false; |
if (two_panels) |
/programs/cmm/eolite/include/settings.h |
---|
144,8 → 144,8 |
ini_get_int stdcall (eolite_ini_path, #config_section, "WinY", 50); WinY = EAX; |
ini_get_int stdcall (eolite_ini_path, #config_section, "WinW", 550); WinW = EAX; |
ini_get_int stdcall (eolite_ini_path, #config_section, "WinH", 506); WinH = EAX; |
ini_get_str stdcall (eolite_ini_path, #config_section, "DefaultPath", #path,4096,"/rd/1"); |
ini_get_str stdcall (eolite_ini_path, #config_section, "DefaultPath", #path_start,4096,"/rd/1"); |
ini_get_str stdcall (eolite_ini_path, #config_section, "DefaultPath", #path,4096,"/rd/1/"); |
ini_get_str stdcall (eolite_ini_path, #config_section, "DefaultPath", #path_start,4096,"/rd/1/"); |
path_start_ed.size = strlen(#path_start); |
path_start_ed.pos = strlen(#path_start); |