Rev 8826 | Rev 8868 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
7242 | leency | 1 | _ini icons_ini = { "/sys/File managers/icons.ini", NULL }; |
4042 | leency | 2 | |
6757 | leency | 3 | void DrawIconByExtension(dword file_path, extension, xx, yy, fairing_color) |
4225 | punk_joker | 4 | { |
6757 | leency | 5 | char BYTE_HEAD_FILE[4]; |
7054 | leency | 6 | char ext[512]; |
8821 | leency | 7 | int icon_n = 2; |
7242 | leency | 8 | dword selected_image; |
9 | dword default_image; |
||
7256 | leency | 10 | dword default_icon; |
7054 | leency | 11 | |
7244 | leency | 12 | if (big_icons.checked) { |
7242 | leency | 13 | icons_ini.section = "icons32"; |
14 | selected_image = icons32_selected.image; |
||
15 | default_image = icons32_default.image; |
||
7256 | leency | 16 | default_icon=95; |
8821 | leency | 17 | } else { |
7242 | leency | 18 | icons_ini.section = "icons16"; |
19 | selected_image = icons16_selected.image; |
||
20 | default_image = icons16_default.image; |
||
7256 | leency | 21 | default_icon=2; |
7242 | leency | 22 | } |
23 | |||
8839 | leency | 24 | if (ESBYTE[file_path+1]!='k') && (chrnum(file_path, '/')==2) { |
8821 | leency | 25 | if (ESBYTE[file_path+1]=='/') ext[0] = ESBYTE[file_path+2]; |
26 | else ext[0] = ESBYTE[file_path+1]; |
||
27 | ext[1] = '\0'; |
||
28 | if (big_icons.checked) { |
||
29 | icons_ini.section = "drives32"; |
||
30 | icon_n = icons_ini.GetInt(#ext, 50); |
||
31 | } else { |
||
32 | icons_ini.section = "drives16"; |
||
33 | icon_n = icons_ini.GetInt(#ext, 50); |
||
34 | } |
||
8826 | leency | 35 | } else if (extension) { |
7054 | leency | 36 | strcpy(#ext, extension); |
37 | strlwr(#ext); |
||
7256 | leency | 38 | icon_n = icons_ini.GetInt(#ext, default_icon); |
8821 | leency | 39 | } else if (file_path) { |
40 | ReadFile(0,4,#BYTE_HEAD_FILE,file_path); |
||
41 | IF(DSDWORD[#BYTE_HEAD_FILE]=='KCPK')||(DSDWORD[#BYTE_HEAD_FILE]=='UNEM') |
||
42 | icon_n = icons_ini.GetInt("kex", 2); |
||
4225 | punk_joker | 43 | } |
8821 | leency | 44 | |
45 | if (fairing_color==col.selec) { |
||
7242 | leency | 46 | img_draw stdcall(selected_image, xx, yy, icon_size, icon_size, 0, icon_n*icon_size); |
8821 | leency | 47 | } else { |
7242 | leency | 48 | img_draw stdcall(default_image, xx, yy, icon_size, icon_size, 0, icon_n*icon_size); |
7054 | leency | 49 | } |
4042 | leency | 50 | } |
51 |