Subversion Repositories Kolibri OS

Rev

Rev 6583 | Rev 7054 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
4042 leency 1
char *ext[]={
2
"..",   17,
4225 punk_joker 3
"",16, "",16,
4042 leency 4
"txt", 1, "doc", 1, "rtf", 1, "odt", 1, "log", 1, "docx",1,
5
"htm", 2, "html",2, "mht", 2,
6
"ini", 3, "js",  3, "conf",3, "inf", 3,
7
"xlt", 4, "xls", 4, "ods", 4, "xlsx",4,
8
"cmd", 5, "bat", 5, "py",  5, "sh",  5, "ksh", 5, "com", 5,
9
"kex", 6, "lua", 6,
10
"exe", 7, "msi", 7,
11
"sys", 8, "ocx", 8, "drv", 8, "so",  8,
12
"inc", 9,
6264 leency 13
"chr", 10, "mt",  10, "ttf", 10, "fon", 10, "kf",  10,
4042 leency 14
"asm", 11,
15
"mp3", 12, "wav", 12, "mid", 12, "midi",12, "ogg", 12, "wma", 12, "flac",12,
16
"skn", 13,
17
"avi", 14, "flv", 14, "mpg", 14, "wmv", 14, "mov", 14, "mkv", 14, "mp4", 14, "vob", 14, "webm", 14,
18
"djvu",15, "pdf", 15, "fb2", 15,
6583 leency 19
"nes", 18, "smc", 18, "min", 18,
4042 leency 20
"gif", 19, "bmp", 19, "tga", 19, "pcx", 19, "png", 19, "pnm", 19, "jpg", 19, "xcf", 19, "ai",  19,
4069 leency 21
"jpeg",19, "raw", 11, "psd", 19, "wbmp",19, "tiff",19, "tif", 19,
5493 leency 22
"3ds", 20, "asc", 20, "ico", 20, "cur", 20, "ani", 20, "vox", 20,
4042 leency 23
"img", 21, "ima", 21,
24
"dll", 22, "obj", 22, "dict",22,
4057 leency 25
"rar", 23, "zip", 23, "cab", 23, "tar", 23, "ajr", 23, "jar", 23, "7z", 23, "gz", 23, "kexp", 23,
4042 leency 26
"iso", 24, "cue", 24, "nrg", 24, "mdf", 24,
27
"grf", 25,
28
0,0};
29
 
6757 leency 30
void DrawIconByExtension(dword file_path, extension, xx, yy, fairing_color)
4225 punk_joker 31
{
6757 leency 32
	char BYTE_HEAD_FILE[4];
5751 leency 33
	int i;
6278 leency 34
	dword icon_n=0;
4225 punk_joker 35
	if (extension) for (i=0; ext[i]!=0; i+=2;)
36
	{
37
		if (strcmpi(extension, ext[i])==0)
38
		{
39
			icon_n = ext[i+1];
40
			break;
41
		}
6757 leency 42
	}
43
	else if (file_path)
44
	{
45
		//if (!strncmp(file_path, "/rd/1",5)) || (!strncmp(file_path, "/tmp",4)) {
46
			ReadFile(0,4,#BYTE_HEAD_FILE,file_path);
47
			IF(DSDWORD[#BYTE_HEAD_FILE]=='KCPK')||(DSDWORD[#BYTE_HEAD_FILE]=='UNEM') icon_n = 6;
48
		//}
4225 punk_joker 49
	}
4042 leency 50
	ficons_pal[0] = fairing_color;
4049 leency 51
	PutPaletteImage(icon_n*16*15+#ficons,16,15,xx,yy,8,#ficons_pal);
52
	if (fairing_color!=0xFFFfff) IconFairing(icon_n, xx, yy, fairing_color);
4042 leency 53
}
54
 
55
 
56
void IconFairing(dword filenum, x,y, color)
57
{
58
	switch(filenum)
59
	{
60
		case 0...1: //file
5719 leency 61
		case 3: //íàñòðîéêè
4042 leency 62
			RIGHT_PAINT:
4049 leency 63
			PutPixel(x+10,y,color);
64
			PutPixel(x+11,y+1,color);
65
			PutPixel(x+12,y+2,color);
66
			PutPixel(x+13,y+3,color);
4042 leency 67
			return;
68
		case 2: //html
4049 leency 69
			DrawBar(x,y,1,7,color);
70
			DrawBar(x+1,y,1,6,color);
71
			DrawBar(x,y+10,1,5,color);
72
			DrawBar(x+1,y+11,1,4,color);
4042 leency 73
			GOTO RIGHT_PAINT;
74
		case 9: //inc
4057 leency 75
			DrawBar(x+13,y,1,3,color);
76
			DrawBar(x+14,y,2,4,color);
77
			DrawBar(x+15,y,1,15,color);
78
			PutPixel(x+3,y+14,color);
79
			DrawBar(x+4,y+13,1,2,color);
80
			DrawBar(x+5,y+12,10,3,color);
81
			PutPixel(x+10,y+11,color);
82
			DrawBar(x+11,y+10,1,2,color);
83
			DrawBar(x+12,y+9,1,3,color);
84
			PutPixel(x+12,y+7,color);
85
			DrawBar(x+13,y+6,2,7,color);
86
			PutPixel(x+14,y+5,color);
4042 leency 87
			return;
88
		case 10: //font
4049 leency 89
			DrawBar(x+1,y+1,1,13,color);
4057 leency 90
			DrawBar(x+2,y+1,1,11,color);
91
			DrawBar(x+3,y+1,1,10,color);
92
			DrawBar(x+4,y+1,1,9,color);
93
			DrawBar(x+5,y+1,1,7,color);
94
			DrawBar(x+6,y+1,1,5,color);
95
			DrawBar(x+7,y+1,1,4,color);
96
			DrawBar(x+8,y+1,1,2,color);
97
			DrawBar(x+14,y+1,1,13,color);
98
			DrawBar(x+13,y+1,1,11,color);
99
			PutPixel(x+9,y+6,color);
100
			DrawBar(x+8,y+10,2,1,color);
101
			DrawBar(x+7,y+11,2,3,color);
4042 leency 102
			return;
103
		case 12: //audio
104
			PutPixel(x+2,y+9,color);
105
			PutPixel(x+1,y+10,color);
106
			PutPixel(x+10,y+8,color);
107
			PutPixel(x+9,y+9,color);
108
 
109
			PutPixel(x+6,y+13,color);
110
			PutPixel(x+5,y+14,color);
111
			PutPixel(x+14,y+12,color);
112
			PutPixel(x+13,y+13,color);
113
			return;
114
		case 13: //skin
4057 leency 115
			PutPixel(x+15,y,color);
4042 leency 116
			return;
117
		case 16...17: //folder
4049 leency 118
			DrawBar(x,y,1,15,color);
4057 leency 119
			DrawBar(x+8,y,8,2,color);
120
			IF (filenum==17) PutPixel(x+11,y+1,0x1A7B17); //green arrow part
4049 leency 121
			DrawBar(x+1,y+13,15,2,color);
5719 leency 122
			PutPixel(x+1,y,color);
4057 leency 123
			PutPixel(x+7,y,color);
124
			PutPixel(x+15,y+2,color);
4049 leency 125
			PutPixel(x+1,y+12,color);
4057 leency 126
			PutPixel(x+15,y+12,color);
4042 leency 127
			return;
5719 leency 128
		case 18:
4049 leency 129
			DrawBar(x,y+11,1,2,color);
4057 leency 130
			DrawBar(x+15,y+11,1,2,color);
4049 leency 131
			DrawBar(x,y+13,16,1,color);
4042 leency 132
			return;
5719 leency 133
		case 24:
4049 leency 134
			DrawBar(x,y,6,1,color);
135
			DrawBar(x,y+1,4,1,color);
136
			DrawBar(x,y+2,3,1,color);
137
			DrawBar(x,y+3,2,2,color);
4042 leency 138
 
4049 leency 139
			DrawBar(x,y+5,1,5,color);
4042 leency 140
 
4049 leency 141
			DrawBar(x,y+10,2,2,color);
142
			DrawBar(x,y+12,3,1,color);
143
			DrawBar(x,y+13,4,1,color);
144
			DrawBar(x,y+14,6,1,color);
4042 leency 145
 
4049 leency 146
			DrawBar(x+11,y,5,1,color);
147
			DrawBar(x+13,y+1,3,1,color);
148
			DrawBar(x+14,y+2,2,1,color);
149
			DrawBar(x+15,y+3,1,2,color);
4042 leency 150
 
4049 leency 151
			DrawBar(x+15,y+10,1,2,color);
152
			DrawBar(x+14,y+12,2,1,color);
153
			DrawBar(x+13,y+13,3,1,color);
154
			DrawBar(x+11,y+14,5,1,color);
4042 leency 155
	}
156
}