Mercurial > hg > xemacs-beta
comparison src/objects-msw.c @ 412:697ef44129c6 r21-2-14
Import from CVS: tag r21-2-14
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:20:41 +0200 |
parents | 501cfd01ee6d |
children | 11054d720c21 |
comparison
equal
deleted
inserted
replaced
411:12e008d41344 | 412:697ef44129c6 |
---|---|
47 | 47 |
48 #include "buffer.h" | 48 #include "buffer.h" |
49 #include "device.h" | 49 #include "device.h" |
50 #include "insdel.h" | 50 #include "insdel.h" |
51 | 51 |
52 #if defined(__CYGWIN32__) || defined(__MINGW32__) | |
53 #define stricmp strcasecmp | |
54 #define FONTENUMPROC FONTENUMEXPROC | |
55 #define ntmTm ntmentm | |
56 #endif | |
57 | |
52 typedef struct colormap_t | 58 typedef struct colormap_t |
53 { | 59 { |
54 const char *name; | 60 CONST char *name; |
55 COLORREF colorref; | 61 CONST COLORREF colorref; |
56 } colormap_t; | 62 } colormap_t; |
57 | 63 |
58 /* Colors from X11R6 "XConsortium: rgb.txt,v 10.41 94/02/20 18:39:36 rws Exp" */ | 64 /* Colors from X11R6 "XConsortium: rgb.txt,v 10.41 94/02/20 18:39:36 rws Exp" */ |
59 /* MSWindows tends to round up the numbers in it's palette, ie where X uses | 65 static CONST colormap_t mswindows_X_color_map[] = |
60 * 127, MSWindows uses 128. Colors commented as "Adjusted" are tweaked to | 66 { |
61 * match the Windows standard palette to increase the likelyhood of | 67 {"snow" , PALETTERGB (255, 250, 250) }, |
62 * mswindows_color_to_string() finding a named match. | 68 {"GhostWhite" , PALETTERGB (248, 248, 255) }, |
63 */ | 69 {"WhiteSmoke" , PALETTERGB (245, 245, 245) }, |
64 static const colormap_t mswindows_X_color_map[] = | 70 {"gainsboro" , PALETTERGB (220, 220, 220) }, |
65 { | 71 {"FloralWhite" , PALETTERGB (255, 250, 240) }, |
66 {"white" , PALETTERGB (255, 255, 255) }, | 72 {"OldLace" , PALETTERGB (253, 245, 230) }, |
67 {"black" , PALETTERGB (0, 0, 0) }, | 73 {"linen" , PALETTERGB (250, 240, 230) }, |
68 {"snow" , PALETTERGB (255, 250, 250) }, | 74 {"AntiqueWhite" , PALETTERGB (250, 235, 215) }, |
69 {"GhostWhite" , PALETTERGB (248, 248, 255) }, | 75 {"PapayaWhip" , PALETTERGB (255, 239, 213) }, |
70 {"WhiteSmoke" , PALETTERGB (245, 245, 245) }, | 76 {"BlanchedAlmond" , PALETTERGB (255, 235, 205) }, |
71 {"gainsboro" , PALETTERGB (220, 220, 220) }, | 77 {"bisque" , PALETTERGB (255, 228, 196) }, |
72 {"FloralWhite" , PALETTERGB (255, 250, 240) }, | 78 {"PeachPuff" , PALETTERGB (255, 218, 185) }, |
73 {"OldLace" , PALETTERGB (253, 245, 230) }, | 79 {"NavajoWhite" , PALETTERGB (255, 222, 173) }, |
74 {"linen" , PALETTERGB (250, 240, 230) }, | 80 {"moccasin" , PALETTERGB (255, 228, 181) }, |
75 {"AntiqueWhite" , PALETTERGB (250, 235, 215) }, | 81 {"cornsilk" , PALETTERGB (255, 248, 220) }, |
76 {"PapayaWhip" , PALETTERGB (255, 239, 213) }, | 82 {"ivory" , PALETTERGB (255, 255, 240) }, |
77 {"BlanchedAlmond" , PALETTERGB (255, 235, 205) }, | 83 {"LemonChiffon" , PALETTERGB (255, 250, 205) }, |
78 {"bisque" , PALETTERGB (255, 228, 196) }, | 84 {"seashell" , PALETTERGB (255, 245, 238) }, |
79 {"PeachPuff" , PALETTERGB (255, 218, 185) }, | 85 {"honeydew" , PALETTERGB (240, 255, 240) }, |
80 {"NavajoWhite" , PALETTERGB (255, 222, 173) }, | 86 {"MintCream" , PALETTERGB (245, 255, 250) }, |
81 {"moccasin" , PALETTERGB (255, 228, 181) }, | 87 {"azure" , PALETTERGB (240, 255, 255) }, |
82 {"cornsilk" , PALETTERGB (255, 248, 220) }, | 88 {"AliceBlue" , PALETTERGB (240, 248, 255) }, |
83 {"ivory" , PALETTERGB (255, 255, 240) }, | 89 {"lavender" , PALETTERGB (230, 230, 250) }, |
84 {"LemonChiffon" , PALETTERGB (255, 250, 205) }, | 90 {"LavenderBlush" , PALETTERGB (255, 240, 245) }, |
85 {"seashell" , PALETTERGB (255, 245, 238) }, | 91 {"MistyRose" , PALETTERGB (255, 228, 225) }, |
86 {"honeydew" , PALETTERGB (240, 255, 240) }, | 92 {"white" , PALETTERGB (255, 255, 255) }, |
87 {"MintCream" , PALETTERGB (245, 255, 250) }, | 93 {"black" , PALETTERGB (0, 0, 0) }, |
88 {"azure" , PALETTERGB (240, 255, 255) }, | 94 {"DarkSlateGray" , PALETTERGB (47, 79, 79) }, |
89 {"AliceBlue" , PALETTERGB (240, 248, 255) }, | 95 {"DarkSlateGrey" , PALETTERGB (47, 79, 79) }, |
90 {"lavender" , PALETTERGB (230, 230, 250) }, | 96 {"DimGray" , PALETTERGB (105, 105, 105) }, |
91 {"LavenderBlush" , PALETTERGB (255, 240, 245) }, | 97 {"DimGrey" , PALETTERGB (105, 105, 105) }, |
92 {"MistyRose" , PALETTERGB (255, 228, 225) }, | 98 {"SlateGray" , PALETTERGB (112, 128, 144) }, |
93 {"DarkSlateGray" , PALETTERGB (47, 79, 79) }, | 99 {"SlateGrey" , PALETTERGB (112, 128, 144) }, |
94 {"DarkSlateGrey" , PALETTERGB (47, 79, 79) }, | 100 {"LightSlateGray" , PALETTERGB (119, 136, 153) }, |
95 {"DimGray" , PALETTERGB (105, 105, 105) }, | 101 {"LightSlateGrey" , PALETTERGB (119, 136, 153) }, |
96 {"DimGrey" , PALETTERGB (105, 105, 105) }, | 102 {"gray" , PALETTERGB (190, 190, 190) }, |
97 {"SlateGray" , PALETTERGB (112, 128, 144) }, | 103 {"grey" , PALETTERGB (190, 190, 190) }, |
98 {"SlateGrey" , PALETTERGB (112, 128, 144) }, | 104 {"LightGrey" , PALETTERGB (211, 211, 211) }, |
99 {"LightSlateGray" , PALETTERGB (119, 136, 153) }, | 105 {"LightGray" , PALETTERGB (211, 211, 211) }, |
100 {"LightSlateGrey" , PALETTERGB (119, 136, 153) }, | 106 {"MidnightBlue" , PALETTERGB (25, 25, 112) }, |
101 {"gray" , PALETTERGB (190, 190, 190) }, | 107 {"navy" , PALETTERGB (0, 0, 128) }, |
102 {"grey" , PALETTERGB (190, 190, 190) }, | 108 {"NavyBlue" , PALETTERGB (0, 0, 128) }, |
103 {"LightGrey" , PALETTERGB (211, 211, 211) }, | 109 {"CornflowerBlue" , PALETTERGB (100, 149, 237) }, |
104 {"LightGray" , PALETTERGB (211, 211, 211) }, | 110 {"DarkSlateBlue" , PALETTERGB (72, 61, 139) }, |
105 {"MidnightBlue" , PALETTERGB (25, 25, 112) }, | 111 {"SlateBlue" , PALETTERGB (106, 90, 205) }, |
106 {"navy" , PALETTERGB (0, 0, 128) }, | 112 {"MediumSlateBlue" , PALETTERGB (123, 104, 238) }, |
107 {"NavyBlue" , PALETTERGB (0, 0, 128) }, | 113 {"LightSlateBlue" , PALETTERGB (132, 112, 255) }, |
108 {"CornflowerBlue" , PALETTERGB (100, 149, 237) }, | 114 {"MediumBlue" , PALETTERGB (0, 0, 205) }, |
109 {"DarkSlateBlue" , PALETTERGB (72, 61, 139) }, | 115 {"RoyalBlue" , PALETTERGB (65, 105, 225) }, |
110 {"SlateBlue" , PALETTERGB (106, 90, 205) }, | 116 {"blue" , PALETTERGB (0, 0, 255) }, |
111 {"MediumSlateBlue" , PALETTERGB (123, 104, 238) }, | 117 {"DodgerBlue" , PALETTERGB (30, 144, 255) }, |
112 {"LightSlateBlue" , PALETTERGB (132, 112, 255) }, | 118 {"DeepSkyBlue" , PALETTERGB (0, 191, 255) }, |
113 {"MediumBlue" , PALETTERGB (0, 0, 205) }, | 119 {"SkyBlue" , PALETTERGB (135, 206, 235) }, |
114 {"RoyalBlue" , PALETTERGB (65, 105, 225) }, | 120 {"LightSkyBlue" , PALETTERGB (135, 206, 250) }, |
115 {"blue" , PALETTERGB (0, 0, 255) }, | 121 {"SteelBlue" , PALETTERGB (70, 130, 180) }, |
116 {"DodgerBlue" , PALETTERGB (30, 144, 255) }, | 122 {"LightSteelBlue" , PALETTERGB (176, 196, 222) }, |
117 {"DeepSkyBlue" , PALETTERGB (0, 191, 255) }, | 123 {"LightBlue" , PALETTERGB (173, 216, 230) }, |
118 {"SkyBlue" , PALETTERGB (135, 206, 235) }, | 124 {"PowderBlue" , PALETTERGB (176, 224, 230) }, |
119 {"LightSkyBlue" , PALETTERGB (135, 206, 250) }, | 125 {"PaleTurquoise" , PALETTERGB (175, 238, 238) }, |
120 {"SteelBlue" , PALETTERGB (70, 130, 180) }, | 126 {"DarkTurquoise" , PALETTERGB (0, 206, 209) }, |
121 {"LightSteelBlue" , PALETTERGB (176, 196, 222) }, | 127 {"MediumTurquoise" , PALETTERGB (72, 209, 204) }, |
122 {"LightBlue" , PALETTERGB (173, 216, 230) }, | 128 {"turquoise" , PALETTERGB (64, 224, 208) }, |
123 {"PowderBlue" , PALETTERGB (176, 224, 230) }, | 129 {"cyan" , PALETTERGB (0, 255, 255) }, |
124 {"PaleTurquoise" , PALETTERGB (175, 238, 238) }, | 130 {"LightCyan" , PALETTERGB (224, 255, 255) }, |
125 {"DarkTurquoise" , PALETTERGB (0, 206, 209) }, | 131 {"CadetBlue" , PALETTERGB (95, 158, 160) }, |
126 {"MediumTurquoise" , PALETTERGB (72, 209, 204) }, | 132 {"MediumAquamarine" , PALETTERGB (102, 205, 170) }, |
127 {"turquoise" , PALETTERGB (64, 224, 208) }, | 133 {"aquamarine" , PALETTERGB (127, 255, 212) }, |
128 {"cyan" , PALETTERGB (0, 255, 255) }, | 134 {"DarkGreen" , PALETTERGB (0, 100, 0) }, |
129 {"LightCyan" , PALETTERGB (224, 255, 255) }, | 135 {"DarkOliveGreen" , PALETTERGB (85, 107, 47) }, |
130 {"CadetBlue" , PALETTERGB (95, 158, 160) }, | 136 {"DarkSeaGreen" , PALETTERGB (143, 188, 143) }, |
131 {"MediumAquamarine" , PALETTERGB (102, 205, 170) }, | 137 {"SeaGreen" , PALETTERGB (46, 139, 87) }, |
132 {"aquamarine" , PALETTERGB (127, 255, 212) }, | 138 {"MediumSeaGreen" , PALETTERGB (60, 179, 113) }, |
133 {"DarkGreen" , PALETTERGB (0, 128, 0) }, /* Adjusted */ | 139 {"LightSeaGreen" , PALETTERGB (32, 178, 170) }, |
134 {"DarkOliveGreen" , PALETTERGB (85, 107, 47) }, | 140 {"PaleGreen" , PALETTERGB (152, 251, 152) }, |
135 {"DarkSeaGreen" , PALETTERGB (143, 188, 143) }, | 141 {"SpringGreen" , PALETTERGB (0, 255, 127) }, |
136 {"SeaGreen" , PALETTERGB (46, 139, 87) }, | 142 {"LawnGreen" , PALETTERGB (124, 252, 0) }, |
137 {"MediumSeaGreen" , PALETTERGB (60, 179, 113) }, | 143 {"green" , PALETTERGB (0, 255, 0) }, |
138 {"LightSeaGreen" , PALETTERGB (32, 178, 170) }, | 144 {"chartreuse" , PALETTERGB (127, 255, 0) }, |
139 {"PaleGreen" , PALETTERGB (152, 251, 152) }, | 145 {"MediumSpringGreen" , PALETTERGB (0, 250, 154) }, |
140 {"SpringGreen" , PALETTERGB (0, 255, 127) }, | 146 {"GreenYellow" , PALETTERGB (173, 255, 47) }, |
141 {"LawnGreen" , PALETTERGB (124, 252, 0) }, | 147 {"LimeGreen" , PALETTERGB (50, 205, 50) }, |
142 {"green" , PALETTERGB (0, 255, 0) }, | 148 {"YellowGreen" , PALETTERGB (154, 205, 50) }, |
143 {"chartreuse" , PALETTERGB (127, 255, 0) }, | 149 {"ForestGreen" , PALETTERGB (34, 139, 34) }, |
144 {"MediumSpringGreen" , PALETTERGB (0, 250, 154) }, | 150 {"OliveDrab" , PALETTERGB (107, 142, 35) }, |
145 {"GreenYellow" , PALETTERGB (173, 255, 47) }, | 151 {"DarkKhaki" , PALETTERGB (189, 183, 107) }, |
146 {"LimeGreen" , PALETTERGB (50, 205, 50) }, | 152 {"khaki" , PALETTERGB (240, 230, 140) }, |
147 {"YellowGreen" , PALETTERGB (154, 205, 50) }, | 153 {"PaleGoldenrod" , PALETTERGB (238, 232, 170) }, |
148 {"ForestGreen" , PALETTERGB (34, 139, 34) }, | 154 {"LightGoldenrodYellow" , PALETTERGB (250, 250, 210) }, |
149 {"OliveDrab" , PALETTERGB (107, 142, 35) }, | 155 {"LightYellow" , PALETTERGB (255, 255, 224) }, |
150 {"DarkKhaki" , PALETTERGB (189, 183, 107) }, | 156 {"yellow" , PALETTERGB (255, 255, 0) }, |
151 {"khaki" , PALETTERGB (240, 230, 140) }, | 157 {"gold" , PALETTERGB (255, 215, 0) }, |
152 {"PaleGoldenrod" , PALETTERGB (238, 232, 170) }, | 158 {"LightGoldenrod" , PALETTERGB (238, 221, 130) }, |
153 {"LightGoldenrodYellow", PALETTERGB (250, 250, 210) }, | 159 {"goldenrod" , PALETTERGB (218, 165, 32) }, |
154 {"LightYellow" , PALETTERGB (255, 255, 224) }, | 160 {"DarkGoldenrod" , PALETTERGB (184, 134, 11) }, |
155 {"LightYellow" , PALETTERGB (255, 255, 225) }, /* Adjusted */ | 161 {"RosyBrown" , PALETTERGB (188, 143, 143) }, |
156 {"yellow" , PALETTERGB (255, 255, 0) }, | 162 {"IndianRed" , PALETTERGB (205, 92, 92) }, |
157 {"gold" , PALETTERGB (255, 215, 0) }, | 163 {"SaddleBrown" , PALETTERGB (139, 69, 19) }, |
158 {"LightGoldenrod" , PALETTERGB (238, 221, 130) }, | 164 {"sienna" , PALETTERGB (160, 82, 45) }, |
159 {"goldenrod" , PALETTERGB (218, 165, 32) }, | 165 {"peru" , PALETTERGB (205, 133, 63) }, |
160 {"DarkGoldenrod" , PALETTERGB (184, 134, 11) }, | 166 {"burlywood" , PALETTERGB (222, 184, 135) }, |
161 {"RosyBrown" , PALETTERGB (188, 143, 143) }, | 167 {"beige" , PALETTERGB (245, 245, 220) }, |
162 {"IndianRed" , PALETTERGB (205, 92, 92) }, | 168 {"wheat" , PALETTERGB (245, 222, 179) }, |
163 {"SaddleBrown" , PALETTERGB (139, 69, 19) }, | 169 {"SandyBrown" , PALETTERGB (244, 164, 96) }, |
164 {"sienna" , PALETTERGB (160, 82, 45) }, | 170 {"tan" , PALETTERGB (210, 180, 140) }, |
165 {"peru" , PALETTERGB (205, 133, 63) }, | 171 {"chocolate" , PALETTERGB (210, 105, 30) }, |
166 {"burlywood" , PALETTERGB (222, 184, 135) }, | 172 {"firebrick" , PALETTERGB (178, 34, 34) }, |
167 {"beige" , PALETTERGB (245, 245, 220) }, | 173 {"brown" , PALETTERGB (165, 42, 42) }, |
168 {"wheat" , PALETTERGB (245, 222, 179) }, | 174 {"DarkSalmon" , PALETTERGB (233, 150, 122) }, |
169 {"SandyBrown" , PALETTERGB (244, 164, 96) }, | 175 {"salmon" , PALETTERGB (250, 128, 114) }, |
170 {"tan" , PALETTERGB (210, 180, 140) }, | 176 {"LightSalmon" , PALETTERGB (255, 160, 122) }, |
171 {"chocolate" , PALETTERGB (210, 105, 30) }, | 177 {"orange" , PALETTERGB (255, 165, 0) }, |
172 {"firebrick" , PALETTERGB (178, 34, 34) }, | 178 {"DarkOrange" , PALETTERGB (255, 140, 0) }, |
173 {"brown" , PALETTERGB (165, 42, 42) }, | 179 {"coral" , PALETTERGB (255, 127, 80) }, |
174 {"DarkSalmon" , PALETTERGB (233, 150, 122) }, | 180 {"LightCoral" , PALETTERGB (240, 128, 128) }, |
175 {"salmon" , PALETTERGB (250, 128, 114) }, | 181 {"tomato" , PALETTERGB (255, 99, 71) }, |
176 {"LightSalmon" , PALETTERGB (255, 160, 122) }, | 182 {"OrangeRed" , PALETTERGB (255, 69, 0) }, |
177 {"orange" , PALETTERGB (255, 165, 0) }, | 183 {"red" , PALETTERGB (255, 0, 0) }, |
178 {"DarkOrange" , PALETTERGB (255, 140, 0) }, | 184 {"HotPink" , PALETTERGB (255, 105, 180) }, |
179 {"coral" , PALETTERGB (255, 127, 80) }, | 185 {"DeepPink" , PALETTERGB (255, 20, 147) }, |
180 {"LightCoral" , PALETTERGB (240, 128, 128) }, | 186 {"pink" , PALETTERGB (255, 192, 203) }, |
181 {"tomato" , PALETTERGB (255, 99, 71) }, | 187 {"LightPink" , PALETTERGB (255, 182, 193) }, |
182 {"OrangeRed" , PALETTERGB (255, 69, 0) }, | 188 {"PaleVioletRed" , PALETTERGB (219, 112, 147) }, |
183 {"red" , PALETTERGB (255, 0, 0) }, | 189 {"maroon" , PALETTERGB (176, 48, 96) }, |
184 {"HotPink" , PALETTERGB (255, 105, 180) }, | 190 {"MediumVioletRed" , PALETTERGB (199, 21, 133) }, |
185 {"DeepPink" , PALETTERGB (255, 20, 147) }, | 191 {"VioletRed" , PALETTERGB (208, 32, 144) }, |
186 {"pink" , PALETTERGB (255, 192, 203) }, | 192 {"magenta" , PALETTERGB (255, 0, 255) }, |
187 {"LightPink" , PALETTERGB (255, 182, 193) }, | 193 {"violet" , PALETTERGB (238, 130, 238) }, |
188 {"PaleVioletRed" , PALETTERGB (219, 112, 147) }, | 194 {"plum" , PALETTERGB (221, 160, 221) }, |
189 {"maroon" , PALETTERGB (176, 48, 96) }, | 195 {"orchid" , PALETTERGB (218, 112, 214) }, |
190 {"MediumVioletRed" , PALETTERGB (199, 21, 133) }, | 196 {"MediumOrchid" , PALETTERGB (186, 85, 211) }, |
191 {"VioletRed" , PALETTERGB (208, 32, 144) }, | 197 {"DarkOrchid" , PALETTERGB (153, 50, 204) }, |
192 {"magenta" , PALETTERGB (255, 0, 255) }, | 198 {"DarkViolet" , PALETTERGB (148, 0, 211) }, |
193 {"violet" , PALETTERGB (238, 130, 238) }, | 199 {"BlueViolet" , PALETTERGB (138, 43, 226) }, |
194 {"plum" , PALETTERGB (221, 160, 221) }, | 200 {"purple" , PALETTERGB (160, 32, 240) }, |
195 {"orchid" , PALETTERGB (218, 112, 214) }, | 201 {"MediumPurple" , PALETTERGB (147, 112, 219) }, |
196 {"MediumOrchid" , PALETTERGB (186, 85, 211) }, | 202 {"thistle" , PALETTERGB (216, 191, 216) }, |
197 {"DarkOrchid" , PALETTERGB (153, 50, 204) }, | 203 {"snow1" , PALETTERGB (255, 250, 250) }, |
198 {"DarkViolet" , PALETTERGB (148, 0, 211) }, | 204 {"snow2" , PALETTERGB (238, 233, 233) }, |
199 {"BlueViolet" , PALETTERGB (138, 43, 226) }, | 205 {"snow3" , PALETTERGB (205, 201, 201) }, |
200 {"purple" , PALETTERGB (160, 32, 240) }, | 206 {"snow4" , PALETTERGB (139, 137, 137) }, |
201 {"MediumPurple" , PALETTERGB (147, 112, 219) }, | 207 {"seashell1" , PALETTERGB (255, 245, 238) }, |
202 {"thistle" , PALETTERGB (216, 191, 216) }, | 208 {"seashell2" , PALETTERGB (238, 229, 222) }, |
203 {"snow1" , PALETTERGB (255, 250, 250) }, | 209 {"seashell3" , PALETTERGB (205, 197, 191) }, |
204 {"snow2" , PALETTERGB (238, 233, 233) }, | 210 {"seashell4" , PALETTERGB (139, 134, 130) }, |
205 {"snow3" , PALETTERGB (205, 201, 201) }, | 211 {"AntiqueWhite1" , PALETTERGB (255, 239, 219) }, |
206 {"snow4" , PALETTERGB (139, 137, 137) }, | 212 {"AntiqueWhite2" , PALETTERGB (238, 223, 204) }, |
207 {"seashell1" , PALETTERGB (255, 245, 238) }, | 213 {"AntiqueWhite3" , PALETTERGB (205, 192, 176) }, |
208 {"seashell2" , PALETTERGB (238, 229, 222) }, | 214 {"AntiqueWhite4" , PALETTERGB (139, 131, 120) }, |
209 {"seashell3" , PALETTERGB (205, 197, 191) }, | 215 {"bisque1" , PALETTERGB (255, 228, 196) }, |
210 {"seashell4" , PALETTERGB (139, 134, 130) }, | 216 {"bisque2" , PALETTERGB (238, 213, 183) }, |
211 {"AntiqueWhite1" , PALETTERGB (255, 239, 219) }, | 217 {"bisque3" , PALETTERGB (205, 183, 158) }, |
212 {"AntiqueWhite2" , PALETTERGB (238, 223, 204) }, | 218 {"bisque4" , PALETTERGB (139, 125, 107) }, |
213 {"AntiqueWhite3" , PALETTERGB (205, 192, 176) }, | 219 {"PeachPuff1" , PALETTERGB (255, 218, 185) }, |
214 {"AntiqueWhite4" , PALETTERGB (139, 131, 120) }, | 220 {"PeachPuff2" , PALETTERGB (238, 203, 173) }, |
215 {"bisque1" , PALETTERGB (255, 228, 196) }, | 221 {"PeachPuff3" , PALETTERGB (205, 175, 149) }, |
216 {"bisque2" , PALETTERGB (238, 213, 183) }, | 222 {"PeachPuff4" , PALETTERGB (139, 119, 101) }, |
217 {"bisque3" , PALETTERGB (205, 183, 158) }, | 223 {"NavajoWhite1" , PALETTERGB (255, 222, 173) }, |
218 {"bisque4" , PALETTERGB (139, 125, 107) }, | 224 {"NavajoWhite2" , PALETTERGB (238, 207, 161) }, |
219 {"PeachPuff1" , PALETTERGB (255, 218, 185) }, | 225 {"NavajoWhite3" , PALETTERGB (205, 179, 139) }, |
220 {"PeachPuff2" , PALETTERGB (238, 203, 173) }, | 226 {"NavajoWhite4" , PALETTERGB (139, 121, 94) }, |
221 {"PeachPuff3" , PALETTERGB (205, 175, 149) }, | 227 {"LemonChiffon1" , PALETTERGB (255, 250, 205) }, |
222 {"PeachPuff4" , PALETTERGB (139, 119, 101) }, | 228 {"LemonChiffon2" , PALETTERGB (238, 233, 191) }, |
223 {"NavajoWhite1" , PALETTERGB (255, 222, 173) }, | 229 {"LemonChiffon3" , PALETTERGB (205, 201, 165) }, |
224 {"NavajoWhite2" , PALETTERGB (238, 207, 161) }, | 230 {"LemonChiffon4" , PALETTERGB (139, 137, 112) }, |
225 {"NavajoWhite3" , PALETTERGB (205, 179, 139) }, | 231 {"cornsilk1" , PALETTERGB (255, 248, 220) }, |
226 {"NavajoWhite4" , PALETTERGB (139, 121, 94) }, | 232 {"cornsilk2" , PALETTERGB (238, 232, 205) }, |
227 {"LemonChiffon1" , PALETTERGB (255, 250, 205) }, | 233 {"cornsilk3" , PALETTERGB (205, 200, 177) }, |
228 {"LemonChiffon2" , PALETTERGB (238, 233, 191) }, | 234 {"cornsilk4" , PALETTERGB (139, 136, 120) }, |
229 {"LemonChiffon3" , PALETTERGB (205, 201, 165) }, | 235 {"ivory1" , PALETTERGB (255, 255, 240) }, |
230 {"LemonChiffon4" , PALETTERGB (139, 137, 112) }, | 236 {"ivory2" , PALETTERGB (238, 238, 224) }, |
231 {"cornsilk1" , PALETTERGB (255, 248, 220) }, | 237 {"ivory3" , PALETTERGB (205, 205, 193) }, |
232 {"cornsilk2" , PALETTERGB (238, 232, 205) }, | 238 {"ivory4" , PALETTERGB (139, 139, 131) }, |
233 {"cornsilk3" , PALETTERGB (205, 200, 177) }, | 239 {"honeydew1" , PALETTERGB (240, 255, 240) }, |
234 {"cornsilk4" , PALETTERGB (139, 136, 120) }, | 240 {"honeydew2" , PALETTERGB (224, 238, 224) }, |
235 {"ivory1" , PALETTERGB (255, 255, 240) }, | 241 {"honeydew3" , PALETTERGB (193, 205, 193) }, |
236 {"ivory2" , PALETTERGB (240, 240, 208) }, /* Adjusted */ | 242 {"honeydew4" , PALETTERGB (131, 139, 131) }, |
237 {"ivory3" , PALETTERGB (205, 205, 193) }, | 243 {"LavenderBlush1" , PALETTERGB (255, 240, 245) }, |
238 {"ivory4" , PALETTERGB (139, 139, 131) }, | 244 {"LavenderBlush2" , PALETTERGB (238, 224, 229) }, |
239 {"honeydew1" , PALETTERGB (240, 255, 240) }, | 245 {"LavenderBlush3" , PALETTERGB (205, 193, 197) }, |
240 {"honeydew2" , PALETTERGB (224, 238, 224) }, | 246 {"LavenderBlush4" , PALETTERGB (139, 131, 134) }, |
241 {"honeydew3" , PALETTERGB (193, 205, 193) }, | 247 {"MistyRose1" , PALETTERGB (255, 228, 225) }, |
242 {"honeydew4" , PALETTERGB (131, 139, 131) }, | 248 {"MistyRose2" , PALETTERGB (238, 213, 210) }, |
243 {"LavenderBlush1" , PALETTERGB (255, 240, 245) }, | 249 {"MistyRose3" , PALETTERGB (205, 183, 181) }, |
244 {"LavenderBlush2" , PALETTERGB (238, 224, 229) }, | 250 {"MistyRose4" , PALETTERGB (139, 125, 123) }, |
245 {"LavenderBlush3" , PALETTERGB (205, 193, 197) }, | 251 {"azure1" , PALETTERGB (240, 255, 255) }, |
246 {"LavenderBlush4" , PALETTERGB (139, 131, 134) }, | 252 {"azure2" , PALETTERGB (224, 238, 238) }, |
247 {"MistyRose1" , PALETTERGB (255, 228, 225) }, | 253 {"azure3" , PALETTERGB (193, 205, 205) }, |
248 {"MistyRose2" , PALETTERGB (238, 213, 210) }, | 254 {"azure4" , PALETTERGB (131, 139, 139) }, |
249 {"MistyRose3" , PALETTERGB (205, 183, 181) }, | 255 {"SlateBlue1" , PALETTERGB (131, 111, 255) }, |
250 {"MistyRose4" , PALETTERGB (139, 125, 123) }, | 256 {"SlateBlue2" , PALETTERGB (122, 103, 238) }, |
251 {"azure1" , PALETTERGB (240, 255, 255) }, | 257 {"SlateBlue3" , PALETTERGB (105, 89, 205) }, |
252 {"azure2" , PALETTERGB (224, 238, 238) }, | 258 {"SlateBlue4" , PALETTERGB (71, 60, 139) }, |
253 {"azure3" , PALETTERGB (193, 205, 205) }, | 259 {"RoyalBlue1" , PALETTERGB (72, 118, 255) }, |
254 {"azure4" , PALETTERGB (131, 139, 139) }, | 260 {"RoyalBlue2" , PALETTERGB (67, 110, 238) }, |
255 {"SlateBlue1" , PALETTERGB (131, 111, 255) }, | 261 {"RoyalBlue3" , PALETTERGB (58, 95, 205) }, |
256 {"SlateBlue2" , PALETTERGB (122, 103, 238) }, | 262 {"RoyalBlue4" , PALETTERGB (39, 64, 139) }, |
257 {"SlateBlue3" , PALETTERGB (105, 89, 205) }, | 263 {"blue1" , PALETTERGB (0, 0, 255) }, |
258 {"SlateBlue4" , PALETTERGB (71, 60, 139) }, | 264 {"blue2" , PALETTERGB (0, 0, 238) }, |
259 {"RoyalBlue1" , PALETTERGB (72, 118, 255) }, | 265 {"blue3" , PALETTERGB (0, 0, 205) }, |
260 {"RoyalBlue2" , PALETTERGB (67, 110, 238) }, | 266 {"blue4" , PALETTERGB (0, 0, 139) }, |
261 {"RoyalBlue3" , PALETTERGB (58, 95, 205) }, | 267 {"DodgerBlue1" , PALETTERGB (30, 144, 255) }, |
262 {"RoyalBlue4" , PALETTERGB (39, 64, 139) }, | 268 {"DodgerBlue2" , PALETTERGB (28, 134, 238) }, |
263 {"blue1" , PALETTERGB (0, 0, 255) }, | 269 {"DodgerBlue3" , PALETTERGB (24, 116, 205) }, |
264 {"blue2" , PALETTERGB (0, 0, 238) }, | 270 {"DodgerBlue4" , PALETTERGB (16, 78, 139) }, |
265 {"blue3" , PALETTERGB (0, 0, 205) }, | 271 {"SteelBlue1" , PALETTERGB (99, 184, 255) }, |
266 {"blue4" , PALETTERGB (0, 0, 139) }, | 272 {"SteelBlue2" , PALETTERGB (92, 172, 238) }, |
267 {"DodgerBlue1" , PALETTERGB (30, 144, 255) }, | 273 {"SteelBlue3" , PALETTERGB (79, 148, 205) }, |
268 {"DodgerBlue2" , PALETTERGB (28, 134, 238) }, | 274 {"SteelBlue4" , PALETTERGB (54, 100, 139) }, |
269 {"DodgerBlue3" , PALETTERGB (24, 116, 205) }, | 275 {"DeepSkyBlue1" , PALETTERGB (0, 191, 255) }, |
270 {"DodgerBlue4" , PALETTERGB (16, 78, 139) }, | 276 {"DeepSkyBlue2" , PALETTERGB (0, 178, 238) }, |
271 {"SteelBlue1" , PALETTERGB (99, 184, 255) }, | 277 {"DeepSkyBlue3" , PALETTERGB (0, 154, 205) }, |
272 {"SteelBlue2" , PALETTERGB (92, 172, 238) }, | 278 {"DeepSkyBlue4" , PALETTERGB (0, 104, 139) }, |
273 {"SteelBlue3" , PALETTERGB (79, 148, 205) }, | 279 {"SkyBlue1" , PALETTERGB (135, 206, 255) }, |
274 {"SteelBlue4" , PALETTERGB (54, 100, 139) }, | 280 {"SkyBlue2" , PALETTERGB (126, 192, 238) }, |
275 {"DeepSkyBlue1" , PALETTERGB (0, 191, 255) }, | 281 {"SkyBlue3" , PALETTERGB (108, 166, 205) }, |
276 {"DeepSkyBlue2" , PALETTERGB (0, 178, 238) }, | 282 {"SkyBlue4" , PALETTERGB (74, 112, 139) }, |
277 {"DeepSkyBlue3" , PALETTERGB (0, 154, 205) }, | 283 {"LightSkyBlue1" , PALETTERGB (176, 226, 255) }, |
278 {"DeepSkyBlue4" , PALETTERGB (0, 104, 139) }, | 284 {"LightSkyBlue2" , PALETTERGB (164, 211, 238) }, |
279 {"SkyBlue1" , PALETTERGB (135, 206, 255) }, | 285 {"LightSkyBlue3" , PALETTERGB (141, 182, 205) }, |
280 {"SkyBlue2" , PALETTERGB (126, 192, 238) }, | 286 {"LightSkyBlue4" , PALETTERGB (96, 123, 139) }, |
281 {"SkyBlue3" , PALETTERGB (108, 166, 205) }, | 287 {"SlateGray1" , PALETTERGB (198, 226, 255) }, |
282 {"SkyBlue4" , PALETTERGB (74, 112, 139) }, | 288 {"SlateGray2" , PALETTERGB (185, 211, 238) }, |
283 {"LightSkyBlue1" , PALETTERGB (176, 226, 255) }, | 289 {"SlateGray3" , PALETTERGB (159, 182, 205) }, |
284 {"LightSkyBlue2" , PALETTERGB (164, 211, 238) }, | 290 {"SlateGray4" , PALETTERGB (108, 123, 139) }, |
285 {"LightSkyBlue3" , PALETTERGB (141, 182, 205) }, | 291 {"LightSteelBlue1" , PALETTERGB (202, 225, 255) }, |
286 {"LightSkyBlue4" , PALETTERGB (96, 123, 139) }, | 292 {"LightSteelBlue2" , PALETTERGB (188, 210, 238) }, |
287 {"SlateGray1" , PALETTERGB (198, 226, 255) }, | 293 {"LightSteelBlue3" , PALETTERGB (162, 181, 205) }, |
288 {"SlateGray2" , PALETTERGB (185, 211, 238) }, | 294 {"LightSteelBlue4" , PALETTERGB (110, 123, 139) }, |
289 {"SlateGray3" , PALETTERGB (159, 182, 205) }, | 295 {"LightBlue1" , PALETTERGB (191, 239, 255) }, |
290 {"SlateGray4" , PALETTERGB (108, 123, 139) }, | 296 {"LightBlue2" , PALETTERGB (178, 223, 238) }, |
291 {"LightSteelBlue1" , PALETTERGB (202, 225, 255) }, | 297 {"LightBlue3" , PALETTERGB (154, 192, 205) }, |
292 {"LightSteelBlue2" , PALETTERGB (188, 210, 238) }, | 298 {"LightBlue4" , PALETTERGB (104, 131, 139) }, |
293 {"LightSteelBlue3" , PALETTERGB (162, 181, 205) }, | 299 {"LightCyan1" , PALETTERGB (224, 255, 255) }, |
294 {"LightSteelBlue4" , PALETTERGB (110, 123, 139) }, | 300 {"LightCyan2" , PALETTERGB (209, 238, 238) }, |
295 {"LightBlue1" , PALETTERGB (191, 239, 255) }, | 301 {"LightCyan3" , PALETTERGB (180, 205, 205) }, |
296 {"LightBlue2" , PALETTERGB (178, 223, 238) }, | 302 {"LightCyan4" , PALETTERGB (122, 139, 139) }, |
297 {"LightBlue3" , PALETTERGB (154, 192, 205) }, | 303 {"PaleTurquoise1" , PALETTERGB (187, 255, 255) }, |
298 {"LightBlue4" , PALETTERGB (104, 131, 139) }, | 304 {"PaleTurquoise2" , PALETTERGB (174, 238, 238) }, |
299 {"LightCyan1" , PALETTERGB (224, 255, 255) }, | 305 {"PaleTurquoise3" , PALETTERGB (150, 205, 205) }, |
300 {"LightCyan2" , PALETTERGB (209, 238, 238) }, | 306 {"PaleTurquoise4" , PALETTERGB (102, 139, 139) }, |
301 {"LightCyan3" , PALETTERGB (180, 205, 205) }, | 307 {"CadetBlue1" , PALETTERGB (152, 245, 255) }, |
302 {"LightCyan4" , PALETTERGB (122, 139, 139) }, | 308 {"CadetBlue2" , PALETTERGB (142, 229, 238) }, |
303 {"PaleTurquoise1" , PALETTERGB (187, 255, 255) }, | 309 {"CadetBlue3" , PALETTERGB (122, 197, 205) }, |
304 {"PaleTurquoise2" , PALETTERGB (174, 238, 238) }, | 310 {"CadetBlue4" , PALETTERGB (83, 134, 139) }, |
305 {"PaleTurquoise3" , PALETTERGB (150, 205, 205) }, | 311 {"turquoise1" , PALETTERGB (0, 245, 255) }, |
306 {"PaleTurquoise4" , PALETTERGB (102, 139, 139) }, | 312 {"turquoise2" , PALETTERGB (0, 229, 238) }, |
307 {"CadetBlue1" , PALETTERGB (152, 245, 255) }, | 313 {"turquoise3" , PALETTERGB (0, 197, 205) }, |
308 {"CadetBlue2" , PALETTERGB (144, 220, 240) }, /* Adjusted */ | 314 {"turquoise4" , PALETTERGB (0, 134, 139) }, |
309 {"CadetBlue3" , PALETTERGB (122, 197, 205) }, | 315 {"cyan1" , PALETTERGB (0, 255, 255) }, |
310 {"CadetBlue4" , PALETTERGB (83, 134, 139) }, | 316 {"cyan2" , PALETTERGB (0, 238, 238) }, |
311 {"turquoise1" , PALETTERGB (0, 245, 255) }, | 317 {"cyan3" , PALETTERGB (0, 205, 205) }, |
312 {"turquoise2" , PALETTERGB (0, 229, 238) }, | 318 {"cyan4" , PALETTERGB (0, 139, 139) }, |
313 {"turquoise3" , PALETTERGB (0, 197, 205) }, | 319 {"DarkSlateGray1" , PALETTERGB (151, 255, 255) }, |
314 {"turquoise4" , PALETTERGB (0, 134, 139) }, | 320 {"DarkSlateGray2" , PALETTERGB (141, 238, 238) }, |
315 {"cyan1" , PALETTERGB (0, 255, 255) }, | 321 {"DarkSlateGray3" , PALETTERGB (121, 205, 205) }, |
316 {"cyan2" , PALETTERGB (0, 238, 238) }, | 322 {"DarkSlateGray4" , PALETTERGB (82, 139, 139) }, |
317 {"cyan3" , PALETTERGB (0, 205, 205) }, | 323 {"aquamarine1" , PALETTERGB (127, 255, 212) }, |
318 {"cyan4" , PALETTERGB (0, 139, 139) }, | 324 {"aquamarine2" , PALETTERGB (118, 238, 198) }, |
319 {"DarkSlateGray1" , PALETTERGB (151, 255, 255) }, | 325 {"aquamarine3" , PALETTERGB (102, 205, 170) }, |
320 {"DarkSlateGray2" , PALETTERGB (141, 238, 238) }, | 326 {"aquamarine4" , PALETTERGB (69, 139, 116) }, |
321 {"DarkSlateGray3" , PALETTERGB (121, 205, 205) }, | 327 {"DarkSeaGreen1" , PALETTERGB (193, 255, 193) }, |
322 {"DarkSlateGray4" , PALETTERGB (82, 139, 139) }, | 328 {"DarkSeaGreen2" , PALETTERGB (180, 238, 180) }, |
323 {"aquamarine1" , PALETTERGB (127, 255, 212) }, | 329 {"DarkSeaGreen3" , PALETTERGB (155, 205, 155) }, |
324 {"aquamarine2" , PALETTERGB (118, 238, 198) }, | 330 {"DarkSeaGreen4" , PALETTERGB (105, 139, 105) }, |
325 {"aquamarine3" , PALETTERGB (102, 205, 170) }, | 331 {"SeaGreen1" , PALETTERGB (84, 255, 159) }, |
326 {"aquamarine4" , PALETTERGB (69, 139, 116) }, | 332 {"SeaGreen2" , PALETTERGB (78, 238, 148) }, |
327 {"DarkSeaGreen1" , PALETTERGB (193, 255, 193) }, | 333 {"SeaGreen3" , PALETTERGB (67, 205, 128) }, |
328 {"DarkSeaGreen2" , PALETTERGB (180, 238, 180) }, | 334 {"SeaGreen4" , PALETTERGB (46, 139, 87) }, |
329 {"DarkSeaGreen3" , PALETTERGB (155, 205, 155) }, | 335 {"PaleGreen1" , PALETTERGB (154, 255, 154) }, |
330 {"DarkSeaGreen4" , PALETTERGB (105, 139, 105) }, | 336 {"PaleGreen2" , PALETTERGB (144, 238, 144) }, |
331 {"SeaGreen1" , PALETTERGB (84, 255, 159) }, | 337 {"PaleGreen3" , PALETTERGB (124, 205, 124) }, |
332 {"SeaGreen2" , PALETTERGB (78, 238, 148) }, | 338 {"PaleGreen4" , PALETTERGB (84, 139, 84) }, |
333 {"SeaGreen3" , PALETTERGB (67, 205, 128) }, | 339 {"SpringGreen1" , PALETTERGB (0, 255, 127) }, |
334 {"SeaGreen4" , PALETTERGB (46, 139, 87) }, | 340 {"SpringGreen2" , PALETTERGB (0, 238, 118) }, |
335 {"PaleGreen1" , PALETTERGB (154, 255, 154) }, | 341 {"SpringGreen3" , PALETTERGB (0, 205, 102) }, |
336 {"PaleGreen2" , PALETTERGB (144, 238, 144) }, | 342 {"SpringGreen4" , PALETTERGB (0, 139, 69) }, |
337 {"PaleGreen3" , PALETTERGB (124, 205, 124) }, | 343 {"green1" , PALETTERGB (0, 255, 0) }, |
338 {"PaleGreen4" , PALETTERGB (84, 139, 84) }, | 344 {"green2" , PALETTERGB (0, 238, 0) }, |
339 {"SpringGreen1" , PALETTERGB (0, 255, 127) }, | 345 {"green3" , PALETTERGB (0, 205, 0) }, |
340 {"SpringGreen2" , PALETTERGB (0, 238, 118) }, | 346 {"green4" , PALETTERGB (0, 139, 0) }, |
341 {"SpringGreen3" , PALETTERGB (0, 205, 102) }, | 347 {"chartreuse1" , PALETTERGB (127, 255, 0) }, |
342 {"SpringGreen4" , PALETTERGB (0, 139, 69) }, | 348 {"chartreuse2" , PALETTERGB (118, 238, 0) }, |
343 {"green1" , PALETTERGB (0, 255, 0) }, | 349 {"chartreuse3" , PALETTERGB (102, 205, 0) }, |
344 {"green2" , PALETTERGB (0, 238, 0) }, | 350 {"chartreuse4" , PALETTERGB (69, 139, 0) }, |
345 {"green3" , PALETTERGB (0, 205, 0) }, | 351 {"OliveDrab1" , PALETTERGB (192, 255, 62) }, |
346 {"green4" , PALETTERGB (0, 139, 0) }, | 352 {"OliveDrab2" , PALETTERGB (179, 238, 58) }, |
347 {"chartreuse1" , PALETTERGB (127, 255, 0) }, | 353 {"OliveDrab3" , PALETTERGB (154, 205, 50) }, |
348 {"chartreuse2" , PALETTERGB (118, 238, 0) }, | 354 {"OliveDrab4" , PALETTERGB (105, 139, 34) }, |
349 {"chartreuse3" , PALETTERGB (102, 205, 0) }, | 355 {"DarkOliveGreen1" , PALETTERGB (202, 255, 112) }, |
350 {"chartreuse4" , PALETTERGB (69, 139, 0) }, | 356 {"DarkOliveGreen2" , PALETTERGB (188, 238, 104) }, |
351 {"OliveDrab1" , PALETTERGB (192, 255, 62) }, | 357 {"DarkOliveGreen3" , PALETTERGB (162, 205, 90) }, |
352 {"OliveDrab2" , PALETTERGB (179, 238, 58) }, | 358 {"DarkOliveGreen4" , PALETTERGB (110, 139, 61) }, |
353 {"OliveDrab3" , PALETTERGB (154, 205, 50) }, | 359 {"khaki1" , PALETTERGB (255, 246, 143) }, |
354 {"OliveDrab4" , PALETTERGB (105, 139, 34) }, | 360 {"khaki2" , PALETTERGB (238, 230, 133) }, |
355 {"DarkOliveGreen1" , PALETTERGB (202, 255, 112) }, | 361 {"khaki3" , PALETTERGB (205, 198, 115) }, |
356 {"DarkOliveGreen2" , PALETTERGB (188, 238, 104) }, | 362 {"khaki4" , PALETTERGB (139, 134, 78) }, |
357 {"DarkOliveGreen3" , PALETTERGB (162, 205, 90) }, | 363 {"LightGoldenrod1" , PALETTERGB (255, 236, 139) }, |
358 {"DarkOliveGreen4" , PALETTERGB (110, 139, 61) }, | 364 {"LightGoldenrod2" , PALETTERGB (238, 220, 130) }, |
359 {"khaki1" , PALETTERGB (255, 246, 143) }, | 365 {"LightGoldenrod3" , PALETTERGB (205, 190, 112) }, |
360 {"khaki2" , PALETTERGB (238, 230, 133) }, | 366 {"LightGoldenrod4" , PALETTERGB (139, 129, 76) }, |
361 {"khaki3" , PALETTERGB (205, 198, 115) }, | 367 {"LightYellow1" , PALETTERGB (255, 255, 224) }, |
362 {"khaki4" , PALETTERGB (139, 134, 78) }, | 368 {"LightYellow2" , PALETTERGB (238, 238, 209) }, |
363 {"LightGoldenrod1" , PALETTERGB (255, 236, 139) }, | 369 {"LightYellow3" , PALETTERGB (205, 205, 180) }, |
364 {"LightGoldenrod2" , PALETTERGB (238, 220, 130) }, | 370 {"LightYellow4" , PALETTERGB (139, 139, 122) }, |
365 {"LightGoldenrod3" , PALETTERGB (205, 190, 112) }, | 371 {"yellow1" , PALETTERGB (255, 255, 0) }, |
366 {"LightGoldenrod4" , PALETTERGB (139, 129, 76) }, | 372 {"yellow2" , PALETTERGB (238, 238, 0) }, |
367 {"LightYellow1" , PALETTERGB (255, 255, 224) }, | 373 {"yellow3" , PALETTERGB (205, 205, 0) }, |
368 {"LightYellow2" , PALETTERGB (238, 238, 209) }, | 374 {"yellow4" , PALETTERGB (139, 139, 0) }, |
369 {"LightYellow3" , PALETTERGB (205, 205, 180) }, | 375 {"gold1" , PALETTERGB (255, 215, 0) }, |
370 {"LightYellow4" , PALETTERGB (139, 139, 122) }, | 376 {"gold2" , PALETTERGB (238, 201, 0) }, |
371 {"yellow1" , PALETTERGB (255, 255, 0) }, | 377 {"gold3" , PALETTERGB (205, 173, 0) }, |
372 {"yellow2" , PALETTERGB (238, 238, 0) }, | 378 {"gold4" , PALETTERGB (139, 117, 0) }, |
373 {"yellow3" , PALETTERGB (205, 205, 0) }, | 379 {"goldenrod1" , PALETTERGB (255, 193, 37) }, |
374 {"yellow4" , PALETTERGB (139, 139, 0) }, | 380 {"goldenrod2" , PALETTERGB (238, 180, 34) }, |
375 {"gold1" , PALETTERGB (255, 215, 0) }, | 381 {"goldenrod3" , PALETTERGB (205, 155, 29) }, |
376 {"gold2" , PALETTERGB (238, 201, 0) }, | 382 {"goldenrod4" , PALETTERGB (139, 105, 20) }, |
377 {"gold3" , PALETTERGB (205, 173, 0) }, | 383 {"DarkGoldenrod1" , PALETTERGB (255, 185, 15) }, |
378 {"gold4" , PALETTERGB (139, 117, 0) }, | 384 {"DarkGoldenrod2" , PALETTERGB (238, 173, 14) }, |
379 {"goldenrod1" , PALETTERGB (255, 193, 37) }, | 385 {"DarkGoldenrod3" , PALETTERGB (205, 149, 12) }, |
380 {"goldenrod2" , PALETTERGB (238, 180, 34) }, | 386 {"DarkGoldenrod4" , PALETTERGB (139, 101, 8) }, |
381 {"goldenrod3" , PALETTERGB (205, 155, 29) }, | 387 {"RosyBrown1" , PALETTERGB (255, 193, 193) }, |
382 {"goldenrod4" , PALETTERGB (139, 105, 20) }, | 388 {"RosyBrown2" , PALETTERGB (238, 180, 180) }, |
383 {"DarkGoldenrod1" , PALETTERGB (255, 185, 15) }, | 389 {"RosyBrown3" , PALETTERGB (205, 155, 155) }, |
384 {"DarkGoldenrod2" , PALETTERGB (238, 173, 14) }, | 390 {"RosyBrown4" , PALETTERGB (139, 105, 105) }, |
385 {"DarkGoldenrod3" , PALETTERGB (205, 149, 12) }, | 391 {"IndianRed1" , PALETTERGB (255, 106, 106) }, |
386 {"DarkGoldenrod4" , PALETTERGB (139, 101, 8) }, | 392 {"IndianRed2" , PALETTERGB (238, 99, 99) }, |
387 {"RosyBrown1" , PALETTERGB (255, 193, 193) }, | 393 {"IndianRed3" , PALETTERGB (205, 85, 85) }, |
388 {"RosyBrown2" , PALETTERGB (238, 180, 180) }, | 394 {"IndianRed4" , PALETTERGB (139, 58, 58) }, |
389 {"RosyBrown3" , PALETTERGB (205, 155, 155) }, | 395 {"sienna1" , PALETTERGB (255, 130, 71) }, |
390 {"RosyBrown4" , PALETTERGB (139, 105, 105) }, | 396 {"sienna2" , PALETTERGB (238, 121, 66) }, |
391 {"IndianRed1" , PALETTERGB (255, 106, 106) }, | 397 {"sienna3" , PALETTERGB (205, 104, 57) }, |
392 {"IndianRed2" , PALETTERGB (238, 99, 99) }, | 398 {"sienna4" , PALETTERGB (139, 71, 38) }, |
393 {"IndianRed3" , PALETTERGB (205, 85, 85) }, | 399 {"burlywood1" , PALETTERGB (255, 211, 155) }, |
394 {"IndianRed4" , PALETTERGB (139, 58, 58) }, | 400 {"burlywood2" , PALETTERGB (238, 197, 145) }, |
395 {"sienna1" , PALETTERGB (255, 130, 71) }, | 401 {"burlywood3" , PALETTERGB (205, 170, 125) }, |
396 {"sienna2" , PALETTERGB (238, 121, 66) }, | 402 {"burlywood4" , PALETTERGB (139, 115, 85) }, |
397 {"sienna3" , PALETTERGB (205, 104, 57) }, | 403 {"wheat1" , PALETTERGB (255, 231, 186) }, |
398 {"sienna4" , PALETTERGB (139, 71, 38) }, | 404 {"wheat2" , PALETTERGB (238, 216, 174) }, |
399 {"burlywood1" , PALETTERGB (255, 211, 155) }, | 405 {"wheat3" , PALETTERGB (205, 186, 150) }, |
400 {"burlywood2" , PALETTERGB (238, 197, 145) }, | 406 {"wheat4" , PALETTERGB (139, 126, 102) }, |
401 {"burlywood3" , PALETTERGB (205, 170, 125) }, | 407 {"tan1" , PALETTERGB (255, 165, 79) }, |
402 {"burlywood4" , PALETTERGB (139, 115, 85) }, | 408 {"tan2" , PALETTERGB (238, 154, 73) }, |
403 {"wheat1" , PALETTERGB (255, 231, 186) }, | 409 {"tan3" , PALETTERGB (205, 133, 63) }, |
404 {"wheat2" , PALETTERGB (238, 216, 174) }, | 410 {"tan4" , PALETTERGB (139, 90, 43) }, |
405 {"wheat3" , PALETTERGB (205, 186, 150) }, | 411 {"chocolate1" , PALETTERGB (255, 127, 36) }, |
406 {"wheat4" , PALETTERGB (139, 126, 102) }, | 412 {"chocolate2" , PALETTERGB (238, 118, 33) }, |
407 {"tan1" , PALETTERGB (255, 165, 79) }, | 413 {"chocolate3" , PALETTERGB (205, 102, 29) }, |
408 {"tan2" , PALETTERGB (238, 154, 73) }, | 414 {"chocolate4" , PALETTERGB (139, 69, 19) }, |
409 {"tan3" , PALETTERGB (205, 133, 63) }, | 415 {"firebrick1" , PALETTERGB (255, 48, 48) }, |
410 {"tan4" , PALETTERGB (139, 90, 43) }, | 416 {"firebrick2" , PALETTERGB (238, 44, 44) }, |
411 {"chocolate1" , PALETTERGB (255, 127, 36) }, | 417 {"firebrick3" , PALETTERGB (205, 38, 38) }, |
412 {"chocolate2" , PALETTERGB (238, 118, 33) }, | 418 {"firebrick4" , PALETTERGB (139, 26, 26) }, |
413 {"chocolate3" , PALETTERGB (205, 102, 29) }, | 419 {"brown1" , PALETTERGB (255, 64, 64) }, |
414 {"chocolate4" , PALETTERGB (139, 69, 19) }, | 420 {"brown2" , PALETTERGB (238, 59, 59) }, |
415 {"firebrick1" , PALETTERGB (255, 48, 48) }, | 421 {"brown3" , PALETTERGB (205, 51, 51) }, |
416 {"firebrick2" , PALETTERGB (238, 44, 44) }, | 422 {"brown4" , PALETTERGB (139, 35, 35) }, |
417 {"firebrick3" , PALETTERGB (205, 38, 38) }, | 423 {"salmon1" , PALETTERGB (255, 140, 105) }, |
418 {"firebrick4" , PALETTERGB (139, 26, 26) }, | 424 {"salmon2" , PALETTERGB (238, 130, 98) }, |
419 {"brown1" , PALETTERGB (255, 64, 64) }, | 425 {"salmon3" , PALETTERGB (205, 112, 84) }, |
420 {"brown2" , PALETTERGB (238, 59, 59) }, | 426 {"salmon4" , PALETTERGB (139, 76, 57) }, |
421 {"brown3" , PALETTERGB (205, 51, 51) }, | 427 {"LightSalmon1" , PALETTERGB (255, 160, 122) }, |
422 {"brown4" , PALETTERGB (139, 35, 35) }, | 428 {"LightSalmon2" , PALETTERGB (238, 149, 114) }, |
423 {"salmon1" , PALETTERGB (255, 140, 105) }, | 429 {"LightSalmon3" , PALETTERGB (205, 129, 98) }, |
424 {"salmon2" , PALETTERGB (238, 130, 98) }, | 430 {"LightSalmon4" , PALETTERGB (139, 87, 66) }, |
425 {"salmon3" , PALETTERGB (205, 112, 84) }, | 431 {"orange1" , PALETTERGB (255, 165, 0) }, |
426 {"salmon4" , PALETTERGB (139, 76, 57) }, | 432 {"orange2" , PALETTERGB (238, 154, 0) }, |
427 {"LightSalmon1" , PALETTERGB (255, 160, 122) }, | 433 {"orange3" , PALETTERGB (205, 133, 0) }, |
428 {"LightSalmon2" , PALETTERGB (238, 149, 114) }, | 434 {"orange4" , PALETTERGB (139, 90, 0) }, |
429 {"LightSalmon3" , PALETTERGB (205, 129, 98) }, | 435 {"DarkOrange1" , PALETTERGB (255, 127, 0) }, |
430 {"LightSalmon4" , PALETTERGB (139, 87, 66) }, | 436 {"DarkOrange2" , PALETTERGB (238, 118, 0) }, |
431 {"orange1" , PALETTERGB (255, 165, 0) }, | 437 {"DarkOrange3" , PALETTERGB (205, 102, 0) }, |
432 {"orange2" , PALETTERGB (238, 154, 0) }, | 438 {"DarkOrange4" , PALETTERGB (139, 69, 0) }, |
433 {"orange3" , PALETTERGB (205, 133, 0) }, | 439 {"coral1" , PALETTERGB (255, 114, 86) }, |
434 {"orange4" , PALETTERGB (139, 90, 0) }, | 440 {"coral2" , PALETTERGB (238, 106, 80) }, |
435 {"DarkOrange1" , PALETTERGB (255, 127, 0) }, | 441 {"coral3" , PALETTERGB (205, 91, 69) }, |
436 {"DarkOrange2" , PALETTERGB (238, 118, 0) }, | 442 {"coral4" , PALETTERGB (139, 62, 47) }, |
437 {"DarkOrange3" , PALETTERGB (205, 102, 0) }, | 443 {"tomato1" , PALETTERGB (255, 99, 71) }, |
438 {"DarkOrange4" , PALETTERGB (139, 69, 0) }, | 444 {"tomato2" , PALETTERGB (238, 92, 66) }, |
439 {"coral1" , PALETTERGB (255, 114, 86) }, | 445 {"tomato3" , PALETTERGB (205, 79, 57) }, |
440 {"coral2" , PALETTERGB (238, 106, 80) }, | 446 {"tomato4" , PALETTERGB (139, 54, 38) }, |
441 {"coral3" , PALETTERGB (205, 91, 69) }, | 447 {"OrangeRed1" , PALETTERGB (255, 69, 0) }, |
442 {"coral4" , PALETTERGB (139, 62, 47) }, | 448 {"OrangeRed2" , PALETTERGB (238, 64, 0) }, |
443 {"tomato1" , PALETTERGB (255, 99, 71) }, | 449 {"OrangeRed3" , PALETTERGB (205, 55, 0) }, |
444 {"tomato2" , PALETTERGB (238, 92, 66) }, | 450 {"OrangeRed4" , PALETTERGB (139, 37, 0) }, |
445 {"tomato3" , PALETTERGB (205, 79, 57) }, | 451 {"red1" , PALETTERGB (255, 0, 0) }, |
446 {"tomato4" , PALETTERGB (139, 54, 38) }, | 452 {"red2" , PALETTERGB (238, 0, 0) }, |
447 {"OrangeRed1" , PALETTERGB (255, 69, 0) }, | 453 {"red3" , PALETTERGB (205, 0, 0) }, |
448 {"OrangeRed2" , PALETTERGB (238, 64, 0) }, | 454 {"red4" , PALETTERGB (139, 0, 0) }, |
449 {"OrangeRed3" , PALETTERGB (205, 55, 0) }, | 455 {"DeepPink1" , PALETTERGB (255, 20, 147) }, |
450 {"OrangeRed4" , PALETTERGB (139, 37, 0) }, | 456 {"DeepPink2" , PALETTERGB (238, 18, 137) }, |
451 {"red1" , PALETTERGB (255, 0, 0) }, | 457 {"DeepPink3" , PALETTERGB (205, 16, 118) }, |
452 {"red2" , PALETTERGB (238, 0, 0) }, | 458 {"DeepPink4" , PALETTERGB (139, 10, 80) }, |
453 {"red3" , PALETTERGB (205, 0, 0) }, | 459 {"HotPink1" , PALETTERGB (255, 110, 180) }, |
454 {"red4" , PALETTERGB (139, 0, 0) }, | 460 {"HotPink2" , PALETTERGB (238, 106, 167) }, |
455 {"DeepPink1" , PALETTERGB (255, 20, 147) }, | 461 {"HotPink3" , PALETTERGB (205, 96, 144) }, |
456 {"DeepPink2" , PALETTERGB (238, 18, 137) }, | 462 {"HotPink4" , PALETTERGB (139, 58, 98) }, |
457 {"DeepPink3" , PALETTERGB (205, 16, 118) }, | 463 {"pink1" , PALETTERGB (255, 181, 197) }, |
458 {"DeepPink4" , PALETTERGB (139, 10, 80) }, | 464 {"pink2" , PALETTERGB (238, 169, 184) }, |
459 {"HotPink1" , PALETTERGB (255, 110, 180) }, | 465 {"pink3" , PALETTERGB (205, 145, 158) }, |
460 {"HotPink2" , PALETTERGB (238, 106, 167) }, | 466 {"pink4" , PALETTERGB (139, 99, 108) }, |
461 {"HotPink3" , PALETTERGB (205, 96, 144) }, | 467 {"LightPink1" , PALETTERGB (255, 174, 185) }, |
462 {"HotPink4" , PALETTERGB (139, 58, 98) }, | 468 {"LightPink2" , PALETTERGB (238, 162, 173) }, |
463 {"pink1" , PALETTERGB (255, 181, 197) }, | 469 {"LightPink3" , PALETTERGB (205, 140, 149) }, |
464 {"pink2" , PALETTERGB (238, 169, 184) }, | 470 {"LightPink4" , PALETTERGB (139, 95, 101) }, |
465 {"pink3" , PALETTERGB (205, 145, 158) }, | 471 {"PaleVioletRed1" , PALETTERGB (255, 130, 171) }, |
466 {"pink4" , PALETTERGB (139, 99, 108) }, | 472 {"PaleVioletRed2" , PALETTERGB (238, 121, 159) }, |
467 {"LightPink1" , PALETTERGB (255, 174, 185) }, | 473 {"PaleVioletRed3" , PALETTERGB (205, 104, 137) }, |
468 {"LightPink2" , PALETTERGB (238, 162, 173) }, | 474 {"PaleVioletRed4" , PALETTERGB (139, 71, 93) }, |
469 {"LightPink3" , PALETTERGB (205, 140, 149) }, | 475 {"maroon1" , PALETTERGB (255, 52, 179) }, |
470 {"LightPink4" , PALETTERGB (139, 95, 101) }, | 476 {"maroon2" , PALETTERGB (238, 48, 167) }, |
471 {"PaleVioletRed1" , PALETTERGB (255, 130, 171) }, | 477 {"maroon3" , PALETTERGB (205, 41, 144) }, |
472 {"PaleVioletRed2" , PALETTERGB (238, 121, 159) }, | 478 {"maroon4" , PALETTERGB (139, 28, 98) }, |
473 {"PaleVioletRed3" , PALETTERGB (205, 104, 137) }, | 479 {"VioletRed1" , PALETTERGB (255, 62, 150) }, |
474 {"PaleVioletRed4" , PALETTERGB (139, 71, 93) }, | 480 {"VioletRed2" , PALETTERGB (238, 58, 140) }, |
475 {"maroon1" , PALETTERGB (255, 52, 179) }, | 481 {"VioletRed3" , PALETTERGB (205, 50, 120) }, |
476 {"maroon2" , PALETTERGB (238, 48, 167) }, | 482 {"VioletRed4" , PALETTERGB (139, 34, 82) }, |
477 {"maroon3" , PALETTERGB (205, 41, 144) }, | 483 {"magenta1" , PALETTERGB (255, 0, 255) }, |
478 {"maroon4" , PALETTERGB (139, 28, 98) }, | 484 {"magenta2" , PALETTERGB (238, 0, 238) }, |
479 {"VioletRed1" , PALETTERGB (255, 62, 150) }, | 485 {"magenta3" , PALETTERGB (205, 0, 205) }, |
480 {"VioletRed2" , PALETTERGB (238, 58, 140) }, | 486 {"magenta4" , PALETTERGB (139, 0, 139) }, |
481 {"VioletRed3" , PALETTERGB (205, 50, 120) }, | 487 {"orchid1" , PALETTERGB (255, 131, 250) }, |
482 {"VioletRed4" , PALETTERGB (139, 34, 82) }, | 488 {"orchid2" , PALETTERGB (238, 122, 233) }, |
483 {"magenta1" , PALETTERGB (255, 0, 255) }, | 489 {"orchid3" , PALETTERGB (205, 105, 201) }, |
484 {"magenta2" , PALETTERGB (238, 0, 238) }, | 490 {"orchid4" , PALETTERGB (139, 71, 137) }, |
485 {"magenta3" , PALETTERGB (205, 0, 205) }, | 491 {"plum1" , PALETTERGB (255, 187, 255) }, |
486 {"magenta4" , PALETTERGB (139, 0, 139) }, | 492 {"plum2" , PALETTERGB (238, 174, 238) }, |
487 {"orchid1" , PALETTERGB (255, 131, 250) }, | 493 {"plum3" , PALETTERGB (205, 150, 205) }, |
488 {"orchid2" , PALETTERGB (238, 122, 233) }, | 494 {"plum4" , PALETTERGB (139, 102, 139) }, |
489 {"orchid3" , PALETTERGB (205, 105, 201) }, | 495 {"MediumOrchid1" , PALETTERGB (224, 102, 255) }, |
490 {"orchid4" , PALETTERGB (139, 71, 137) }, | 496 {"MediumOrchid2" , PALETTERGB (209, 95, 238) }, |
491 {"plum1" , PALETTERGB (255, 187, 255) }, | 497 {"MediumOrchid3" , PALETTERGB (180, 82, 205) }, |
492 {"plum2" , PALETTERGB (238, 174, 238) }, | 498 {"MediumOrchid4" , PALETTERGB (122, 55, 139) }, |
493 {"plum3" , PALETTERGB (205, 150, 205) }, | 499 {"DarkOrchid1" , PALETTERGB (191, 62, 255) }, |
494 {"plum4" , PALETTERGB (139, 102, 139) }, | 500 {"DarkOrchid2" , PALETTERGB (178, 58, 238) }, |
495 {"MediumOrchid1" , PALETTERGB (224, 102, 255) }, | 501 {"DarkOrchid3" , PALETTERGB (154, 50, 205) }, |
496 {"MediumOrchid2" , PALETTERGB (209, 95, 238) }, | 502 {"DarkOrchid4" , PALETTERGB (104, 34, 139) }, |
497 {"MediumOrchid3" , PALETTERGB (180, 82, 205) }, | 503 {"purple1" , PALETTERGB (155, 48, 255) }, |
498 {"MediumOrchid4" , PALETTERGB (122, 55, 139) }, | 504 {"purple2" , PALETTERGB (145, 44, 238) }, |
499 {"DarkOrchid1" , PALETTERGB (191, 62, 255) }, | 505 {"purple3" , PALETTERGB (125, 38, 205) }, |
500 {"DarkOrchid2" , PALETTERGB (178, 58, 238) }, | 506 {"purple4" , PALETTERGB (85, 26, 139) }, |
501 {"DarkOrchid3" , PALETTERGB (154, 50, 205) }, | 507 {"MediumPurple1" , PALETTERGB (171, 130, 255) }, |
502 {"DarkOrchid4" , PALETTERGB (104, 34, 139) }, | 508 {"MediumPurple2" , PALETTERGB (159, 121, 238) }, |
503 {"purple1" , PALETTERGB (155, 48, 255) }, | 509 {"MediumPurple3" , PALETTERGB (137, 104, 205) }, |
504 {"purple2" , PALETTERGB (145, 44, 238) }, | 510 {"MediumPurple4" , PALETTERGB (93, 71, 139) }, |
505 {"purple3" , PALETTERGB (125, 38, 205) }, | 511 {"thistle1" , PALETTERGB (255, 225, 255) }, |
506 {"purple4" , PALETTERGB (85, 26, 139) }, | 512 {"thistle2" , PALETTERGB (238, 210, 238) }, |
507 {"MediumPurple1" , PALETTERGB (171, 130, 255) }, | 513 {"thistle3" , PALETTERGB (205, 181, 205) }, |
508 {"MediumPurple2" , PALETTERGB (159, 121, 238) }, | 514 {"thistle4" , PALETTERGB (139, 123, 139) }, |
509 {"MediumPurple3" , PALETTERGB (137, 104, 205) }, | 515 {"gray0" , PALETTERGB (0, 0, 0) }, |
510 {"MediumPurple4" , PALETTERGB (93, 71, 139) }, | 516 {"grey0" , PALETTERGB (0, 0, 0) }, |
511 {"thistle1" , PALETTERGB (255, 225, 255) }, | 517 {"gray1" , PALETTERGB (3, 3, 3) }, |
512 {"thistle2" , PALETTERGB (238, 210, 238) }, | 518 {"grey1" , PALETTERGB (3, 3, 3) }, |
513 {"thistle3" , PALETTERGB (205, 181, 205) }, | 519 {"gray2" , PALETTERGB (5, 5, 5) }, |
514 {"thistle4" , PALETTERGB (139, 123, 139) }, | 520 {"grey2" , PALETTERGB (5, 5, 5) }, |
515 {"gray0" , PALETTERGB (0, 0, 0) }, | 521 {"gray3" , PALETTERGB (8, 8, 8) }, |
516 {"grey0" , PALETTERGB (0, 0, 0) }, | 522 {"grey3" , PALETTERGB (8, 8, 8) }, |
517 {"gray1" , PALETTERGB (3, 3, 3) }, | 523 {"gray4" , PALETTERGB (10, 10, 10) }, |
518 {"grey1" , PALETTERGB (3, 3, 3) }, | 524 {"grey4" , PALETTERGB (10, 10, 10) }, |
519 {"gray2" , PALETTERGB (5, 5, 5) }, | 525 {"gray5" , PALETTERGB (13, 13, 13) }, |
520 {"grey2" , PALETTERGB (5, 5, 5) }, | 526 {"grey5" , PALETTERGB (13, 13, 13) }, |
521 {"gray3" , PALETTERGB (8, 8, 8) }, | 527 {"gray6" , PALETTERGB (15, 15, 15) }, |
522 {"grey3" , PALETTERGB (8, 8, 8) }, | 528 {"grey6" , PALETTERGB (15, 15, 15) }, |
523 {"gray4" , PALETTERGB (10, 10, 10) }, | 529 {"gray7" , PALETTERGB (18, 18, 18) }, |
524 {"grey4" , PALETTERGB (10, 10, 10) }, | 530 {"grey7" , PALETTERGB (18, 18, 18) }, |
525 {"gray5" , PALETTERGB (13, 13, 13) }, | 531 {"gray8" , PALETTERGB (20, 20, 20) }, |
526 {"grey5" , PALETTERGB (13, 13, 13) }, | 532 {"grey8" , PALETTERGB (20, 20, 20) }, |
527 {"gray6" , PALETTERGB (15, 15, 15) }, | 533 {"gray9" , PALETTERGB (23, 23, 23) }, |
528 {"grey6" , PALETTERGB (15, 15, 15) }, | 534 {"grey9" , PALETTERGB (23, 23, 23) }, |
529 {"gray7" , PALETTERGB (18, 18, 18) }, | 535 {"gray10" , PALETTERGB (26, 26, 26) }, |
530 {"grey7" , PALETTERGB (18, 18, 18) }, | 536 {"grey10" , PALETTERGB (26, 26, 26) }, |
531 {"gray8" , PALETTERGB (20, 20, 20) }, | 537 {"gray11" , PALETTERGB (28, 28, 28) }, |
532 {"grey8" , PALETTERGB (20, 20, 20) }, | 538 {"grey11" , PALETTERGB (28, 28, 28) }, |
533 {"gray9" , PALETTERGB (23, 23, 23) }, | 539 {"gray12" , PALETTERGB (31, 31, 31) }, |
534 {"grey9" , PALETTERGB (23, 23, 23) }, | 540 {"grey12" , PALETTERGB (31, 31, 31) }, |
535 {"gray10" , PALETTERGB (26, 26, 26) }, | 541 {"gray13" , PALETTERGB (33, 33, 33) }, |
536 {"grey10" , PALETTERGB (26, 26, 26) }, | 542 {"grey13" , PALETTERGB (33, 33, 33) }, |
537 {"gray11" , PALETTERGB (28, 28, 28) }, | 543 {"gray14" , PALETTERGB (36, 36, 36) }, |
538 {"grey11" , PALETTERGB (28, 28, 28) }, | 544 {"grey14" , PALETTERGB (36, 36, 36) }, |
539 {"gray12" , PALETTERGB (31, 31, 31) }, | 545 {"gray15" , PALETTERGB (38, 38, 38) }, |
540 {"grey12" , PALETTERGB (31, 31, 31) }, | 546 {"grey15" , PALETTERGB (38, 38, 38) }, |
541 {"gray13" , PALETTERGB (33, 33, 33) }, | 547 {"gray16" , PALETTERGB (41, 41, 41) }, |
542 {"grey13" , PALETTERGB (33, 33, 33) }, | 548 {"grey16" , PALETTERGB (41, 41, 41) }, |
543 {"gray14" , PALETTERGB (36, 36, 36) }, | 549 {"gray17" , PALETTERGB (43, 43, 43) }, |
544 {"grey14" , PALETTERGB (36, 36, 36) }, | 550 {"grey17" , PALETTERGB (43, 43, 43) }, |
545 {"gray15" , PALETTERGB (38, 38, 38) }, | 551 {"gray18" , PALETTERGB (46, 46, 46) }, |
546 {"grey15" , PALETTERGB (38, 38, 38) }, | 552 {"grey18" , PALETTERGB (46, 46, 46) }, |
547 {"gray16" , PALETTERGB (41, 41, 41) }, | 553 {"gray19" , PALETTERGB (48, 48, 48) }, |
548 {"grey16" , PALETTERGB (41, 41, 41) }, | 554 {"grey19" , PALETTERGB (48, 48, 48) }, |
549 {"gray17" , PALETTERGB (43, 43, 43) }, | 555 {"gray20" , PALETTERGB (51, 51, 51) }, |
550 {"grey17" , PALETTERGB (43, 43, 43) }, | 556 {"grey20" , PALETTERGB (51, 51, 51) }, |
551 {"gray18" , PALETTERGB (46, 46, 46) }, | 557 {"gray21" , PALETTERGB (54, 54, 54) }, |
552 {"grey18" , PALETTERGB (46, 46, 46) }, | 558 {"grey21" , PALETTERGB (54, 54, 54) }, |
553 {"gray19" , PALETTERGB (48, 48, 48) }, | 559 {"gray22" , PALETTERGB (56, 56, 56) }, |
554 {"grey19" , PALETTERGB (48, 48, 48) }, | 560 {"grey22" , PALETTERGB (56, 56, 56) }, |
555 {"gray20" , PALETTERGB (51, 51, 51) }, | 561 {"gray23" , PALETTERGB (59, 59, 59) }, |
556 {"grey20" , PALETTERGB (51, 51, 51) }, | 562 {"grey23" , PALETTERGB (59, 59, 59) }, |
557 {"gray21" , PALETTERGB (54, 54, 54) }, | 563 {"gray24" , PALETTERGB (61, 61, 61) }, |
558 {"grey21" , PALETTERGB (54, 54, 54) }, | 564 {"grey24" , PALETTERGB (61, 61, 61) }, |
559 {"gray22" , PALETTERGB (56, 56, 56) }, | 565 {"gray25" , PALETTERGB (64, 64, 64) }, |
560 {"grey22" , PALETTERGB (56, 56, 56) }, | 566 {"grey25" , PALETTERGB (64, 64, 64) }, |
561 {"gray23" , PALETTERGB (59, 59, 59) }, | 567 {"gray26" , PALETTERGB (66, 66, 66) }, |
562 {"grey23" , PALETTERGB (59, 59, 59) }, | 568 {"grey26" , PALETTERGB (66, 66, 66) }, |
563 {"gray24" , PALETTERGB (61, 61, 61) }, | 569 {"gray27" , PALETTERGB (69, 69, 69) }, |
564 {"grey24" , PALETTERGB (61, 61, 61) }, | 570 {"grey27" , PALETTERGB (69, 69, 69) }, |
565 {"gray25" , PALETTERGB (64, 64, 64) }, | 571 {"gray28" , PALETTERGB (71, 71, 71) }, |
566 {"grey25" , PALETTERGB (64, 64, 64) }, | 572 {"grey28" , PALETTERGB (71, 71, 71) }, |
567 {"gray26" , PALETTERGB (66, 66, 66) }, | 573 {"gray29" , PALETTERGB (74, 74, 74) }, |
568 {"grey26" , PALETTERGB (66, 66, 66) }, | 574 {"grey29" , PALETTERGB (74, 74, 74) }, |
569 {"gray27" , PALETTERGB (69, 69, 69) }, | 575 {"gray30" , PALETTERGB (77, 77, 77) }, |
570 {"grey27" , PALETTERGB (69, 69, 69) }, | 576 {"grey30" , PALETTERGB (77, 77, 77) }, |
571 {"gray28" , PALETTERGB (71, 71, 71) }, | 577 {"gray31" , PALETTERGB (79, 79, 79) }, |
572 {"grey28" , PALETTERGB (71, 71, 71) }, | 578 {"grey31" , PALETTERGB (79, 79, 79) }, |
573 {"gray29" , PALETTERGB (74, 74, 74) }, | 579 {"gray32" , PALETTERGB (82, 82, 82) }, |
574 {"grey29" , PALETTERGB (74, 74, 74) }, | 580 {"grey32" , PALETTERGB (82, 82, 82) }, |
575 {"gray30" , PALETTERGB (77, 77, 77) }, | 581 {"gray33" , PALETTERGB (84, 84, 84) }, |
576 {"grey30" , PALETTERGB (77, 77, 77) }, | 582 {"grey33" , PALETTERGB (84, 84, 84) }, |
577 {"gray31" , PALETTERGB (79, 79, 79) }, | 583 {"gray34" , PALETTERGB (87, 87, 87) }, |
578 {"grey31" , PALETTERGB (79, 79, 79) }, | 584 {"grey34" , PALETTERGB (87, 87, 87) }, |
579 {"gray32" , PALETTERGB (82, 82, 82) }, | 585 {"gray35" , PALETTERGB (89, 89, 89) }, |
580 {"grey32" , PALETTERGB (82, 82, 82) }, | 586 {"grey35" , PALETTERGB (89, 89, 89) }, |
581 {"gray33" , PALETTERGB (84, 84, 84) }, | 587 {"gray36" , PALETTERGB (92, 92, 92) }, |
582 {"grey33" , PALETTERGB (84, 84, 84) }, | 588 {"grey36" , PALETTERGB (92, 92, 92) }, |
583 {"gray34" , PALETTERGB (87, 87, 87) }, | 589 {"gray37" , PALETTERGB (94, 94, 94) }, |
584 {"grey34" , PALETTERGB (87, 87, 87) }, | 590 {"grey37" , PALETTERGB (94, 94, 94) }, |
585 {"gray35" , PALETTERGB (89, 89, 89) }, | 591 {"gray38" , PALETTERGB (97, 97, 97) }, |
586 {"grey35" , PALETTERGB (89, 89, 89) }, | 592 {"grey38" , PALETTERGB (97, 97, 97) }, |
587 {"gray36" , PALETTERGB (92, 92, 92) }, | 593 {"gray39" , PALETTERGB (99, 99, 99) }, |
588 {"grey36" , PALETTERGB (92, 92, 92) }, | 594 {"grey39" , PALETTERGB (99, 99, 99) }, |
589 {"gray37" , PALETTERGB (94, 94, 94) }, | 595 {"gray40" , PALETTERGB (102, 102, 102) }, |
590 {"grey37" , PALETTERGB (94, 94, 94) }, | 596 {"grey40" , PALETTERGB (102, 102, 102) }, |
591 {"gray38" , PALETTERGB (97, 97, 97) }, | 597 {"gray41" , PALETTERGB (105, 105, 105) }, |
592 {"grey38" , PALETTERGB (97, 97, 97) }, | 598 {"grey41" , PALETTERGB (105, 105, 105) }, |
593 {"gray39" , PALETTERGB (99, 99, 99) }, | 599 {"gray42" , PALETTERGB (107, 107, 107) }, |
594 {"grey39" , PALETTERGB (99, 99, 99) }, | 600 {"grey42" , PALETTERGB (107, 107, 107) }, |
595 {"gray40" , PALETTERGB (102, 102, 102) }, | 601 {"gray43" , PALETTERGB (110, 110, 110) }, |
596 {"grey40" , PALETTERGB (102, 102, 102) }, | 602 {"grey43" , PALETTERGB (110, 110, 110) }, |
597 {"gray41" , PALETTERGB (105, 105, 105) }, | 603 {"gray44" , PALETTERGB (112, 112, 112) }, |
598 {"grey41" , PALETTERGB (105, 105, 105) }, | 604 {"grey44" , PALETTERGB (112, 112, 112) }, |
599 {"gray42" , PALETTERGB (107, 107, 107) }, | 605 {"gray45" , PALETTERGB (115, 115, 115) }, |
600 {"grey42" , PALETTERGB (107, 107, 107) }, | 606 {"grey45" , PALETTERGB (115, 115, 115) }, |
601 {"gray43" , PALETTERGB (110, 110, 110) }, | 607 {"gray46" , PALETTERGB (117, 117, 117) }, |
602 {"grey43" , PALETTERGB (110, 110, 110) }, | 608 {"grey46" , PALETTERGB (117, 117, 117) }, |
603 {"gray44" , PALETTERGB (112, 112, 112) }, | 609 {"gray47" , PALETTERGB (120, 120, 120) }, |
604 {"grey44" , PALETTERGB (112, 112, 112) }, | 610 {"grey47" , PALETTERGB (120, 120, 120) }, |
605 {"gray45" , PALETTERGB (115, 115, 115) }, | 611 {"gray48" , PALETTERGB (122, 122, 122) }, |
606 {"grey45" , PALETTERGB (115, 115, 115) }, | 612 {"grey48" , PALETTERGB (122, 122, 122) }, |
607 {"gray46" , PALETTERGB (117, 117, 117) }, | 613 {"gray49" , PALETTERGB (125, 125, 125) }, |
608 {"grey46" , PALETTERGB (117, 117, 117) }, | 614 {"grey49" , PALETTERGB (125, 125, 125) }, |
609 {"gray47" , PALETTERGB (120, 120, 120) }, | 615 {"gray50" , PALETTERGB (127, 127, 127) }, |
610 {"grey47" , PALETTERGB (120, 120, 120) }, | 616 {"grey50" , PALETTERGB (127, 127, 127) }, |
611 {"gray48" , PALETTERGB (122, 122, 122) }, | 617 {"gray51" , PALETTERGB (130, 130, 130) }, |
612 {"grey48" , PALETTERGB (122, 122, 122) }, | 618 {"grey51" , PALETTERGB (130, 130, 130) }, |
613 {"gray49" , PALETTERGB (125, 125, 125) }, | 619 {"gray52" , PALETTERGB (133, 133, 133) }, |
614 {"grey49" , PALETTERGB (125, 125, 125) }, | 620 {"grey52" , PALETTERGB (133, 133, 133) }, |
615 {"gray50" , PALETTERGB (128, 128, 128) }, /* Adjusted */ | 621 {"gray53" , PALETTERGB (135, 135, 135) }, |
616 {"grey50" , PALETTERGB (128, 128, 128) }, /* Adjusted */ | 622 {"grey53" , PALETTERGB (135, 135, 135) }, |
617 {"gray51" , PALETTERGB (130, 130, 130) }, | 623 {"gray54" , PALETTERGB (138, 138, 138) }, |
618 {"grey51" , PALETTERGB (130, 130, 130) }, | 624 {"grey54" , PALETTERGB (138, 138, 138) }, |
619 {"gray52" , PALETTERGB (133, 133, 133) }, | 625 {"gray55" , PALETTERGB (140, 140, 140) }, |
620 {"grey52" , PALETTERGB (133, 133, 133) }, | 626 {"grey55" , PALETTERGB (140, 140, 140) }, |
621 {"gray53" , PALETTERGB (135, 135, 135) }, | 627 {"gray56" , PALETTERGB (143, 143, 143) }, |
622 {"grey53" , PALETTERGB (135, 135, 135) }, | 628 {"grey56" , PALETTERGB (143, 143, 143) }, |
623 {"gray54" , PALETTERGB (138, 138, 138) }, | 629 {"gray57" , PALETTERGB (145, 145, 145) }, |
624 {"grey54" , PALETTERGB (138, 138, 138) }, | 630 {"grey57" , PALETTERGB (145, 145, 145) }, |
625 {"gray55" , PALETTERGB (140, 140, 140) }, | 631 {"gray58" , PALETTERGB (148, 148, 148) }, |
626 {"grey55" , PALETTERGB (140, 140, 140) }, | 632 {"grey58" , PALETTERGB (148, 148, 148) }, |
627 {"gray56" , PALETTERGB (143, 143, 143) }, | 633 {"gray59" , PALETTERGB (150, 150, 150) }, |
628 {"grey56" , PALETTERGB (143, 143, 143) }, | 634 {"grey59" , PALETTERGB (150, 150, 150) }, |
629 {"gray57" , PALETTERGB (145, 145, 145) }, | 635 {"gray60" , PALETTERGB (153, 153, 153) }, |
630 {"grey57" , PALETTERGB (145, 145, 145) }, | 636 {"grey60" , PALETTERGB (153, 153, 153) }, |
631 {"gray58" , PALETTERGB (148, 148, 148) }, | 637 {"gray61" , PALETTERGB (156, 156, 156) }, |
632 {"grey58" , PALETTERGB (148, 148, 148) }, | 638 {"grey61" , PALETTERGB (156, 156, 156) }, |
633 {"gray59" , PALETTERGB (150, 150, 150) }, | 639 {"gray62" , PALETTERGB (158, 158, 158) }, |
634 {"grey59" , PALETTERGB (150, 150, 150) }, | 640 {"grey62" , PALETTERGB (158, 158, 158) }, |
635 {"gray60" , PALETTERGB (153, 153, 153) }, | 641 {"gray63" , PALETTERGB (161, 161, 161) }, |
636 {"grey60" , PALETTERGB (153, 153, 153) }, | 642 {"grey63" , PALETTERGB (161, 161, 161) }, |
637 {"gray61" , PALETTERGB (156, 156, 156) }, | 643 {"gray64" , PALETTERGB (163, 163, 163) }, |
638 {"grey61" , PALETTERGB (156, 156, 156) }, | 644 {"grey64" , PALETTERGB (163, 163, 163) }, |
639 {"gray62" , PALETTERGB (158, 158, 158) }, | 645 {"gray65" , PALETTERGB (166, 166, 166) }, |
640 {"grey62" , PALETTERGB (158, 158, 158) }, | 646 {"grey65" , PALETTERGB (166, 166, 166) }, |
641 {"gray63" , PALETTERGB (161, 161, 161) }, | 647 {"gray66" , PALETTERGB (168, 168, 168) }, |
642 {"grey63" , PALETTERGB (161, 161, 161) }, | 648 {"grey66" , PALETTERGB (168, 168, 168) }, |
643 {"gray64" , PALETTERGB (163, 163, 163) }, | 649 {"gray67" , PALETTERGB (171, 171, 171) }, |
644 {"grey64" , PALETTERGB (163, 163, 163) }, | 650 {"grey67" , PALETTERGB (171, 171, 171) }, |
645 {"gray65" , PALETTERGB (166, 166, 166) }, | 651 {"gray68" , PALETTERGB (173, 173, 173) }, |
646 {"grey65" , PALETTERGB (166, 166, 166) }, | 652 {"grey68" , PALETTERGB (173, 173, 173) }, |
647 {"gray66" , PALETTERGB (168, 168, 168) }, | 653 {"gray69" , PALETTERGB (176, 176, 176) }, |
648 {"grey66" , PALETTERGB (168, 168, 168) }, | 654 {"grey69" , PALETTERGB (176, 176, 176) }, |
649 {"gray67" , PALETTERGB (171, 171, 171) }, | 655 {"gray70" , PALETTERGB (179, 179, 179) }, |
650 {"grey67" , PALETTERGB (171, 171, 171) }, | 656 {"grey70" , PALETTERGB (179, 179, 179) }, |
651 {"gray68" , PALETTERGB (173, 173, 173) }, | 657 {"gray71" , PALETTERGB (181, 181, 181) }, |
652 {"grey68" , PALETTERGB (173, 173, 173) }, | 658 {"grey71" , PALETTERGB (181, 181, 181) }, |
653 {"gray69" , PALETTERGB (176, 176, 176) }, | 659 {"gray72" , PALETTERGB (184, 184, 184) }, |
654 {"grey69" , PALETTERGB (176, 176, 176) }, | 660 {"grey72" , PALETTERGB (184, 184, 184) }, |
655 {"gray70" , PALETTERGB (179, 179, 179) }, | 661 {"gray73" , PALETTERGB (186, 186, 186) }, |
656 {"grey70" , PALETTERGB (179, 179, 179) }, | 662 {"grey73" , PALETTERGB (186, 186, 186) }, |
657 {"gray71" , PALETTERGB (181, 181, 181) }, | 663 {"gray74" , PALETTERGB (189, 189, 189) }, |
658 {"grey71" , PALETTERGB (181, 181, 181) }, | 664 {"grey74" , PALETTERGB (189, 189, 189) }, |
659 {"gray72" , PALETTERGB (184, 184, 184) }, | 665 {"gray75" , PALETTERGB (191, 191, 191) }, |
660 {"grey72" , PALETTERGB (184, 184, 184) }, | 666 {"grey75" , PALETTERGB (191, 191, 191) }, |
661 {"gray73" , PALETTERGB (186, 186, 186) }, | 667 {"gray76" , PALETTERGB (194, 194, 194) }, |
662 {"grey73" , PALETTERGB (186, 186, 186) }, | 668 {"grey76" , PALETTERGB (194, 194, 194) }, |
663 {"gray74" , PALETTERGB (189, 189, 189) }, | 669 {"gray77" , PALETTERGB (196, 196, 196) }, |
664 {"grey74" , PALETTERGB (189, 189, 189) }, | 670 {"grey77" , PALETTERGB (196, 196, 196) }, |
665 {"gray75" , PALETTERGB (192, 192, 192) }, /* Adjusted */ | 671 {"gray78" , PALETTERGB (199, 199, 199) }, |
666 {"grey75" , PALETTERGB (192, 192, 192) }, /* Adjusted */ | 672 {"grey78" , PALETTERGB (199, 199, 199) }, |
667 {"gray76" , PALETTERGB (194, 194, 194) }, | 673 {"gray79" , PALETTERGB (201, 201, 201) }, |
668 {"grey76" , PALETTERGB (194, 194, 194) }, | 674 {"grey79" , PALETTERGB (201, 201, 201) }, |
669 {"gray77" , PALETTERGB (196, 196, 196) }, | 675 {"gray80" , PALETTERGB (204, 204, 204) }, |
670 {"grey77" , PALETTERGB (196, 196, 196) }, | 676 {"grey80" , PALETTERGB (204, 204, 204) }, |
671 {"gray78" , PALETTERGB (199, 199, 199) }, | 677 {"gray81" , PALETTERGB (207, 207, 207) }, |
672 {"grey78" , PALETTERGB (199, 199, 199) }, | 678 {"grey81" , PALETTERGB (207, 207, 207) }, |
673 {"gray79" , PALETTERGB (201, 201, 201) }, | 679 {"gray82" , PALETTERGB (209, 209, 209) }, |
674 {"grey79" , PALETTERGB (201, 201, 201) }, | 680 {"grey82" , PALETTERGB (209, 209, 209) }, |
675 {"gray80" , PALETTERGB (204, 204, 204) }, | 681 {"gray83" , PALETTERGB (212, 212, 212) }, |
676 {"grey80" , PALETTERGB (204, 204, 204) }, | 682 {"grey83" , PALETTERGB (212, 212, 212) }, |
677 {"gray81" , PALETTERGB (207, 207, 207) }, | 683 {"gray84" , PALETTERGB (214, 214, 214) }, |
678 {"grey81" , PALETTERGB (207, 207, 207) }, | 684 {"grey84" , PALETTERGB (214, 214, 214) }, |
679 {"gray82" , PALETTERGB (209, 209, 209) }, | 685 {"gray85" , PALETTERGB (217, 217, 217) }, |
680 {"grey82" , PALETTERGB (209, 209, 209) }, | 686 {"grey85" , PALETTERGB (217, 217, 217) }, |
681 {"gray83" , PALETTERGB (212, 212, 212) }, | 687 {"gray86" , PALETTERGB (219, 219, 219) }, |
682 {"grey83" , PALETTERGB (212, 212, 212) }, | 688 {"grey86" , PALETTERGB (219, 219, 219) }, |
683 {"gray84" , PALETTERGB (214, 214, 214) }, | 689 {"gray87" , PALETTERGB (222, 222, 222) }, |
684 {"grey84" , PALETTERGB (214, 214, 214) }, | 690 {"grey87" , PALETTERGB (222, 222, 222) }, |
685 {"gray85" , PALETTERGB (217, 217, 217) }, | 691 {"gray88" , PALETTERGB (224, 224, 224) }, |
686 {"grey85" , PALETTERGB (217, 217, 217) }, | 692 {"grey88" , PALETTERGB (224, 224, 224) }, |
687 {"gray86" , PALETTERGB (219, 219, 219) }, | 693 {"gray89" , PALETTERGB (227, 227, 227) }, |
688 {"grey86" , PALETTERGB (219, 219, 219) }, | 694 {"grey89" , PALETTERGB (227, 227, 227) }, |
689 {"gray87" , PALETTERGB (222, 222, 222) }, | 695 {"gray90" , PALETTERGB (229, 229, 229) }, |
690 {"grey87" , PALETTERGB (222, 222, 222) }, | 696 {"grey90" , PALETTERGB (229, 229, 229) }, |
691 {"gray88" , PALETTERGB (224, 224, 224) }, | 697 {"gray91" , PALETTERGB (232, 232, 232) }, |
692 {"grey88" , PALETTERGB (224, 224, 224) }, | 698 {"grey91" , PALETTERGB (232, 232, 232) }, |
693 {"gray89" , PALETTERGB (227, 227, 227) }, | 699 {"gray92" , PALETTERGB (235, 235, 235) }, |
694 {"grey89" , PALETTERGB (227, 227, 227) }, | 700 {"grey92" , PALETTERGB (235, 235, 235) }, |
695 {"gray90" , PALETTERGB (229, 229, 229) }, | 701 {"gray93" , PALETTERGB (237, 237, 237) }, |
696 {"grey90" , PALETTERGB (229, 229, 229) }, | 702 {"grey93" , PALETTERGB (237, 237, 237) }, |
697 {"gray91" , PALETTERGB (232, 232, 232) }, | 703 {"gray94" , PALETTERGB (240, 240, 240) }, |
698 {"grey91" , PALETTERGB (232, 232, 232) }, | 704 {"grey94" , PALETTERGB (240, 240, 240) }, |
699 {"gray92" , PALETTERGB (235, 235, 235) }, | 705 {"gray95" , PALETTERGB (242, 242, 242) }, |
700 {"grey92" , PALETTERGB (235, 235, 235) }, | 706 {"grey95" , PALETTERGB (242, 242, 242) }, |
701 {"gray93" , PALETTERGB (237, 237, 237) }, | 707 {"gray96" , PALETTERGB (245, 245, 245) }, |
702 {"grey93" , PALETTERGB (237, 237, 237) }, | 708 {"grey96" , PALETTERGB (245, 245, 245) }, |
703 {"gray94" , PALETTERGB (240, 240, 240) }, | 709 {"gray97" , PALETTERGB (247, 247, 247) }, |
704 {"grey94" , PALETTERGB (240, 240, 240) }, | 710 {"grey97" , PALETTERGB (247, 247, 247) }, |
705 {"gray95" , PALETTERGB (242, 242, 242) }, | 711 {"gray98" , PALETTERGB (250, 250, 250) }, |
706 {"grey95" , PALETTERGB (242, 242, 242) }, | 712 {"grey98" , PALETTERGB (250, 250, 250) }, |
707 {"gray96" , PALETTERGB (245, 245, 245) }, | 713 {"gray99" , PALETTERGB (252, 252, 252) }, |
708 {"grey96" , PALETTERGB (245, 245, 245) }, | 714 {"grey99" , PALETTERGB (252, 252, 252) }, |
709 {"gray97" , PALETTERGB (247, 247, 247) }, | 715 {"gray100" , PALETTERGB (255, 255, 255) }, |
710 {"grey97" , PALETTERGB (247, 247, 247) }, | 716 {"grey100" , PALETTERGB (255, 255, 255) }, |
711 {"gray98" , PALETTERGB (250, 250, 250) }, | 717 {"DarkGrey" , PALETTERGB (169, 169, 169) }, |
712 {"grey98" , PALETTERGB (250, 250, 250) }, | 718 {"DarkGray" , PALETTERGB (169, 169, 169) }, |
713 {"gray99" , PALETTERGB (252, 252, 252) }, | 719 {"DarkBlue" , PALETTERGB (0, 0, 139) }, |
714 {"grey99" , PALETTERGB (252, 252, 252) }, | 720 {"DarkCyan" , PALETTERGB (0, 139, 139) }, |
715 {"gray100" , PALETTERGB (255, 255, 255) }, | 721 {"DarkMagenta" , PALETTERGB (139, 0, 139) }, |
716 {"grey100" , PALETTERGB (255, 255, 255) }, | 722 {"DarkRed" , PALETTERGB (139, 0, 0) }, |
717 {"DarkGrey" , PALETTERGB (169, 169, 169) }, | 723 {"LightGreen" , PALETTERGB (144, 238, 144) } |
718 {"DarkGray" , PALETTERGB (169, 169, 169) }, | |
719 {"DarkBlue" , PALETTERGB (0, 0, 128) }, /* Adjusted == Navy */ | |
720 {"DarkCyan" , PALETTERGB (0, 128, 128) }, /* Adjusted */ | |
721 {"DarkMagenta" , PALETTERGB (128, 0, 128) }, /* Adjusted */ | |
722 {"DarkRed" , PALETTERGB (128, 0, 0) }, /* Adjusted */ | |
723 {"LightGreen" , PALETTERGB (144, 238, 144) }, | |
724 /* Added to match values in the default Windows palette: */ | |
725 {"DarkYellow" , PALETTERGB (128, 128, 0) }, | |
726 {"PaleYellow" , PALETTERGB (255, 255, 128) } | |
727 }; | 724 }; |
728 | 725 |
729 | 726 |
730 typedef struct fontmap_t | 727 typedef struct fontmap_t |
731 { | 728 { |
732 const char *name; | 729 CONST char *name; |
733 int value; | 730 CONST int value; |
734 } fontmap_t; | 731 } fontmap_t; |
735 | 732 |
736 /* Default weight first, preferred names listed before synonyms */ | 733 /* Default weight first, preferred names listed before synonyms */ |
737 static const fontmap_t fontweight_map[] = | 734 static CONST fontmap_t fontweight_map[] = |
738 { | 735 { |
739 {"Regular" , FW_REGULAR}, /* The standard font weight */ | 736 {"Regular" , FW_REGULAR}, /* The standard font weight */ |
740 {"Thin" , FW_THIN}, | 737 {"Thin" , FW_THIN}, |
741 {"Extra Light" , FW_EXTRALIGHT}, | 738 {"Extra Light" , FW_EXTRALIGHT}, |
742 {"Ultra Light" , FW_ULTRALIGHT}, | 739 {"Ultra Light" , FW_ULTRALIGHT}, |
752 {"Black" , FW_BLACK} | 749 {"Black" , FW_BLACK} |
753 }; | 750 }; |
754 | 751 |
755 /* Default charset first, no synonyms allowed because these names are | 752 /* Default charset first, no synonyms allowed because these names are |
756 * matched against the names reported by win32 by match_font() */ | 753 * matched against the names reported by win32 by match_font() */ |
757 static const fontmap_t charset_map[] = | 754 static CONST fontmap_t charset_map[] = |
758 { | 755 { |
759 {"Western" , ANSI_CHARSET}, | 756 {"Western" , ANSI_CHARSET}, |
760 {"Symbol" , SYMBOL_CHARSET}, | 757 {"Symbol" , SYMBOL_CHARSET}, |
761 {"Shift JIS" , SHIFTJIS_CHARSET}, /* #### Name to be verified */ | 758 {"Shift JIS" , SHIFTJIS_CHARSET}, /* #### Name to be verified */ |
762 {"GB2312" , GB2312_CHARSET}, /* #### Name to be verified */ | 759 {"GB2312" , GB2312_CHARSET}, /* #### Name to be verified */ |
794 else | 791 else |
795 return c-'0'; | 792 return c-'0'; |
796 } | 793 } |
797 | 794 |
798 COLORREF | 795 COLORREF |
799 mswindows_string_to_color(const char *name) | 796 mswindows_string_to_color(CONST char *name) |
800 { | 797 { |
801 int i; | 798 int i; |
802 | 799 |
803 if (*name == '#') | 800 if (*name == '#') |
804 { | 801 { |
857 else | 854 else |
858 return (COLORREF) -1; | 855 return (COLORREF) -1; |
859 } | 856 } |
860 else if (*name) /* Can't be an empty string */ | 857 else if (*name) /* Can't be an empty string */ |
861 { | 858 { |
862 char *nospaces = (char*) alloca (strlen (name)+1); | 859 char *nospaces = alloca (strlen (name)+1); |
863 char *c = nospaces; | 860 char *c=nospaces; |
864 while (*name) | 861 while (*name) |
865 if (*name != ' ') | 862 if (*name != ' ') |
866 *c++ = *name++; | 863 *(c++) = *(name++); |
867 else | 864 else |
868 name++; | 865 name++; |
869 *c = '\0'; | 866 *c = '\0'; |
870 | 867 |
871 for (i = 0; i < countof (mswindows_X_color_map); i++) | 868 for (i=0; i< countof (mswindows_X_color_map); i++) |
872 if (!stricmp (nospaces, mswindows_X_color_map[i].name)) | 869 if (!stricmp (nospaces, mswindows_X_color_map[i].name)) |
873 return (mswindows_X_color_map[i].colorref); | 870 return (mswindows_X_color_map[i].colorref); |
874 } | 871 } |
875 return (COLORREF) -1; | 872 return (COLORREF) -1; |
876 } | |
877 | |
878 Lisp_Object | |
879 mswindows_color_to_string (COLORREF color) | |
880 { | |
881 int i; | |
882 char buf[8]; | |
883 COLORREF pcolor = PALETTERGB (GetRValue (color), GetGValue (color), | |
884 GetBValue (color)); | |
885 | |
886 for (i=0; i < countof (mswindows_X_color_map); i++) | |
887 if (pcolor == (mswindows_X_color_map[i].colorref)) | |
888 return build_string (mswindows_X_color_map[i].name); | |
889 | |
890 sprintf (buf, "#%02X%02X%02X", | |
891 GetRValue (color), GetGValue (color), GetBValue (color)); | |
892 return build_string (buf); | |
893 } | 873 } |
894 | 874 |
895 /* | 875 /* |
896 * Returns non-zero if the two supplied font patterns match. | 876 * Returns non-zero if the two supplied font patterns match. |
897 * If they match and fontname is not NULL, copies the logical OR of the | 877 * If they match and fontname is not NULL, copies the logical OR of the |
955 /************************************************************************/ | 935 /************************************************************************/ |
956 | 936 |
957 struct font_enum_t | 937 struct font_enum_t |
958 { | 938 { |
959 HDC hdc; | 939 HDC hdc; |
960 Lisp_Object list; | 940 struct device *d; |
961 }; | 941 }; |
962 | 942 |
963 static int CALLBACK | 943 static int CALLBACK |
964 font_enum_callback_2 (ENUMLOGFONTEX *lpelfe, NEWTEXTMETRICEX *lpntme, | 944 font_enum_callback_2 (ENUMLOGFONTEX *lpelfe, NEWTEXTMETRICEX *lpntme, |
965 int FontType, struct font_enum_t *font_enum) | 945 int FontType, struct font_enum_t *font_enum) |
966 { | 946 { |
947 struct mswindows_font_enum *fontlist, **fonthead; | |
967 char fontname[MSW_FONTSIZE]; | 948 char fontname[MSW_FONTSIZE]; |
968 Lisp_Object fontname_lispstr; | |
969 int i; | 949 int i; |
970 | 950 |
971 /* | 951 /* |
972 * The enumerated font weights are not to be trusted because: | 952 * The enumerated font weights are not to be trusted because: |
973 * a) lpelfe->elfStyle is only filled in for TrueType fonts. | 953 * a) lpelfe->elfStyle is only filled in for TrueType fonts. |
984 sprintf (fontname, "%s::::", lpelfe->elfLogFont.lfFaceName); | 964 sprintf (fontname, "%s::::", lpelfe->elfLogFont.lfFaceName); |
985 else | 965 else |
986 /* Formula for pointsize->height from LOGFONT docs in Platform SDK */ | 966 /* Formula for pointsize->height from LOGFONT docs in Platform SDK */ |
987 sprintf (fontname, "%s::%d::", lpelfe->elfLogFont.lfFaceName, | 967 sprintf (fontname, "%s::%d::", lpelfe->elfLogFont.lfFaceName, |
988 MulDiv (lpntme->ntmTm.tmHeight - lpntme->ntmTm.tmInternalLeading, | 968 MulDiv (lpntme->ntmTm.tmHeight - lpntme->ntmTm.tmInternalLeading, |
989 72, GetDeviceCaps (font_enum->hdc, LOGPIXELSY))); | 969 72, DEVICE_MSWINDOWS_LOGPIXELSY (font_enum->d))); |
990 | 970 |
991 /* | 971 /* |
992 * The enumerated font character set strings are not to be trusted because | 972 * The enumerated font character set strings are not to be trusted because |
993 * lpelfe->elfScript is returned in the host language and not in English. | 973 * lpelfe->elfScript is returned in the host language and not in English. |
994 * We can't know a priori the translations of "Western", "Central European" | 974 * We can't know a priori the translations of "Western", "Central European" |
1002 break; | 982 break; |
1003 } | 983 } |
1004 if (i==countof (charset_map)) | 984 if (i==countof (charset_map)) |
1005 strcpy (fontname, charset_map[0].name); | 985 strcpy (fontname, charset_map[0].name); |
1006 | 986 |
1007 /* Add the font name to the list if not already there */ | 987 /* Check that the new font is not a duplicate */ |
1008 fontname_lispstr = build_string (fontname); | 988 fonthead = &DEVICE_MSWINDOWS_FONTLIST (font_enum->d); |
1009 if (NILP (memq_no_quit (fontname_lispstr, font_enum->list))) | 989 fontlist = *fonthead; |
1010 font_enum->list = Fcons (fontname_lispstr, font_enum->list); | 990 while (fontlist) |
1011 | 991 if (!strcmp (fontname, fontlist->fontname)) |
992 return 1; /* found a duplicate */ | |
993 else | |
994 fontlist = fontlist->next; | |
995 | |
996 /* Insert entry at head */ | |
997 fontlist = *fonthead; | |
998 *fonthead = xmalloc (sizeof (struct mswindows_font_enum)); | |
999 if (*fonthead == NULL) | |
1000 { | |
1001 *fonthead = fontlist; | |
1002 return 0; | |
1003 } | |
1004 strcpy ((*fonthead)->fontname, fontname); | |
1005 (*fonthead)->next = fontlist; | |
1012 return 1; | 1006 return 1; |
1013 } | 1007 } |
1014 | 1008 |
1015 static int CALLBACK | 1009 static int CALLBACK |
1016 font_enum_callback_1 (ENUMLOGFONTEX *lpelfe, NEWTEXTMETRICEX *lpntme, | 1010 font_enum_callback_1 (ENUMLOGFONTEX *lpelfe, NEWTEXTMETRICEX *lpntme, |
1022 (FONTENUMPROC) font_enum_callback_2, | 1016 (FONTENUMPROC) font_enum_callback_2, |
1023 (LPARAM) font_enum, 0); | 1017 (LPARAM) font_enum, 0); |
1024 } | 1018 } |
1025 | 1019 |
1026 /* | 1020 /* |
1027 * Enumerate the available on the HDC fonts and return a list of string | 1021 * Enumerate the available fonts. Called by mswindows_init_device(). |
1028 * font names. | 1022 * Fills in the device's device-type-specfic fontlist. |
1029 */ | 1023 */ |
1030 Lisp_Object | 1024 void |
1031 mswindows_enumerate_fonts (HDC hdc) | 1025 mswindows_enumerate_fonts (struct device *d) |
1032 { | 1026 { |
1033 /* This cannot CG */ | 1027 HDC hdc = CreateCompatibleDC (NULL); |
1034 LOGFONT logfont; | 1028 LOGFONT logfont; |
1035 struct font_enum_t font_enum; | 1029 struct font_enum_t font_enum; |
1036 | 1030 |
1037 assert (hdc!=NULL); | 1031 assert (hdc!=NULL); |
1038 logfont.lfCharSet = DEFAULT_CHARSET; | 1032 logfont.lfCharSet = DEFAULT_CHARSET; |
1039 logfont.lfFaceName[0] = '\0'; | 1033 logfont.lfFaceName[0] = '\0'; |
1040 logfont.lfPitchAndFamily = DEFAULT_PITCH; | 1034 logfont.lfPitchAndFamily = DEFAULT_PITCH; |
1041 font_enum.hdc = hdc; | 1035 font_enum.hdc = hdc; |
1042 font_enum.list = Qnil; | 1036 font_enum.d = d; |
1037 DEVICE_MSWINDOWS_FONTLIST (d) = NULL; | |
1043 EnumFontFamiliesEx (hdc, &logfont, (FONTENUMPROC) font_enum_callback_1, | 1038 EnumFontFamiliesEx (hdc, &logfont, (FONTENUMPROC) font_enum_callback_1, |
1044 (LPARAM) (&font_enum), 0); | 1039 (LPARAM) (&font_enum), 0); |
1045 return font_enum.list; | 1040 DeleteDC (hdc); |
1046 } | 1041 } |
1047 | 1042 |
1048 static HFONT | |
1049 mswindows_create_font_variant (Lisp_Font_Instance* f, | |
1050 int under, int strike) | |
1051 { | |
1052 /* Cannot GC */ | |
1053 | |
1054 LOGFONT lf; | |
1055 HFONT hfont; | |
1056 | |
1057 assert (FONT_INSTANCE_MSWINDOWS_HFONT_VARIANT (f, under, strike) == NULL); | |
1058 | |
1059 if (GetObject (FONT_INSTANCE_MSWINDOWS_HFONT_VARIANT (f, 0, 0), | |
1060 sizeof (lf), (void*) &lf) == 0) | |
1061 { | |
1062 hfont = MSWINDOWS_BAD_HFONT; | |
1063 } | |
1064 else | |
1065 { | |
1066 lf.lfUnderline = under; | |
1067 lf.lfStrikeOut = strike; | |
1068 | |
1069 hfont = CreateFontIndirect (&lf); | |
1070 if (hfont == NULL) | |
1071 hfont = MSWINDOWS_BAD_HFONT; | |
1072 } | |
1073 | |
1074 FONT_INSTANCE_MSWINDOWS_HFONT_VARIANT (f, under, strike) = hfont; | |
1075 return hfont; | |
1076 } | |
1077 | |
1078 HFONT | |
1079 mswindows_get_hfont (Lisp_Font_Instance* f, | |
1080 int under, int strike) | |
1081 { | |
1082 /* Cannot GC */ | |
1083 HFONT hfont = FONT_INSTANCE_MSWINDOWS_HFONT_VARIANT (f, under, strike); | |
1084 | |
1085 if (hfont == NULL) | |
1086 hfont = mswindows_create_font_variant (f, under, strike); | |
1087 | |
1088 /* If strikeout/underline variant of the font could not be | |
1089 created, then use the base version of the font */ | |
1090 if (hfont == MSWINDOWS_BAD_HFONT) | |
1091 hfont = FONT_INSTANCE_MSWINDOWS_HFONT_VARIANT (f, 0, 0); | |
1092 | |
1093 assert (hfont != NULL && hfont != MSWINDOWS_BAD_HFONT); | |
1094 | |
1095 return hfont; | |
1096 } | |
1097 | 1043 |
1098 /************************************************************************/ | 1044 /************************************************************************/ |
1099 /* methods */ | 1045 /* methods */ |
1100 /************************************************************************/ | 1046 /************************************************************************/ |
1101 | 1047 |
1102 static int | 1048 static int |
1103 mswindows_initialize_color_instance (Lisp_Color_Instance *c, Lisp_Object name, | 1049 mswindows_initialize_color_instance (struct Lisp_Color_Instance *c, Lisp_Object name, |
1104 Lisp_Object device, Error_behavior errb) | 1050 Lisp_Object device, Error_behavior errb) |
1105 { | 1051 { |
1106 const char *extname; | 1052 CONST char *extname; |
1107 COLORREF color; | 1053 COLORREF color; |
1108 | 1054 |
1109 TO_EXTERNAL_FORMAT (LISP_STRING, name, | 1055 GET_C_STRING_CTEXT_DATA_ALLOCA (name, extname); |
1110 C_STRING_ALLOCA, extname, | |
1111 Qctext); | |
1112 color = mswindows_string_to_color(extname); | 1056 color = mswindows_string_to_color(extname); |
1113 if (color != -1) | 1057 if (color != -1) |
1114 { | 1058 { |
1115 c->data = xnew (struct mswindows_color_instance_data); | 1059 c->data = xnew (struct mswindows_color_instance_data); |
1116 COLOR_INSTANCE_MSWINDOWS_COLOR (c) = color; | 1060 COLOR_INSTANCE_MSWINDOWS_COLOR (c) = color; |
1120 return(0); | 1064 return(0); |
1121 } | 1065 } |
1122 | 1066 |
1123 #if 0 | 1067 #if 0 |
1124 static void | 1068 static void |
1125 mswindows_mark_color_instance (Lisp_Color_Instance *c) | 1069 mswindows_mark_color_instance (struct Lisp_Color_Instance *c, |
1070 void (*markobj) (Lisp_Object)) | |
1126 { | 1071 { |
1127 } | 1072 } |
1128 #endif | 1073 #endif |
1129 | 1074 |
1130 static void | 1075 static void |
1131 mswindows_print_color_instance (Lisp_Color_Instance *c, | 1076 mswindows_print_color_instance (struct Lisp_Color_Instance *c, |
1132 Lisp_Object printcharfun, | 1077 Lisp_Object printcharfun, |
1133 int escapeflag) | 1078 int escapeflag) |
1134 { | 1079 { |
1135 char buf[32]; | 1080 char buf[32]; |
1136 COLORREF color = COLOR_INSTANCE_MSWINDOWS_COLOR (c); | 1081 COLORREF color = COLOR_INSTANCE_MSWINDOWS_COLOR (c); |
1137 sprintf (buf, " %06ld=(%04X,%04X,%04X)", color & 0xffffff, | 1082 sprintf (buf, " %06ld=(%04X,%04X,%04X)", color & 0xffffff, |
1138 GetRValue(color)*257, GetGValue(color)*257, GetBValue(color)*257); | 1083 GetRValue(color)*257, GetGValue(color)*257, GetBValue(color)*257); |
1139 write_c_string (buf, printcharfun); | 1084 write_c_string (buf, printcharfun); |
1140 } | 1085 } |
1141 | 1086 |
1142 static void | 1087 static void |
1143 mswindows_finalize_color_instance (Lisp_Color_Instance *c) | 1088 mswindows_finalize_color_instance (struct Lisp_Color_Instance *c) |
1144 { | 1089 { |
1145 if (c->data) | 1090 if (c->data) |
1146 { | 1091 { |
1147 xfree (c->data); | 1092 xfree (c->data); |
1148 c->data = 0; | 1093 c->data = 0; |
1149 } | 1094 } |
1150 } | 1095 } |
1151 | 1096 |
1152 static int | 1097 static int |
1153 mswindows_color_instance_equal (Lisp_Color_Instance *c1, | 1098 mswindows_color_instance_equal (struct Lisp_Color_Instance *c1, |
1154 Lisp_Color_Instance *c2, | 1099 struct Lisp_Color_Instance *c2, |
1155 int depth) | 1100 int depth) |
1156 { | 1101 { |
1157 return (COLOR_INSTANCE_MSWINDOWS_COLOR(c1) == COLOR_INSTANCE_MSWINDOWS_COLOR(c2)); | 1102 return (COLOR_INSTANCE_MSWINDOWS_COLOR(c1) == COLOR_INSTANCE_MSWINDOWS_COLOR(c2)); |
1158 } | 1103 } |
1159 | 1104 |
1160 static unsigned long | 1105 static unsigned long |
1161 mswindows_color_instance_hash (Lisp_Color_Instance *c, int depth) | 1106 mswindows_color_instance_hash (struct Lisp_Color_Instance *c, int depth) |
1162 { | 1107 { |
1163 return (unsigned long) COLOR_INSTANCE_MSWINDOWS_COLOR(c); | 1108 return (unsigned long)(COLOR_INSTANCE_MSWINDOWS_COLOR(c)); |
1164 } | 1109 } |
1165 | 1110 |
1166 static Lisp_Object | 1111 static Lisp_Object |
1167 mswindows_color_instance_rgb_components (Lisp_Color_Instance *c) | 1112 mswindows_color_instance_rgb_components (struct Lisp_Color_Instance *c) |
1168 { | 1113 { |
1169 COLORREF color = COLOR_INSTANCE_MSWINDOWS_COLOR (c); | 1114 COLORREF color = COLOR_INSTANCE_MSWINDOWS_COLOR (c); |
1170 return list3 (make_int (GetRValue (color) * 257), | 1115 return list3 (make_int (GetRValue (color) * 257), |
1171 make_int (GetGValue (color) * 257), | 1116 make_int (GetGValue (color) * 257), |
1172 make_int (GetBValue (color) * 257)); | 1117 make_int (GetBValue (color) * 257)); |
1173 } | 1118 } |
1174 | 1119 |
1175 static int | 1120 static int |
1176 mswindows_valid_color_name_p (struct device *d, Lisp_Object color) | 1121 mswindows_valid_color_name_p (struct device *d, Lisp_Object color) |
1177 { | 1122 { |
1178 const char *extname; | 1123 CONST char *extname; |
1179 | 1124 |
1180 TO_EXTERNAL_FORMAT (LISP_STRING, color, | 1125 GET_C_STRING_CTEXT_DATA_ALLOCA (color, extname); |
1181 C_STRING_ALLOCA, extname, | |
1182 Qctext); | |
1183 return (mswindows_string_to_color(extname)!=-1); | 1126 return (mswindows_string_to_color(extname)!=-1); |
1184 } | 1127 } |
1185 | 1128 |
1186 | 1129 |
1187 | 1130 |
1188 static void | 1131 static void |
1189 mswindows_finalize_font_instance (Lisp_Font_Instance *f); | 1132 mswindows_finalize_font_instance (struct Lisp_Font_Instance *f) |
1190 | 1133 { |
1191 /* | 1134 if (f->data) |
1192 * This is a work horse for both mswindows_initialize_font_instanc and | 1135 { |
1193 * msprinter_initialize_font_instance. | 1136 DeleteObject(f->data); |
1194 */ | 1137 f->data=0; |
1138 } | |
1139 } | |
1140 | |
1141 | |
1195 static int | 1142 static int |
1196 initialize_font_instance (Lisp_Font_Instance *f, Lisp_Object name, | 1143 mswindows_initialize_font_instance (struct Lisp_Font_Instance *f, Lisp_Object name, |
1197 Lisp_Object device_font_list, HDC hdc, | 1144 Lisp_Object device, Error_behavior errb) |
1198 Error_behavior errb) | 1145 { |
1199 { | 1146 CONST char *extname; |
1200 const char *extname; | |
1201 LOGFONT logfont; | 1147 LOGFONT logfont; |
1202 int fields, i; | 1148 int fields, i; |
1203 int pt; | 1149 int pt; |
1204 char fontname[LF_FACESIZE], weight[LF_FACESIZE], *style, points[8]; | 1150 char fontname[LF_FACESIZE], weight[LF_FACESIZE], *style, points[8]; |
1205 char effects[LF_FACESIZE], charset[LF_FACESIZE]; | 1151 char effects[LF_FACESIZE], charset[LF_FACESIZE]; |
1206 char *c; | 1152 char *c; |
1207 HFONT hfont, hfont2; | 1153 HDC hdc; |
1154 HFONT holdfont; | |
1208 TEXTMETRIC metrics; | 1155 TEXTMETRIC metrics; |
1209 | 1156 |
1210 extname = XSTRING_DATA (name); | 1157 extname = XSTRING_DATA (name); |
1211 | 1158 |
1212 /* | 1159 /* |
1306 maybe_signal_simple_error ("Invalid font pointsize", name, Qfont, errb); | 1253 maybe_signal_simple_error ("Invalid font pointsize", name, Qfont, errb); |
1307 return (0); | 1254 return (0); |
1308 } | 1255 } |
1309 | 1256 |
1310 /* Formula for pointsize->height from LOGFONT docs in MSVC5 Platform SDK */ | 1257 /* Formula for pointsize->height from LOGFONT docs in MSVC5 Platform SDK */ |
1311 logfont.lfHeight = -MulDiv(pt, GetDeviceCaps (hdc, LOGPIXELSY), 72); | 1258 logfont.lfHeight = -MulDiv(pt, DEVICE_MSWINDOWS_LOGPIXELSY (XDEVICE (device)), 72); |
1312 logfont.lfWidth = 0; | 1259 logfont.lfWidth = 0; |
1313 | 1260 |
1314 /* Effects */ | 1261 /* Effects */ |
1315 logfont.lfUnderline = FALSE; | 1262 logfont.lfUnderline = FALSE; |
1316 logfont.lfStrikeOut = FALSE; | 1263 logfont.lfStrikeOut = FALSE; |
1404 logfont.lfQuality = PROOF_QUALITY; | 1351 logfont.lfQuality = PROOF_QUALITY; |
1405 #endif | 1352 #endif |
1406 /* Default to monospaced if the specified fontname doesn't exist. */ | 1353 /* Default to monospaced if the specified fontname doesn't exist. */ |
1407 logfont.lfPitchAndFamily = FF_MODERN; | 1354 logfont.lfPitchAndFamily = FF_MODERN; |
1408 | 1355 |
1409 /* Windows will silently substitute a default font if the fontname specifies | 1356 /* Windows will silently substitute a default font if the fontname |
1410 a non-existent font. This is bad for screen fonts because it doesn't | 1357 * specifies a non-existent font. So we check the font against the device's |
1411 allow higher-level code to see the error and to act appropriately. | 1358 * list of font patterns to make sure that at least one of them matches. */ |
1412 For instance complex_vars_of_faces() sets up a fallback list of fonts | 1359 { |
1413 for the default face. */ | 1360 struct mswindows_font_enum *fontlist; |
1414 | 1361 char truename[MSW_FONTSIZE]; |
1415 if (!NILP (device_font_list)) | 1362 int done = 0; |
1416 { | 1363 |
1417 Lisp_Object fonttail; | 1364 sprintf (truename, "%s:%s:%d:%s:%s", fontname, weight, pt, effects, charset); |
1418 char truename[MSW_FONTSIZE]; | 1365 fontlist = DEVICE_MSWINDOWS_FONTLIST (XDEVICE (device)); |
1419 | 1366 while (fontlist && !done) |
1420 sprintf (truename, "%s:%s:%d:%s:%s", fontname, weight, pt, effects, charset); | 1367 { |
1421 LIST_LOOP (fonttail, device_font_list) | 1368 done = match_font (fontlist->fontname, truename, NULL); |
1422 { | 1369 fontlist = fontlist->next; |
1423 if (match_font (XSTRING_DATA (XCAR (fonttail)), truename, NULL)) | 1370 } |
1424 break; | 1371 if (!done) |
1425 } | 1372 { |
1426 if (NILP (fonttail)) | 1373 maybe_signal_simple_error ("No matching font", name, Qfont, errb); |
1427 { | 1374 return 0; |
1428 maybe_signal_simple_error ("No matching font", name, Qfont, errb); | 1375 } |
1429 return 0; | 1376 } |
1430 } | 1377 |
1431 } | 1378 if ((f->data = CreateFontIndirect(&logfont)) == NULL) |
1432 | |
1433 if ((hfont = CreateFontIndirect(&logfont)) == NULL) | |
1434 { | 1379 { |
1435 maybe_signal_simple_error ("Couldn't create font", name, Qfont, errb); | 1380 maybe_signal_simple_error ("Couldn't create font", name, Qfont, errb); |
1436 return 0; | 1381 return 0; |
1437 } | 1382 } |
1438 | 1383 |
1439 f->data = xnew_and_zero (struct mswindows_font_instance_data); | 1384 hdc = CreateCompatibleDC (NULL); |
1440 FONT_INSTANCE_MSWINDOWS_HFONT_VARIANT (f,0,0) = hfont; | 1385 if (hdc) |
1441 | 1386 { |
1442 /* Some underlined fonts have the descent of one pixel more than their | 1387 holdfont = SelectObject(hdc, f->data); |
1443 non-underlined counterparts. Font variants though are assumed to have | 1388 if (holdfont) |
1444 identical metrics. So get the font metrics from the underlined variant | |
1445 of the font */ | |
1446 hfont2 = mswindows_create_font_variant (f, 1, 0); | |
1447 if (hfont2 != MSWINDOWS_BAD_HFONT) | |
1448 hfont = hfont2; | |
1449 | |
1450 hfont2 = (HFONT) SelectObject (hdc, hfont); | |
1451 if (!hfont2) | |
1452 { | |
1453 mswindows_finalize_font_instance (f); | |
1454 maybe_signal_simple_error ("Couldn't map font", name, Qfont, errb); | |
1455 return 0; | |
1456 } | |
1457 GetTextMetrics (hdc, &metrics); | |
1458 SelectObject(hdc, hfont2); | |
1459 | |
1460 f->width = (unsigned short) metrics.tmAveCharWidth; | |
1461 f->height = (unsigned short) metrics.tmHeight; | |
1462 f->ascent = (unsigned short) metrics.tmAscent; | |
1463 f->descent = (unsigned short) metrics.tmDescent; | |
1464 f->proportional_p = (metrics.tmPitchAndFamily & TMPF_FIXED_PITCH); | |
1465 | |
1466 return 1; | |
1467 } | |
1468 | |
1469 static int | |
1470 mswindows_initialize_font_instance (Lisp_Font_Instance *f, Lisp_Object name, | |
1471 Lisp_Object device, Error_behavior errb) | |
1472 { | |
1473 HDC hdc = CreateCompatibleDC (NULL); | |
1474 Lisp_Object font_list = DEVICE_MSWINDOWS_FONTLIST (XDEVICE (device)); | |
1475 int res = initialize_font_instance (f, name, font_list, hdc, errb); | |
1476 DeleteDC (hdc); | |
1477 return res; | |
1478 } | |
1479 | |
1480 static int | |
1481 msprinter_initialize_font_instance (Lisp_Font_Instance *f, Lisp_Object name, | |
1482 Lisp_Object device, Error_behavior errb) | |
1483 { | |
1484 HDC hdc = DEVICE_MSPRINTER_HDC (XDEVICE (device)); | |
1485 Lisp_Object font_list = DEVICE_MSPRINTER_FONTLIST (XDEVICE (device)); | |
1486 return initialize_font_instance (f, name, font_list, hdc, errb); | |
1487 } | |
1488 | |
1489 static void | |
1490 mswindows_finalize_font_instance (Lisp_Font_Instance *f) | |
1491 { | |
1492 int i; | |
1493 | |
1494 if (f->data) | |
1495 { | |
1496 for (i = 0; i < MSWINDOWS_NUM_FONT_VARIANTS; i++) | |
1497 { | 1389 { |
1498 if (FONT_INSTANCE_MSWINDOWS_HFONT_I (f, i) != NULL | 1390 GetTextMetrics (hdc, &metrics); |
1499 && FONT_INSTANCE_MSWINDOWS_HFONT_I (f, i) != MSWINDOWS_BAD_HFONT) | 1391 SelectObject(hdc, holdfont); |
1500 DeleteObject (FONT_INSTANCE_MSWINDOWS_HFONT_I (f, i)); | 1392 DeleteDC (hdc); |
1393 f->width = (unsigned short) metrics.tmAveCharWidth; | |
1394 f->height = (unsigned short) metrics.tmHeight; | |
1395 f->ascent = (unsigned short) metrics.tmAscent; | |
1396 f->descent = (unsigned short) metrics.tmDescent; | |
1397 f->proportional_p = (metrics.tmPitchAndFamily & TMPF_FIXED_PITCH); | |
1398 return 1; | |
1501 } | 1399 } |
1502 | 1400 DeleteDC (hdc); |
1503 xfree (f->data); | 1401 } |
1504 f->data = 0; | 1402 mswindows_finalize_font_instance (f); |
1505 } | 1403 maybe_signal_simple_error ("Couldn't map font", name, Qfont, errb); |
1404 return 0; | |
1506 } | 1405 } |
1507 | 1406 |
1508 #if 0 | 1407 #if 0 |
1509 static void | 1408 static void |
1510 mswindows_mark_font_instance (Lisp_Font_Instance *f) | 1409 mswindows_mark_font_instance (struct Lisp_Font_Instance *f, |
1410 void (*markobj) (Lisp_Object)) | |
1511 { | 1411 { |
1512 } | 1412 } |
1513 #endif | 1413 #endif |
1514 | 1414 |
1515 static void | 1415 static void |
1516 mswindows_print_font_instance (Lisp_Font_Instance *f, | 1416 mswindows_print_font_instance (struct Lisp_Font_Instance *f, |
1517 Lisp_Object printcharfun, | 1417 Lisp_Object printcharfun, |
1518 int escapeflag) | 1418 int escapeflag) |
1519 { | 1419 { |
1520 char buf[10]; | |
1521 sprintf (buf, " 0x%lx", | |
1522 (unsigned long)FONT_INSTANCE_MSWINDOWS_HFONT_VARIANT (f,0,0)); | |
1523 write_c_string (buf, printcharfun); | |
1524 } | 1420 } |
1525 | 1421 |
1526 static Lisp_Object | 1422 static Lisp_Object |
1527 mswindows_list_fonts (Lisp_Object pattern, Lisp_Object device) | 1423 mswindows_list_fonts (Lisp_Object pattern, Lisp_Object device) |
1528 { | 1424 { |
1529 Lisp_Object fonttail, result = Qnil; | 1425 Lisp_Object result = Qnil; |
1530 char *extpattern; | 1426 struct mswindows_font_enum *fontlist; |
1531 | 1427 char fontname[MSW_FONTSIZE], *extpattern; |
1532 TO_EXTERNAL_FORMAT (LISP_STRING, pattern, | 1428 |
1533 C_STRING_ALLOCA, extpattern, | 1429 GET_C_STRING_CTEXT_DATA_ALLOCA (pattern, extpattern); |
1534 Qctext); | 1430 fontlist = DEVICE_MSWINDOWS_FONTLIST (XDEVICE (device)); |
1535 | 1431 while (fontlist) |
1536 LIST_LOOP (fonttail, DEVICE_MSWINDOWS_FONTLIST (XDEVICE (device))) | 1432 { |
1537 { | 1433 if (match_font (fontlist->fontname, extpattern, fontname)) |
1538 if (match_font (XSTRING_DATA (XCAR (fonttail)), extpattern, NULL)) | 1434 result = Fcons (build_string (fontname), result); |
1539 result = Fcons (XCAR (fonttail), result); | 1435 fontlist = fontlist->next; |
1540 } | 1436 } |
1541 | 1437 |
1542 return Fnreverse (result); | 1438 return Fnreverse (result); |
1543 } | 1439 } |
1544 | 1440 |
1551 * A maximal mswindows font spec looks like: | 1447 * A maximal mswindows font spec looks like: |
1552 * Courier New:Bold Italic:10:underline strikeout:Western | 1448 * Courier New:Bold Italic:10:underline strikeout:Western |
1553 * Missing parts of the font spec should be filled in with these values: | 1449 * Missing parts of the font spec should be filled in with these values: |
1554 * Courier New:Regular:10::Western */ | 1450 * Courier New:Regular:10::Western */ |
1555 static Lisp_Object | 1451 static Lisp_Object |
1556 mswindows_font_instance_truename (Lisp_Font_Instance *f, Error_behavior errb) | 1452 mswindows_font_instance_truename (struct Lisp_Font_Instance *f, Error_behavior errb) |
1557 { | 1453 { |
1558 int nsep=0; | 1454 int nsep=0; |
1559 char *name = (char *) XSTRING_DATA (f->name); | 1455 char *name = (char *) XSTRING_DATA (f->name); |
1560 char* ptr = name; | 1456 char* ptr = name; |
1561 char* extname = (char*) alloca (strlen (name) + 19); | 1457 char* extname = alloca (strlen (name) + 19); |
1562 strcpy (extname, name); | 1458 strcpy (extname, name); |
1563 | 1459 |
1564 while ((ptr = strchr (ptr, ':')) != 0) | 1460 while ((ptr = strchr (ptr, ':')) != 0) |
1565 { | 1461 { |
1566 ptr++; | 1462 ptr++; |
1582 strcat (extname, ":Western"); | 1478 strcat (extname, ":Western"); |
1583 break; | 1479 break; |
1584 default:; | 1480 default:; |
1585 } | 1481 } |
1586 | 1482 |
1587 return build_ext_string (extname, Qnative); | 1483 return build_ext_string (extname, FORMAT_OS); |
1588 } | 1484 } |
1589 | 1485 |
1590 #ifdef MULE | 1486 #ifdef MULE |
1591 | 1487 |
1592 static int | 1488 static int |
1593 mswindows_font_spec_matches_charset (struct device *d, Lisp_Object charset, | 1489 mswindows_font_spec_matches_charset (struct device *d, Lisp_Object charset, |
1594 const Bufbyte *nonreloc, Lisp_Object reloc, | 1490 CONST Bufbyte *nonreloc, Lisp_Object reloc, |
1595 Bytecount offset, Bytecount length) | 1491 Bytecount offset, Bytecount length) |
1596 { | 1492 { |
1597 /* #### Implement me */ | 1493 /* #### Implement me */ |
1598 if (UNBOUNDP (charset)) | 1494 if (UNBOUNDP (charset)) |
1599 return 1; | 1495 return 1; |
1665 CONSOLE_HAS_METHOD (mswindows, list_fonts); | 1561 CONSOLE_HAS_METHOD (mswindows, list_fonts); |
1666 #ifdef MULE | 1562 #ifdef MULE |
1667 CONSOLE_HAS_METHOD (mswindows, font_spec_matches_charset); | 1563 CONSOLE_HAS_METHOD (mswindows, font_spec_matches_charset); |
1668 CONSOLE_HAS_METHOD (mswindows, find_charset_font); | 1564 CONSOLE_HAS_METHOD (mswindows, find_charset_font); |
1669 #endif | 1565 #endif |
1670 | |
1671 /* Printer methods - delegate most to windows methods, | |
1672 since graphical objects behave the same way. */ | |
1673 | |
1674 CONSOLE_INHERITS_METHOD (msprinter, mswindows, initialize_color_instance); | |
1675 /* CONSOLE_INHERITS_METHOD (msprinter, mswindows, mark_color_instance); */ | |
1676 CONSOLE_INHERITS_METHOD (msprinter, mswindows, print_color_instance); | |
1677 CONSOLE_INHERITS_METHOD (msprinter, mswindows, finalize_color_instance); | |
1678 CONSOLE_INHERITS_METHOD (msprinter, mswindows, color_instance_equal); | |
1679 CONSOLE_INHERITS_METHOD (msprinter, mswindows, color_instance_hash); | |
1680 CONSOLE_INHERITS_METHOD (msprinter, mswindows, color_instance_rgb_components); | |
1681 CONSOLE_INHERITS_METHOD (msprinter, mswindows, valid_color_name_p); | |
1682 | |
1683 CONSOLE_HAS_METHOD (msprinter, initialize_font_instance); | |
1684 /* CONSOLE_INHERITS_METHOD (msprinter, mswindows, mark_font_instance); */ | |
1685 CONSOLE_INHERITS_METHOD (msprinter, mswindows, print_font_instance); | |
1686 CONSOLE_INHERITS_METHOD (msprinter, mswindows, finalize_font_instance); | |
1687 CONSOLE_INHERITS_METHOD (msprinter, mswindows, font_instance_truename); | |
1688 CONSOLE_INHERITS_METHOD (msprinter, mswindows, list_fonts); | |
1689 #ifdef MULE | |
1690 CONSOLE_INHERITS_METHOD (msprinter, mswindows, font_spec_matches_charset); | |
1691 CONSOLE_INHERITS_METHOD (msprinter, mswindows, find_charset_font); | |
1692 #endif | |
1693 } | 1566 } |
1694 | 1567 |
1695 void | 1568 void |
1696 vars_of_objects_mswindows (void) | 1569 vars_of_objects_mswindows (void) |
1697 { | 1570 { |