Subversion Repositories Kolibri OS

Rev

Rev 8330 | Rev 8443 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 8330 Rev 8439
Line 1... Line -...
1
//Íàäî áóäåò ïåðåäåëàòü íà "äåðåâî ïîèñêà" èëè, ÷òî-òî ïîäîáíîå
-
 
2
//áóäåò íå÷èòàáåëüíî, çàòî ìåíüøå è áûñòåå
1
collection_int text_colors;
Line 3... Line 2...
3
 
2
 
4
struct color_spec {
3
struct color_spec {
5
	char *name;
4
	char *name;
6
	int rgb;
5
	int rgb;
Line 7... Line -...
7
};
-
 
8
 
-
 
9
collection_int text_colors;
6
};
10
 
-
 
11
struct color_spec color_specs[] = {
-
 
12
	"aliceblue",        0xF0F8FF,
-
 
13
	"antiquewhite",     0xFAEBD7,
7
 
14
	"aqua",             0x00FFFF,
-
 
15
	"aquamarine",       0x7FFFD4,
8
struct color_spec color_specs[] = {
16
	"azure",            0xF0FFFF,
-
 
17
	"beige",            0xF5F5DC,
-
 
18
	"bisque",           0xFFE4C4,
-
 
19
	"black",            0x000000,
-
 
20
	"blanchedalmond",   0xFFEBCD,
-
 
21
	"blue",             0x0000FF,
9
	"aliceblue",        0xF0F8FF, "antiquewhite",     0xFAEBD7,	"aqua",             0x00FFFF, "aquamarine",       0x7FFFD4,
22
	"blueviolet",       0x8A2BE2,
-
 
23
	"brown",            0xA52A2A,
-
 
24
	"burlywood",        0xDEB887,
-
 
25
	"cadetblue",        0x5F9EA0,
10
	"azure",            0xF0FFFF, "beige",            0xF5F5DC,	"bisque",           0xFFE4C4, "black",            0x000000,
26
	"chartreuse",       0x7FFF00,
-
 
27
	"chocolate",        0xD2691E,
-
 
28
	"coral",            0xFF7F50,
-
 
29
	"cornflowerblue",   0x6495ED,
11
	"blanchedalmond",   0xFFEBCD, "blue",             0x0000FF,	"blueviolet",       0x8A2BE2, "brown",            0xA52A2A,
30
	"cornsilk",         0xFFF8DC,
-
 
31
	"crimson",          0xDC143C,
-
 
32
	"cyan",             0x00FFFF,
-
 
33
	"darkblue",         0x00008B,
12
	"burlywood",        0xDEB887, "cadetblue",        0x5F9EA0,	"chartreuse",       0x7FFF00, "chocolate",        0xD2691E,
34
	"darkcyan",         0x008B8B,
-
 
35
	"darkgoldenrod",    0xB8860B,
-
 
36
	"darkgray",         0xA9A9A9,
-
 
37
	"darkgreen",        0x006400,
13
	"coral",            0xFF7F50, "cornflowerblue",   0x6495ED,	"cornsilk",         0xFFF8DC, "crimson",          0xDC143C,
38
	"darkkhaki",        0xBDB76B,
-
 
39
	"darkmagenta",      0x8B008B,
-
 
40
	"darkolivegreen",   0x556B2F,
-
 
41
	"darkorange",       0xFF8C00,
14
	"cyan",             0x00FFFF, "darkblue",         0x00008B,	"darkcyan",         0x008B8B, "darkgoldenrod",    0xB8860B,
42
	"darkorchid",       0x9932CC,
-
 
43
	"darkred",          0x8B0000,
-
 
44
	"darksalmon",       0xE9967A,
-
 
45
	"darkseagreen",     0x8FBC8F,
15
	"darkgray",         0xA9A9A9, "darkgreen",        0x006400,	"darkkhaki",        0xBDB76B, "darkmagenta",      0x8B008B,
46
	"darkslateblue",    0x483D8B,
-
 
47
	"darkslategray",    0x2F4F4F,
-
 
48
	"darkturquoise",    0x00CED1,
-
 
49
	"darkviolet",       0x9400D3,
16
	"darkolivegreen",   0x556B2F, "darkorange",       0xFF8C00,	"darkorchid",       0x9932CC, "darkred",          0x8B0000,
50
	"deeppink",         0xFF1493,
-
 
51
	"deepskyblue",      0x00BFFF,
-
 
52
	"dimgray",          0x696969,
-
 
53
	"dodgerblue",       0x1E90FF,
17
	"darksalmon",       0xE9967A, "darkseagreen",     0x8FBC8F,	"darkslateblue",    0x483D8B, "darkslategray",    0x2F4F4F,
54
	"firebrick",        0xB22222,
-
 
55
	"floralwhite",      0xFFFAF0,
-
 
56
	"forestgreen",      0x228B22,
-
 
57
	"fuchsia",          0xFF00FF,
18
	"darkturquoise",    0x00CED1, "darkviolet",       0x9400D3,	"deeppink",         0xFF1493, "deepskyblue",      0x00BFFF,
58
	"gainsboro",        0xDCDCDC,
-
 
59
	"ghostwhite",       0xF8F8FF,
-
 
60
	"gold",             0xFFD700,
-
 
61
	"goldenrod",        0xDAA520,
19
	"dimgray",          0x696969, "dodgerblue",       0x1E90FF,	"firebrick",        0xB22222, "floralwhite",      0xFFFAF0,
62
	"gray",             0x808080,
-
 
63
	"green",            0x008000,
-
 
64
	"greenyellow",      0xADFF2F,
-
 
65
	"honeydew",         0xF0FFF0,
20
	"forestgreen",      0x228B22, "fuchsia",          0xFF00FF,	"gainsboro",        0xDCDCDC, "ghostwhite",       0xF8F8FF,
66
	"hotpink",          0xFF69B4,
-
 
67
	"indianred",        0xCD5C5C,
-
 
68
	"indigo",           0x4B0082,
-
 
69
	"ivory",            0xFFFFF0,
21
	"gold",             0xFFD700, "goldenrod",        0xDAA520,	"gray",             0x808080, "green",            0x008000,
70
	"khaki",            0xF0E68C,
-
 
71
	"lavender",         0xE6E6FA,
-
 
72
	"lavenderblush",    0xFFF0F5,
-
 
73
	"lawngreen",        0x7CFC00,
22
	"greenyellow",      0xADFF2F, "honeydew",         0xF0FFF0,	"hotpink",          0xFF69B4, "indianred",        0xCD5C5C,
74
	"lemonchiffon",     0xFFFACD,
-
 
75
	"lightblue",        0xADD8E6,
-
 
76
	"lightcoral",       0xF08080,
-
 
77
	"lightcyan",        0xE0FFFF,
-
 
78
	"lightgoldenrodyellow", 0xFAFAD2,
23
	"indigo",           0x4B0082, "ivory",            0xFFFFF0,	"khaki",            0xF0E68C, "lavender",         0xE6E6FA,
79
	"lightgreen",       0x90EE90,
-
 
80
	"lightgrey",        0xD3D3D3,
-
 
81
	"lightpink",        0xFFB6C1,
-
 
82
	"lightsalmon",      0xFFA07A,
24
	"lavenderblush",    0xFFF0F5, "lawngreen",        0x7CFC00,	"lemonchiffon",     0xFFFACD, "lightblue",        0xADD8E6,
83
	"lightseagreen",    0x20B2AA,
-
 
84
	"lightskyblue",     0x87CEFA,
-
 
85
	"lightslategray",   0x778899,
-
 
86
	"lightsteelblue",   0xB0C4DE,
25
	"lightcoral",       0xF08080, "lightcyan",        0xE0FFFF,	"lightgreen",       0x90EE90, "lightgrey",        0xD3D3D3,
87
	"lightyellow",      0xFFFFE0,
-
 
88
	"lime",             0x00FF00,
-
 
89
	"limegreen",        0x32CD32,
-
 
90
	"linen",            0xFAF0E6,
26
	"lightpink",        0xFFB6C1, "lightsalmon",      0xFFA07A,	"lightseagreen",    0x20B2AA, "lightskyblue",     0x87CEFA,
91
	"magenta",          0xFF00FF,
-
 
92
	"maroon",           0x800000,
-
 
93
	"mediumaquamarine", 0x66CDAA,
-
 
94
	"mediumblue",       0x0000CD,
27
	"lightslategray",   0x778899, "lightsteelblue",   0xB0C4DE,	"lightyellow",      0xFFFFE0, "lime",             0x00FF00,
95
	"mediumorchid",     0xBA55D3,
-
 
96
	"mediumpurple",     0x9370DB,
-
 
97
	"mediumseagreen",   0x3CB371,
28
	"limegreen",        0x32CD32, "linen",            0xFAF0E6,	"magenta",          0xFF00FF, "maroon",           0x800000,
98
	"mediumslateblue",  0x7B68EE,
-
 
99
	"mediumspringgreen",0x00FA9A,
-
 
100
	"mediumturquoise",0x48D1CC,
-
 
101
	"mediumvioletred",0xC71585,
-
 
102
	"midnightblue",  0x191970,
29
	"mediumaquamarine", 0x66CDAA, "mediumblue",       0x0000CD,	"mediumorchid",     0xBA55D3, "mediumpurple",     0x9370DB,
103
	"mintcream",         0xF5FFFA,
-
 
104
	"mistyrose",         0xFFE4E1,
30
	"mediumseagreen",   0x3CB371, "mediumslateblue",  0x7B68EE,	"mediumspringgreen",0x00FA9A, "mediumturquoise",  0x48D1CC,
105
	"moccasin",     0xFFE4B5,
-
 
106
	"navajowhite",         0xFFDEAD,
-
 
107
	"navy",          0x000080,
-
 
108
	"oldlace",         0xFDF5E6,
-
 
109
	"olive",         0x808000,
-
 
110
	"olivedrab",         0x6B8E23,
31
	"mediumvioletred",  0xC71585, "midnightblue",     0x191970,	"mintcream",        0xF5FFFA, "mistyrose",        0xFFE4E1,
111
	"orange",         0xFFA500,
-
 
112
	"orangered",         0xFF4500,
-
 
113
	"orchid",         0xDA70D6,
32
	"moccasin",         0xFFE4B5, "navajowhite",      0xFFDEAD,	"navy",             0x000080, "oldlace",          0xFDF5E6,
114
	"palegoldenrod", 0xEEE8AA,
-
 
115
	"palegreen",         0x98FB98,
-
 
116
	"paleturquoise", 0xAFEEEE,
33
	"olive",            0x808000, "olivedrab",        0x6B8E23,	"orange",           0xFFA500, "orangered",        0xFF4500,
117
	"palevioletred", 0xDB7093,
-
 
118
	"papayawhip",         0xFFEFD5,
-
 
119
	"peachpuff",         0xFFDAB9,
-
 
120
	"peru",          0xCD853F,
-
 
121
	"pink",          0xFFC0CB,
34
	"orchid",           0xDA70D6, "palegoldenrod",    0xEEE8AA,	"palegreen",        0x98FB98, "paleturquoise",    0xAFEEEE,
122
	"plum",          0xDDA0DD,
-
 
123
	"powderblue",         0xB0E0E6,
-
 
124
	"purple",         0x800080,
-
 
125
	"red",         0xFF0000,
-
 
126
	"rosybrown",         0xBC8F8F,
35
	"palevioletred",    0xDB7093, "papayawhip",       0xFFEFD5,	"peachpuff",        0xFFDAB9, "peru",             0xCD853F,
127
	"royalblue",         0x4169E1,
-
 
128
	"saddlebrown",         0x8B4513,
-
 
129
	"salmon",         0xFA8072,
-
 
130
	"sandybrown",         0xF4A460,
36
	"pink",             0xFFC0CB, "plum",             0xDDA0DD,	"powderblue",       0xB0E0E6, "purple",           0x800080,
131
	"seagreen",         0x2E8B57,
-
 
132
	"seashell",         0xFFF5EE,
-
 
133
	"sienna",         0xA0522D,
-
 
134
	"silver",         0xC0C0C0,
37
	"red",              0xFF0000, "rosybrown",        0xBC8F8F,	"royalblue",        0x4169E1, "saddlebrown",      0x8B4513,
135
	"skyblue",         0x87CEEB,
-
 
136
	"slateblue",         0x6A5ACD,
-
 
137
	"slategray",         0x708090,
-
 
138
	"snow",          0xFFFAFA,
38
	"salmon",           0xFA8072, "sandybrown",       0xF4A460,	"seagreen",         0x2E8B57, "seashell",         0xFFF5EE,
139
	"springgreen",         0x00FF7F,
-
 
140
	"steelblue",         0x4682B4,
-
 
141
	"tan",         0xD2B48C,
39
	"sienna",           0xA0522D, "silver",           0xC0C0C0,	"skyblue",          0x87CEEB, "slateblue",        0x6A5ACD,
142
	"teal",          0x008080,
-
 
143
	"thistle",         0xD8BFD8,
40
	"slategray",        0x708090, "snow",             0xFFFAFA,	"springgreen",      0x00FF7F, "steelblue",        0x4682B4,
144
	"tomato",         0xFF6347,
-
 
145
	"turquoise",         0x40E0D0,
-
 
146
	"violet",         0xEE82EE,
-
 
147
	"wheat",         0xF5DEB3,
-
 
148
	"white",         0xFFFFFF,
-
 
149
	"whitesmoke",     0xF5F5F5,
41
	"tan",              0xD2B48C, "teal",             0x008080,	"thistle",          0xD8BFD8, "tomato",           0xFF6347,
150
	"yellow",         0xFFFF00,
-
 
Line 151... Line 42...
151
	"yellowgreen",    0x9ACD32,
42
	"turquoise",        0x40E0D0, "violet",           0xEE82EE,	"wheat",            0xF5DEB3, "white",            0xFFFFFF,
152
0};
43
	"whitesmoke",       0xF5F5F5, "yellow",           0xFFFF00,	"yellowgreen",      0x9ACD32, 0};
153
 
44
 
154
dword StrToCol(char* htmlcolor)
-
 
155
{
45
dword GetColor(char* color_str)
156
	dword j=1,
46
{
157
		color=0,
-
 
158
		textlen=0;
-
 
159
	char ch=0x00;
-
 
160
 
-
 
Line -... Line 47...
-
 
47
	int ii;
-
 
48
	dword textlen=0;
-
 
49
	dword color=0;
-
 
50
 
161
	if (ESBYTE[htmlcolor]<>'#') return text_colors.get(0);
51
	strlwr(color_str);
162
 
52
	if (ESBYTE[color_str] == '#') 
163
	textlen = strlen(htmlcolor);
53
	{
164
 
54
		textlen = strlen(color_str);
165
	if (textlen==7) || (textlen==4)
55
		if (textlen==7) || (textlen==4)
166
	{
56
		{
167
		FOR (;  j
57
			FOR (ii=1;  ii
168
		{
58
			{
169
			ch=ESBYTE[htmlcolor+j];
59
				BL = ESBYTE[color_str+ii];
170
			IF ((ch>='0') && (ch<='9')) ch -= '0';
60
				IF ((BL>='0') && (BL<='9')) BL -= '0';
171
			IF ((ch>='A') && (ch<='F')) ch -= 'A'-10;
61
				//IF ((BL>='A') && (BL<='F')) BL -= 'A'-10;
172
			IF ((ch>='a') && (ch<='f')) ch -= 'a'-10;
62
				IF ((BL>='a') && (BL<='f')) BL -= 'a'-10;
173
			color = color*0x10 + ch;
63
				color = color*0x10 + BL;
174
			if (textlen==4) color = color*0x10 + ch; //#abc ->> #aabbcc (ñëàâà âèêèïåäèè!!1)
-
 
175
		}
-
 
176
		return color;
64
				if (textlen==4) color = color*0x10 + BL; //#abc ->> #aabbcc
177
	}
-
 
178
 
-
 
179
	return text_colors.get(0);
-
 
180
}
-
 
181
 
-
 
182
dword GetColor(char* color_str)
-
 
183
{
-
 
184
	int ii;
65
			}
-
 
66
			return color;
185
 
67
		}
186
	if (ESBYTE[color_str] == '#')
68
	}	
187
		return StrToCol(color_str);
69
	else
-
 
70
	{
-
 
71
		for (ii=0; color_specs[ii].name!=0; ii++)
188
	else
72
		{
189
		for (ii=0; color_specs[ii].name!=0; ii++)
-
 
190
		{
73
			if (streq(color_str, color_specs[ii].name)) 
191
			if (!strcmpi(color_str, color_specs[ii].name)) return color_specs[ii].rgb;
74
				return color_specs[ii].rgb;