forked from KolibriOS/kolibrios
Eolite: fix deletion memory leak, fix selection moving to the first element after deletion
git-svn-id: svn://kolibrios.org@5991 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
a96fb73670
commit
80fbb11ee1
@ -122,7 +122,7 @@ void main()
|
|||||||
rand_n = random(40);
|
rand_n = random(40);
|
||||||
|
|
||||||
load_dll(boxlib, #box_lib_init,0);
|
load_dll(boxlib, #box_lib_init,0);
|
||||||
load_dll(libini, #lib_init,1);
|
load_dll(libini, #lib_init,1);
|
||||||
|
|
||||||
eolite_ini_path = abspath("Eolite.ini");
|
eolite_ini_path = abspath("Eolite.ini");
|
||||||
fd_path_eolite_ini_path = "/fd/1/File Managers/Eolite.ini";
|
fd_path_eolite_ini_path = "/fd/1/File Managers/Eolite.ini";
|
||||||
@ -370,8 +370,8 @@ void main()
|
|||||||
}
|
}
|
||||||
if (new_element_active)
|
if (new_element_active)
|
||||||
{
|
{
|
||||||
if (key_scancode == SCAN_CODE_ESC) NewElement(0);
|
if (key_scancode == SCAN_CODE_ENTER) NewElement(true);
|
||||||
if (key_scancode == SCAN_CODE_ENTER) NewElement(1);
|
if (key_scancode == SCAN_CODE_ESC) NewElement(false);
|
||||||
EAX= key_ascii << 8;
|
EAX= key_ascii << 8;
|
||||||
edit_box_key stdcall (#new_file_ed);
|
edit_box_key stdcall (#new_file_ed);
|
||||||
break;
|
break;
|
||||||
@ -507,7 +507,7 @@ void main()
|
|||||||
if (action_buf==OPERATION_END)
|
if (action_buf==OPERATION_END)
|
||||||
{
|
{
|
||||||
FnProcess(5);
|
FnProcess(5);
|
||||||
SelectFileByName(#copy_to+strrchr(#copy_to,'/'));
|
if (copy_stak) SelectFileByName(#copy_to+strrchr(#copy_to,'/'));
|
||||||
}
|
}
|
||||||
if (action_buf==100) Open(0);
|
if (action_buf==100) Open(0);
|
||||||
if (action_buf==201) ShowOpenWithDialog();
|
if (action_buf==201) ShowOpenWithDialog();
|
||||||
@ -523,14 +523,14 @@ void main()
|
|||||||
action_buf=0;
|
action_buf=0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(cmd_free)
|
if(cmd_free)
|
||||||
{
|
{
|
||||||
if(cmd_free==1) free(menu_stak);
|
if(cmd_free==1) menu_stak=free(menu_stak);
|
||||||
else if(cmd_free==2)free(about_stak);
|
else if(cmd_free==2) about_stak=free(about_stak);
|
||||||
else if(cmd_free==3)free(properties_stak);
|
else if(cmd_free==3) properties_stak=free(properties_stak);
|
||||||
else if(cmd_free==4)free(settings_stak);
|
else if(cmd_free==4) settings_stak=free(settings_stak);
|
||||||
else if(cmd_free==5)free(copy_stak);
|
else if(cmd_free==5) copy_stak=free(copy_stak);
|
||||||
|
else if(cmd_free==6) delete_stak=free(delete_stak);
|
||||||
cmd_free = false;
|
cmd_free = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -662,11 +662,11 @@ void List_ReDraw()
|
|||||||
|
|
||||||
void Line_ReDraw(dword bgcol, filenum){
|
void Line_ReDraw(dword bgcol, filenum){
|
||||||
dword text_col=0,
|
dword text_col=0,
|
||||||
ext1, attr,
|
ext1, attr,
|
||||||
file_offet,
|
file_offet,
|
||||||
file_name_off,
|
file_name_off,
|
||||||
y=filenum*files.item_h+files.y;
|
y=filenum*files.item_h+files.y;
|
||||||
BDVK file;
|
BDVK file;
|
||||||
if (filenum==-1) return;
|
if (filenum==-1) return;
|
||||||
DrawBar(files.x,y,3,files.item_h,bgcol);
|
DrawBar(files.x,y,3,files.item_h,bgcol);
|
||||||
DrawBar(files.x+19,y,files.w-19,files.item_h,bgcol);
|
DrawBar(files.x+19,y,files.w-19,files.item_h,bgcol);
|
||||||
@ -886,16 +886,16 @@ void Del_File_Thread()
|
|||||||
|
|
||||||
if (selected_count)
|
if (selected_count)
|
||||||
{
|
{
|
||||||
for (i=0; i<files.count; i++)
|
for (i=0; i<files.count; i++)
|
||||||
{
|
{
|
||||||
selected_offset2 = file_mas[i]*304 + buf+32 + 7;
|
selected_offset2 = file_mas[i]*304 + buf+32 + 7;
|
||||||
if (ESBYTE[selected_offset2]) {
|
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);
|
GetFileInfo(#del_from, #file_info_count);
|
||||||
if ( file_info_count.isfolder ) DirFileCount(#del_from);
|
if ( file_info_count.isfolder ) DirFileCount(#del_from);
|
||||||
else file_count_copy++;
|
else file_count_copy++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -905,34 +905,26 @@ void Del_File_Thread()
|
|||||||
|
|
||||||
copy_bar.max = file_count_copy;
|
copy_bar.max = file_count_copy;
|
||||||
|
|
||||||
//if (dodel==true)
|
del_error = 0;
|
||||||
//{
|
DisplayOperationForm();
|
||||||
//del_active=2;
|
if (selected_count)
|
||||||
//if (itdir) ShowMessage(WAIT_DELETING_FOLDER, 0);
|
{
|
||||||
del_error = 0;
|
for (i=0; i<files.count; i++)
|
||||||
DisplayOperationForm();
|
|
||||||
if (selected_count)
|
|
||||||
{
|
{
|
||||||
for (i=0; i<files.count; i++)
|
selected_offset2 = file_mas[i]*304 + buf+32 + 7;
|
||||||
{
|
if (ESBYTE[selected_offset2]) {
|
||||||
selected_offset2 = file_mas[i]*304 + buf+32 + 7;
|
sprintf(#del_from,"%s%s",#path,file_mas[i]*304+buf+72);
|
||||||
if (ESBYTE[selected_offset2]) {
|
Del_File2(#del_from, 1);
|
||||||
sprintf(#del_from,"%s%s",#path,file_mas[i]*304+buf+72);
|
}
|
||||||
Del_File2(#del_from, 1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
}
|
||||||
{
|
else
|
||||||
Del_File2(#file_path, 1);
|
{
|
||||||
}
|
Del_File2(#file_path, 1);
|
||||||
if (del_error) Write_Error(del_error);
|
}
|
||||||
DialogExit();
|
if (del_error) Write_Error(del_error);
|
||||||
//}
|
cmd_free = 6;
|
||||||
//del_active=0;
|
DialogExit();
|
||||||
//DeleteButton(301);
|
|
||||||
//DeleteButton(302);
|
|
||||||
//Open_Dir(#path,WITH_REDRAW);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Del_File(byte dodel) {
|
void Del_File(byte dodel) {
|
||||||
@ -949,7 +941,7 @@ void SelectFileByName(dword that_file)
|
|||||||
{
|
{
|
||||||
int ind;
|
int ind;
|
||||||
files.KeyHome();
|
files.KeyHome();
|
||||||
Open_Dir(#path,ONLY_OPEN);
|
Open_Dir(#path,ONLY_OPEN);
|
||||||
if (!real_files_names_case) strttl(that_file);
|
if (!real_files_names_case) strttl(that_file);
|
||||||
for (ind=files.count-1; ind>=0; ind--;) { if (!strcmp(file_mas[ind]*304+buf+72,that_file)) break; }
|
for (ind=files.count-1; ind>=0; ind--;) { if (!strcmp(file_mas[ind]*304+buf+72,that_file)) break; }
|
||||||
files.cur_y = ind - 1;
|
files.cur_y = ind - 1;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#define TITLE "Eolite File Manager v3.28"
|
#define TITLE "Eolite File Manager v3.29"
|
||||||
#define ABOUT_TITLE "Eolite 3.28"
|
#define ABOUT_TITLE "Eolite 3.29"
|
||||||
|
|
||||||
#ifdef LANG_RUS
|
#ifdef LANG_RUS
|
||||||
?define T_FILE "” ©«"
|
?define T_FILE "” ©«"
|
||||||
|
6
programs/cmm/kolibri font viewer/Tupfile.lua
Normal file
6
programs/cmm/kolibri font viewer/Tupfile.lua
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
if tup.getconfig("NO_CMM") ~= "" then return end
|
||||||
|
if tup.getconfig("LANG") == "ru"
|
||||||
|
then C_LANG = "LANG_RUS"
|
||||||
|
else C_LANG = "LANG_ENG" -- this includes default case without config
|
||||||
|
end
|
||||||
|
tup.rule("kolibri font viewer.c", "c-- /D=AUTOBUILD /D=$(C_LANG) %f" .. tup.getconfig("KPACK_CMD"), "kolibri font viewer.com")
|
Loading…
Reference in New Issue
Block a user