diff --git a/data/Tupfile.lua b/data/Tupfile.lua index 048f092df7..b86ca2f436 100644 --- a/data/Tupfile.lua +++ b/data/Tupfile.lua @@ -244,6 +244,7 @@ extra_files = { {"kolibrios/drivers/i915/", "common/drivers/i915/*"}, {"kolibrios/drivers/test/", "common/drivers/test/*"}, {"kolibrios/drivers/vmware/", "common/drivers/vmware/*"}, + {"kolibrios/KolibriNext/", "common/KolibriNext/*"}, {"kolibrios/KolibriNext/settings/", "common/KolibriNext/settings/*"}, {"kolibrios/lib/avcodec-56.dll", "common/lib/avcodec-56.dll"}, {"kolibrios/lib/avdevice-56.dll", "common/lib/avdevice-56.dll"}, diff --git a/data/common/File Managers/icons.ini b/data/common/File Managers/icons.ini index 3a2afa7588..ebfd9b0007 100644 --- a/data/common/File Managers/icons.ini +++ b/data/common/File Managers/icons.ini @@ -1,3 +1,21 @@ +[drives16] +r=58 +f=5 +t=51 +h=50 +b=50 +u=57 +c=19 + +[drives32] +r=49 +f=3 +t=36 +h=50 +b=50 +u=50 +c=50 + [icons16] =0 =1 diff --git a/data/common/icons16.png b/data/common/icons16.png index 601fa85b49..e68f995419 100644 Binary files a/data/common/icons16.png and b/data/common/icons16.png differ diff --git a/programs/cmm/eolite/Eolite.c b/programs/cmm/eolite/Eolite.c index 9496289701..66cb7f940c 100644 --- a/programs/cmm/eolite/Eolite.c +++ b/programs/cmm/eolite/Eolite.c @@ -3,8 +3,8 @@ // 70.5 - get volume info and label -#define TITLE "Eolite File Manager 4.66" -#define ABOUT_TITLE "EOLITE 4.66" +#define TITLE "Eolite File Manager 4.70" +#define ABOUT_TITLE "EOLITE 4.70" #ifndef AUTOBUILD #include "lang.h--" @@ -794,7 +794,6 @@ void Line_ReDraw(dword bgcol, filenum){ file.sizelo = ESDWORD[file_offet+32]; file.sizehi = ESDWORD[file_offet+36]; file_name_off = file_offet+40; - sprintf(#full_path,"%s/%s",#path,file_name_off); if (! TestBit(attr, 4) ) //file or folder? { @@ -854,6 +853,8 @@ void Line_ReDraw(dword bgcol, filenum){ bgcol, text_col, kfont.size.pt, #label_file_name); } if (bgcol == col.selec_inactive) DrawWideRectangle(files.x+2, y, files.w-4, files.item_h, 2, 0x92B1D9); + + sprintf(#full_path,"%s/%s",#path,file_name_off); DrawIconByExtension(#full_path, ext1, files.x+4, icon_y, bgcol); } diff --git a/programs/cmm/eolite/include/icons.h b/programs/cmm/eolite/include/icons.h index 1bf2db2b97..4639511162 100644 --- a/programs/cmm/eolite/include/icons.h +++ b/programs/cmm/eolite/include/icons.h @@ -4,8 +4,7 @@ void DrawIconByExtension(dword file_path, extension, xx, yy, fairing_color) { char BYTE_HEAD_FILE[4]; char ext[512]; - int i; - dword icon_n = 2; + int icon_n = 2; dword selected_image; dword default_image; dword default_icon; @@ -15,32 +14,41 @@ void DrawIconByExtension(dword file_path, extension, xx, yy, fairing_color) selected_image = icons32_selected.image; default_image = icons32_default.image; default_icon=95; - } - else { + } else { icons_ini.section = "icons16"; selected_image = icons16_selected.image; default_image = icons16_default.image; default_icon=2; } - if (extension) - { + //KolibriNext + /* + if (chrnum(file_path, '/')==2) { + if (ESBYTE[file_path+1]=='/') ext[0] = ESBYTE[file_path+2]; + else ext[0] = ESBYTE[file_path+1]; + ext[1] = '\0'; + if (big_icons.checked) { + icons_ini.section = "drives32"; + icon_n = icons_ini.GetInt(#ext, 50); + } else { + icons_ini.section = "drives16"; + icon_n = icons_ini.GetInt(#ext, 50); + } + } else + */ + if (extension) { strcpy(#ext, extension); strlwr(#ext); icon_n = icons_ini.GetInt(#ext, default_icon); - } - else if (file_path) - { - ReadFile(0,4,#BYTE_HEAD_FILE,file_path); - IF(DSDWORD[#BYTE_HEAD_FILE]=='KCPK')||(DSDWORD[#BYTE_HEAD_FILE]=='UNEM') - icon_n = icons_ini.GetInt("kex", 2); + } else if (file_path) { + ReadFile(0,4,#BYTE_HEAD_FILE,file_path); + IF(DSDWORD[#BYTE_HEAD_FILE]=='KCPK')||(DSDWORD[#BYTE_HEAD_FILE]=='UNEM') + icon_n = icons_ini.GetInt("kex", 2); } - if (fairing_color==col.selec) - { + + if (fairing_color==col.selec) { img_draw stdcall(selected_image, xx, yy, icon_size, icon_size, 0, icon_n*icon_size); - } - else - { + } else { img_draw stdcall(default_image, xx, yy, icon_size, icon_size, 0, icon_n*icon_size); } } diff --git a/programs/cmm/lib/obj/libimg.h b/programs/cmm/lib/obj/libimg.h index 82ea5cae2d..8a0aba0535 100644 --- a/programs/cmm/lib/obj/libimg.h +++ b/programs/cmm/lib/obj/libimg.h @@ -254,10 +254,11 @@ struct libimg_image img_draw stdcall(pure_img32, x, y, 32, 32, 0, icon_n*32); } -:void DrawIcon16(dword x,y, _bg, icon_n) { +:int DrawIcon16(dword x,y, _bg, icon_n) { static dword bg; static dword pure_img16; dword bgshadow; + int size; if (!pure_img16) || (bg!=_bg) { bg = _bg; bgshadow = MixColors(bg, 0, 220); @@ -271,7 +272,9 @@ struct libimg_image if (DSDWORD[ESI]==0xffCACBD6) DSDWORD[ESI] = bgshadow; } } - img_draw stdcall(pure_img16, x, y, ESDWORD[EAX+4], ESDWORD[EAX+4], 0, icon_n*ESDWORD[EAX+4]); + size = ESDWORD[pure_img16+4]; //get image width + img_draw stdcall(pure_img16, x, y, size, size, 0, icon_n*size); + return size; } #endif \ No newline at end of file diff --git a/programs/cmm/sysmon/sysmon.c b/programs/cmm/sysmon/sysmon.c index 5fdebdd3c9..1e74b01f60 100644 --- a/programs/cmm/sysmon/sysmon.c +++ b/programs/cmm/sysmon/sysmon.c @@ -299,8 +299,8 @@ void MonitorTmp() void DrawIconWithText(dword _x, _y, _icon, _title) { - DrawIcon16(_x, _y, sc.work, _icon); - WriteTextWithBg(_x+ICONGAP, _y, 0xD0, sc.work_text, _title, sc.work); + int size = DrawIcon16(_x, _y, sc.work, _icon); + WriteTextWithBg(_x+ICONGAP, _y + size - 16, 0xD0, sc.work_text, _title, sc.work); } dword GetCpuLoad(dword max_h)