3 // Copyright (c) 2002 Iain Murray
5 #include "../Common/Common.h"
10 using namespace Dasher
;
12 //using namespace expat;
14 // Track memory leaks on Windows to the line that new'd the memory
17 #define DEBUG_NEW new( _NORMAL_BLOCK, THIS_FILE, __LINE__ )
20 static char THIS_FILE
[] = __FILE__
;
24 // TODO: Share information with AlphIO class?
26 CColourIO::CColourIO(CMessageDisplay
*pMsgs
) : AbstractXMLParser(pMsgs
), BlankInfo() {
30 void CColourIO::GetColours(std::vector
<std::string
>*ColourList
) const {
33 typedef std::map
< std::string
, ColourInfo
>::const_iterator CI
;
34 CI End
= Colours
.end();
36 for(CI Cur
= Colours
.begin(); Cur
!= End
; Cur
++)
37 ColourList
->push_back((*Cur
).second
.ColourID
);
40 const CColourIO::ColourInfo
& CColourIO::GetInfo(const std::string
&ColourID
) {
41 if(ColourID
== "") // return Default if no colour scheme is specified
42 return Colours
["Default"];
44 if(Colours
.count(ColourID
) != 0) {
45 Colours
[ColourID
].ColourID
= ColourID
; // Ensure consistency
46 return Colours
[ColourID
];
49 // if we don't have the colour scheme they asked for, return default
50 return Colours
["Default"];
55 void CColourIO::CreateDefault() {
56 // TODO: Urgh - replace with a table
58 ColourInfo
& Default
= Colours
["Default"];
59 Default
.ColourID
= "Default";
60 Default
.Mutable
= false;
61 Default
.Reds
.push_back(255);
62 Default
.Greens
.push_back(255);
63 Default
.Blues
.push_back(255);
64 Default
.Reds
.push_back(255);
65 Default
.Greens
.push_back(0);
66 Default
.Blues
.push_back(0);
67 Default
.Reds
.push_back(0);
68 Default
.Greens
.push_back(0);
69 Default
.Blues
.push_back(0);
70 Default
.Reds
.push_back(218);
71 Default
.Greens
.push_back(218);
72 Default
.Blues
.push_back(218);
73 Default
.Reds
.push_back(0);
74 Default
.Greens
.push_back(0);
75 Default
.Blues
.push_back(0);
76 Default
.Reds
.push_back(0);
77 Default
.Greens
.push_back(0);
78 Default
.Blues
.push_back(0);
79 Default
.Reds
.push_back(0);
80 Default
.Greens
.push_back(0);
81 Default
.Blues
.push_back(0);
82 Default
.Reds
.push_back(180);
83 Default
.Greens
.push_back(238);
84 Default
.Blues
.push_back(180);
85 Default
.Reds
.push_back(80);
86 Default
.Greens
.push_back(80);
87 Default
.Blues
.push_back(80);
88 Default
.Reds
.push_back(235);
89 Default
.Greens
.push_back(235);
90 Default
.Blues
.push_back(235);
91 Default
.Reds
.push_back(0);
92 Default
.Greens
.push_back(255);
93 Default
.Blues
.push_back(255);
94 Default
.Reds
.push_back(180);
95 Default
.Greens
.push_back(238);
96 Default
.Blues
.push_back(180);
97 Default
.Reds
.push_back(155);
98 Default
.Greens
.push_back(205);
99 Default
.Blues
.push_back(155);
100 Default
.Reds
.push_back(0);
101 Default
.Greens
.push_back(255);
102 Default
.Blues
.push_back(255);
103 Default
.Reds
.push_back(180);
104 Default
.Greens
.push_back(238);
105 Default
.Blues
.push_back(180);
106 Default
.Reds
.push_back(155);
107 Default
.Greens
.push_back(205);
108 Default
.Blues
.push_back(155);
109 Default
.Reds
.push_back(0);
110 Default
.Greens
.push_back(255);
111 Default
.Blues
.push_back(255);
112 Default
.Reds
.push_back(180);
113 Default
.Greens
.push_back(238);
114 Default
.Blues
.push_back(180);
115 Default
.Reds
.push_back(155);
116 Default
.Greens
.push_back(205);
117 Default
.Blues
.push_back(155);
118 Default
.Reds
.push_back(0);
119 Default
.Greens
.push_back(255);
120 Default
.Blues
.push_back(255);
121 Default
.Reds
.push_back(180);
122 Default
.Greens
.push_back(238);
123 Default
.Blues
.push_back(180);
124 Default
.Reds
.push_back(155);
125 Default
.Greens
.push_back(205);
126 Default
.Blues
.push_back(155);
127 Default
.Reds
.push_back(0);
128 Default
.Greens
.push_back(255);
129 Default
.Blues
.push_back(255);
130 Default
.Reds
.push_back(180);
131 Default
.Greens
.push_back(238);
132 Default
.Blues
.push_back(180);
133 Default
.Reds
.push_back(155);
134 Default
.Greens
.push_back(205);
135 Default
.Blues
.push_back(155);
136 Default
.Reds
.push_back(0);
137 Default
.Greens
.push_back(255);
138 Default
.Blues
.push_back(255);
139 Default
.Reds
.push_back(180);
140 Default
.Greens
.push_back(238);
141 Default
.Blues
.push_back(180);
142 Default
.Reds
.push_back(155);
143 Default
.Greens
.push_back(205);
144 Default
.Blues
.push_back(155);
145 Default
.Reds
.push_back(0);
146 Default
.Greens
.push_back(255);
147 Default
.Blues
.push_back(255);
148 Default
.Reds
.push_back(180);
149 Default
.Greens
.push_back(238);
150 Default
.Blues
.push_back(180);
151 Default
.Reds
.push_back(155);
152 Default
.Greens
.push_back(205);
153 Default
.Blues
.push_back(155);
154 Default
.Reds
.push_back(0);
155 Default
.Greens
.push_back(255);
156 Default
.Blues
.push_back(255);
157 Default
.Reds
.push_back(180);
158 Default
.Greens
.push_back(238);
159 Default
.Blues
.push_back(180);
160 Default
.Reds
.push_back(155);
161 Default
.Greens
.push_back(205);
162 Default
.Blues
.push_back(155);
163 Default
.Reds
.push_back(0);
164 Default
.Greens
.push_back(255);
165 Default
.Blues
.push_back(255);
166 Default
.Reds
.push_back(180);
167 Default
.Greens
.push_back(238);
168 Default
.Blues
.push_back(180);
169 Default
.Reds
.push_back(155);
170 Default
.Greens
.push_back(205);
171 Default
.Blues
.push_back(155);
172 Default
.Reds
.push_back(0);
173 Default
.Greens
.push_back(255);
174 Default
.Blues
.push_back(255);
175 Default
.Reds
.push_back(180);
176 Default
.Greens
.push_back(238);
177 Default
.Blues
.push_back(180);
178 Default
.Reds
.push_back(155);
179 Default
.Greens
.push_back(205);
180 Default
.Blues
.push_back(155);
181 Default
.Reds
.push_back(0);
182 Default
.Greens
.push_back(255);
183 Default
.Blues
.push_back(255);
184 Default
.Reds
.push_back(180);
185 Default
.Greens
.push_back(238);
186 Default
.Blues
.push_back(180);
187 Default
.Reds
.push_back(155);
188 Default
.Greens
.push_back(205);
189 Default
.Blues
.push_back(155);
190 Default
.Reds
.push_back(0);
191 Default
.Greens
.push_back(255);
192 Default
.Blues
.push_back(255);
193 Default
.Reds
.push_back(180);
194 Default
.Greens
.push_back(238);
195 Default
.Blues
.push_back(180);
196 Default
.Reds
.push_back(155);
197 Default
.Greens
.push_back(205);
198 Default
.Blues
.push_back(155);
199 Default
.Reds
.push_back(0);
200 Default
.Greens
.push_back(255);
201 Default
.Blues
.push_back(255);
202 Default
.Reds
.push_back(180);
203 Default
.Greens
.push_back(238);
204 Default
.Blues
.push_back(180);
205 Default
.Reds
.push_back(155);
206 Default
.Greens
.push_back(205);
207 Default
.Blues
.push_back(155);
208 Default
.Reds
.push_back(0);
209 Default
.Greens
.push_back(255);
210 Default
.Blues
.push_back(255);
211 Default
.Reds
.push_back(180);
212 Default
.Greens
.push_back(238);
213 Default
.Blues
.push_back(180);
214 Default
.Reds
.push_back(155);
215 Default
.Greens
.push_back(205);
216 Default
.Blues
.push_back(155);
217 Default
.Reds
.push_back(0);
218 Default
.Greens
.push_back(255);
219 Default
.Blues
.push_back(255);
220 Default
.Reds
.push_back(180);
221 Default
.Greens
.push_back(238);
222 Default
.Blues
.push_back(180);
223 Default
.Reds
.push_back(155);
224 Default
.Greens
.push_back(205);
225 Default
.Blues
.push_back(155);
226 Default
.Reds
.push_back(0);
227 Default
.Greens
.push_back(255);
228 Default
.Blues
.push_back(255);
229 Default
.Reds
.push_back(180);
230 Default
.Greens
.push_back(238);
231 Default
.Blues
.push_back(180);
232 Default
.Reds
.push_back(155);
233 Default
.Greens
.push_back(205);
234 Default
.Blues
.push_back(155);
235 Default
.Reds
.push_back(0);
236 Default
.Greens
.push_back(255);
237 Default
.Blues
.push_back(255);
238 Default
.Reds
.push_back(180);
239 Default
.Greens
.push_back(238);
240 Default
.Blues
.push_back(180);
241 Default
.Reds
.push_back(155);
242 Default
.Greens
.push_back(205);
243 Default
.Blues
.push_back(155);
244 Default
.Reds
.push_back(0);
245 Default
.Greens
.push_back(255);
246 Default
.Blues
.push_back(255);
247 Default
.Reds
.push_back(180);
248 Default
.Greens
.push_back(238);
249 Default
.Blues
.push_back(180);
250 Default
.Reds
.push_back(155);
251 Default
.Greens
.push_back(205);
252 Default
.Blues
.push_back(155);
253 Default
.Reds
.push_back(0);
254 Default
.Greens
.push_back(255);
255 Default
.Blues
.push_back(255);
256 Default
.Reds
.push_back(180);
257 Default
.Greens
.push_back(238);
258 Default
.Blues
.push_back(180);
259 Default
.Reds
.push_back(155);
260 Default
.Greens
.push_back(205);
261 Default
.Blues
.push_back(155);
262 Default
.Reds
.push_back(0);
263 Default
.Greens
.push_back(255);
264 Default
.Blues
.push_back(255);
265 Default
.Reds
.push_back(180);
266 Default
.Greens
.push_back(238);
267 Default
.Blues
.push_back(180);
268 Default
.Reds
.push_back(155);
269 Default
.Greens
.push_back(205);
270 Default
.Blues
.push_back(155);
271 Default
.Reds
.push_back(0);
272 Default
.Greens
.push_back(255);
273 Default
.Blues
.push_back(255);
274 Default
.Reds
.push_back(180);
275 Default
.Greens
.push_back(238);
276 Default
.Blues
.push_back(180);
277 Default
.Reds
.push_back(155);
278 Default
.Greens
.push_back(205);
279 Default
.Blues
.push_back(155);
280 Default
.Reds
.push_back(0);
281 Default
.Greens
.push_back(255);
282 Default
.Blues
.push_back(255);
283 Default
.Reds
.push_back(180);
284 Default
.Greens
.push_back(238);
285 Default
.Blues
.push_back(180);
286 Default
.Reds
.push_back(155);
287 Default
.Greens
.push_back(205);
288 Default
.Blues
.push_back(155);
289 Default
.Reds
.push_back(0);
290 Default
.Greens
.push_back(255);
291 Default
.Blues
.push_back(255);
292 Default
.Reds
.push_back(180);
293 Default
.Greens
.push_back(238);
294 Default
.Blues
.push_back(180);
295 Default
.Reds
.push_back(155);
296 Default
.Greens
.push_back(205);
297 Default
.Blues
.push_back(155);
298 Default
.Reds
.push_back(0);
299 Default
.Greens
.push_back(255);
300 Default
.Blues
.push_back(255);
301 Default
.Reds
.push_back(180);
302 Default
.Greens
.push_back(238);
303 Default
.Blues
.push_back(180);
304 Default
.Reds
.push_back(155);
305 Default
.Greens
.push_back(205);
306 Default
.Blues
.push_back(155);
307 Default
.Reds
.push_back(0);
308 Default
.Greens
.push_back(255);
309 Default
.Blues
.push_back(255);
310 Default
.Reds
.push_back(180);
311 Default
.Greens
.push_back(238);
312 Default
.Blues
.push_back(180);
313 Default
.Reds
.push_back(155);
314 Default
.Greens
.push_back(205);
315 Default
.Blues
.push_back(155);
316 Default
.Reds
.push_back(0);
317 Default
.Greens
.push_back(255);
318 Default
.Blues
.push_back(255);
319 Default
.Reds
.push_back(180);
320 Default
.Greens
.push_back(238);
321 Default
.Blues
.push_back(180);
322 Default
.Reds
.push_back(155);
323 Default
.Greens
.push_back(205);
324 Default
.Blues
.push_back(155);
325 Default
.Reds
.push_back(0);
326 Default
.Greens
.push_back(255);
327 Default
.Blues
.push_back(255);
328 Default
.Reds
.push_back(180);
329 Default
.Greens
.push_back(238);
330 Default
.Blues
.push_back(180);
331 Default
.Reds
.push_back(155);
332 Default
.Greens
.push_back(205);
333 Default
.Blues
.push_back(155);
334 Default
.Reds
.push_back(0);
335 Default
.Greens
.push_back(255);
336 Default
.Blues
.push_back(255);
337 Default
.Reds
.push_back(180);
338 Default
.Greens
.push_back(238);
339 Default
.Blues
.push_back(180);
340 Default
.Reds
.push_back(155);
341 Default
.Greens
.push_back(205);
342 Default
.Blues
.push_back(155);
343 Default
.Reds
.push_back(0);
344 Default
.Greens
.push_back(255);
345 Default
.Blues
.push_back(255);
346 Default
.Reds
.push_back(180);
347 Default
.Greens
.push_back(238);
348 Default
.Blues
.push_back(180);
349 Default
.Reds
.push_back(155);
350 Default
.Greens
.push_back(205);
351 Default
.Blues
.push_back(155);
352 Default
.Reds
.push_back(0);
353 Default
.Greens
.push_back(255);
354 Default
.Blues
.push_back(255);
355 Default
.Reds
.push_back(180);
356 Default
.Greens
.push_back(238);
357 Default
.Blues
.push_back(180);
358 Default
.Reds
.push_back(155);
359 Default
.Greens
.push_back(205);
360 Default
.Blues
.push_back(155);
361 Default
.Reds
.push_back(0);
362 Default
.Greens
.push_back(255);
363 Default
.Blues
.push_back(255);
364 Default
.Reds
.push_back(180);
365 Default
.Greens
.push_back(238);
366 Default
.Blues
.push_back(180);
367 Default
.Reds
.push_back(155);
368 Default
.Greens
.push_back(205);
369 Default
.Blues
.push_back(155);
370 Default
.Reds
.push_back(0);
371 Default
.Greens
.push_back(255);
372 Default
.Blues
.push_back(255);
373 Default
.Reds
.push_back(180);
374 Default
.Greens
.push_back(238);
375 Default
.Blues
.push_back(180);
376 Default
.Reds
.push_back(155);
377 Default
.Greens
.push_back(205);
378 Default
.Blues
.push_back(155);
379 Default
.Reds
.push_back(0);
380 Default
.Greens
.push_back(255);
381 Default
.Blues
.push_back(255);
382 Default
.Reds
.push_back(180);
383 Default
.Greens
.push_back(238);
384 Default
.Blues
.push_back(180);
385 Default
.Reds
.push_back(155);
386 Default
.Greens
.push_back(205);
387 Default
.Blues
.push_back(155);
388 Default
.Reds
.push_back(0);
389 Default
.Greens
.push_back(255);
390 Default
.Blues
.push_back(255);
391 Default
.Reds
.push_back(255);
392 Default
.Greens
.push_back(0);
393 Default
.Blues
.push_back(0);
394 Default
.Reds
.push_back(255);
395 Default
.Greens
.push_back(255);
396 Default
.Blues
.push_back(0);
397 Default
.Reds
.push_back(0);
398 Default
.Greens
.push_back(200);
399 Default
.Blues
.push_back(0);
400 Default
.Reds
.push_back(255);
401 Default
.Greens
.push_back(0);
402 Default
.Blues
.push_back(0);
403 Default
.Reds
.push_back(255);
404 Default
.Greens
.push_back(255);
405 Default
.Blues
.push_back(0);
406 Default
.Reds
.push_back(0);
407 Default
.Greens
.push_back(200);
408 Default
.Blues
.push_back(0);
409 Default
.Reds
.push_back(255);
410 Default
.Greens
.push_back(0);
411 Default
.Blues
.push_back(0);
412 Default
.Reds
.push_back(255);
413 Default
.Greens
.push_back(255);
414 Default
.Blues
.push_back(0);
415 Default
.Reds
.push_back(0);
416 Default
.Greens
.push_back(200);
417 Default
.Blues
.push_back(0);
418 Default
.Reds
.push_back(255);
419 Default
.Greens
.push_back(0);
420 Default
.Blues
.push_back(0);
421 Default
.Reds
.push_back(255);
422 Default
.Greens
.push_back(255);
423 Default
.Blues
.push_back(0);
424 Default
.Reds
.push_back(0);
425 Default
.Greens
.push_back(200);
426 Default
.Blues
.push_back(0);
427 Default
.Reds
.push_back(255);
428 Default
.Greens
.push_back(0);
429 Default
.Blues
.push_back(0);
430 Default
.Reds
.push_back(255);
431 Default
.Greens
.push_back(255);
432 Default
.Blues
.push_back(0);
433 Default
.Reds
.push_back(0);
434 Default
.Greens
.push_back(200);
435 Default
.Blues
.push_back(0);
436 Default
.Reds
.push_back(255);
437 Default
.Greens
.push_back(0);
438 Default
.Blues
.push_back(0);
439 Default
.Reds
.push_back(255);
440 Default
.Greens
.push_back(255);
441 Default
.Blues
.push_back(0);
442 Default
.Reds
.push_back(0);
443 Default
.Greens
.push_back(200);
444 Default
.Blues
.push_back(0);
445 Default
.Reds
.push_back(255);
446 Default
.Greens
.push_back(0);
447 Default
.Blues
.push_back(0);
448 Default
.Reds
.push_back(255);
449 Default
.Greens
.push_back(255);
450 Default
.Blues
.push_back(0);
451 Default
.Reds
.push_back(0);
452 Default
.Greens
.push_back(0);
453 Default
.Blues
.push_back(0);
454 Default
.Reds
.push_back(0);
455 Default
.Greens
.push_back(0);
456 Default
.Blues
.push_back(0);
457 Default
.Reds
.push_back(0);
458 Default
.Greens
.push_back(0);
459 Default
.Blues
.push_back(0);
460 Default
.Reds
.push_back(0);
461 Default
.Greens
.push_back(0);
462 Default
.Blues
.push_back(0);
463 Default
.Reds
.push_back(0);
464 Default
.Greens
.push_back(0);
465 Default
.Blues
.push_back(0);
466 Default
.Reds
.push_back(0);
467 Default
.Greens
.push_back(0);
468 Default
.Blues
.push_back(0);
469 Default
.Reds
.push_back(0);
470 Default
.Greens
.push_back(0);
471 Default
.Blues
.push_back(0);
472 Default
.Reds
.push_back(0);
473 Default
.Greens
.push_back(0);
474 Default
.Blues
.push_back(0);
475 Default
.Reds
.push_back(80);
476 Default
.Greens
.push_back(80);
477 Default
.Blues
.push_back(80);
478 Default
.Reds
.push_back(255);
479 Default
.Greens
.push_back(255);
480 Default
.Blues
.push_back(255);
481 Default
.Reds
.push_back(135);
482 Default
.Greens
.push_back(206);
483 Default
.Blues
.push_back(255);
484 Default
.Reds
.push_back(255);
485 Default
.Greens
.push_back(174);
486 Default
.Blues
.push_back(185);
487 Default
.Reds
.push_back(255);
488 Default
.Greens
.push_back(187);
489 Default
.Blues
.push_back(255);
490 Default
.Reds
.push_back(135);
491 Default
.Greens
.push_back(206);
492 Default
.Blues
.push_back(255);
493 Default
.Reds
.push_back(255);
494 Default
.Greens
.push_back(174);
495 Default
.Blues
.push_back(185);
496 Default
.Reds
.push_back(255);
497 Default
.Greens
.push_back(187);
498 Default
.Blues
.push_back(255);
499 Default
.Reds
.push_back(135);
500 Default
.Greens
.push_back(206);
501 Default
.Blues
.push_back(255);
502 Default
.Reds
.push_back(255);
503 Default
.Greens
.push_back(174);
504 Default
.Blues
.push_back(185);
505 Default
.Reds
.push_back(255);
506 Default
.Greens
.push_back(187);
507 Default
.Blues
.push_back(255);
508 Default
.Reds
.push_back(135);
509 Default
.Greens
.push_back(206);
510 Default
.Blues
.push_back(255);
511 Default
.Reds
.push_back(255);
512 Default
.Greens
.push_back(174);
513 Default
.Blues
.push_back(185);
514 Default
.Reds
.push_back(255);
515 Default
.Greens
.push_back(187);
516 Default
.Blues
.push_back(255);
517 Default
.Reds
.push_back(135);
518 Default
.Greens
.push_back(206);
519 Default
.Blues
.push_back(255);
520 Default
.Reds
.push_back(255);
521 Default
.Greens
.push_back(174);
522 Default
.Blues
.push_back(185);
523 Default
.Reds
.push_back(255);
524 Default
.Greens
.push_back(187);
525 Default
.Blues
.push_back(255);
526 Default
.Reds
.push_back(135);
527 Default
.Greens
.push_back(206);
528 Default
.Blues
.push_back(255);
529 Default
.Reds
.push_back(255);
530 Default
.Greens
.push_back(174);
531 Default
.Blues
.push_back(185);
532 Default
.Reds
.push_back(255);
533 Default
.Greens
.push_back(187);
534 Default
.Blues
.push_back(255);
535 Default
.Reds
.push_back(135);
536 Default
.Greens
.push_back(206);
537 Default
.Blues
.push_back(255);
538 Default
.Reds
.push_back(255);
539 Default
.Greens
.push_back(174);
540 Default
.Blues
.push_back(185);
541 Default
.Reds
.push_back(255);
542 Default
.Greens
.push_back(187);
543 Default
.Blues
.push_back(255);
544 Default
.Reds
.push_back(135);
545 Default
.Greens
.push_back(206);
546 Default
.Blues
.push_back(255);
547 Default
.Reds
.push_back(255);
548 Default
.Greens
.push_back(174);
549 Default
.Blues
.push_back(185);
550 Default
.Reds
.push_back(255);
551 Default
.Greens
.push_back(187);
552 Default
.Blues
.push_back(255);
553 Default
.Reds
.push_back(135);
554 Default
.Greens
.push_back(206);
555 Default
.Blues
.push_back(255);
556 Default
.Reds
.push_back(255);
557 Default
.Greens
.push_back(174);
558 Default
.Blues
.push_back(185);
559 Default
.Reds
.push_back(255);
560 Default
.Greens
.push_back(187);
561 Default
.Blues
.push_back(255);
562 Default
.Reds
.push_back(135);
563 Default
.Greens
.push_back(206);
564 Default
.Blues
.push_back(255);
565 Default
.Reds
.push_back(255);
566 Default
.Greens
.push_back(174);
567 Default
.Blues
.push_back(185);
568 Default
.Reds
.push_back(255);
569 Default
.Greens
.push_back(187);
570 Default
.Blues
.push_back(255);
571 Default
.Reds
.push_back(135);
572 Default
.Greens
.push_back(206);
573 Default
.Blues
.push_back(255);
574 Default
.Reds
.push_back(255);
575 Default
.Greens
.push_back(174);
576 Default
.Blues
.push_back(185);
577 Default
.Reds
.push_back(255);
578 Default
.Greens
.push_back(187);
579 Default
.Blues
.push_back(255);
580 Default
.Reds
.push_back(135);
581 Default
.Greens
.push_back(206);
582 Default
.Blues
.push_back(255);
583 Default
.Reds
.push_back(255);
584 Default
.Greens
.push_back(174);
585 Default
.Blues
.push_back(185);
586 Default
.Reds
.push_back(255);
587 Default
.Greens
.push_back(187);
588 Default
.Blues
.push_back(255);
589 Default
.Reds
.push_back(135);
590 Default
.Greens
.push_back(206);
591 Default
.Blues
.push_back(255);
592 Default
.Reds
.push_back(255);
593 Default
.Greens
.push_back(174);
594 Default
.Blues
.push_back(185);
595 Default
.Reds
.push_back(255);
596 Default
.Greens
.push_back(187);
597 Default
.Blues
.push_back(255);
598 Default
.Reds
.push_back(135);
599 Default
.Greens
.push_back(206);
600 Default
.Blues
.push_back(255);
601 Default
.Reds
.push_back(255);
602 Default
.Greens
.push_back(174);
603 Default
.Blues
.push_back(185);
604 Default
.Reds
.push_back(255);
605 Default
.Greens
.push_back(187);
606 Default
.Blues
.push_back(255);
607 Default
.Reds
.push_back(135);
608 Default
.Greens
.push_back(206);
609 Default
.Blues
.push_back(255);
610 Default
.Reds
.push_back(255);
611 Default
.Greens
.push_back(174);
612 Default
.Blues
.push_back(185);
613 Default
.Reds
.push_back(255);
614 Default
.Greens
.push_back(187);
615 Default
.Blues
.push_back(255);
616 Default
.Reds
.push_back(135);
617 Default
.Greens
.push_back(206);
618 Default
.Blues
.push_back(255);
619 Default
.Reds
.push_back(255);
620 Default
.Greens
.push_back(174);
621 Default
.Blues
.push_back(185);
622 Default
.Reds
.push_back(255);
623 Default
.Greens
.push_back(187);
624 Default
.Blues
.push_back(255);
625 Default
.Reds
.push_back(135);
626 Default
.Greens
.push_back(206);
627 Default
.Blues
.push_back(255);
628 Default
.Reds
.push_back(255);
629 Default
.Greens
.push_back(174);
630 Default
.Blues
.push_back(185);
631 Default
.Reds
.push_back(255);
632 Default
.Greens
.push_back(187);
633 Default
.Blues
.push_back(255);
634 Default
.Reds
.push_back(135);
635 Default
.Greens
.push_back(206);
636 Default
.Blues
.push_back(255);
637 Default
.Reds
.push_back(255);
638 Default
.Greens
.push_back(174);
639 Default
.Blues
.push_back(185);
640 Default
.Reds
.push_back(255);
641 Default
.Greens
.push_back(187);
642 Default
.Blues
.push_back(255);
643 Default
.Reds
.push_back(135);
644 Default
.Greens
.push_back(206);
645 Default
.Blues
.push_back(255);
646 Default
.Reds
.push_back(255);
647 Default
.Greens
.push_back(174);
648 Default
.Blues
.push_back(185);
649 Default
.Reds
.push_back(255);
650 Default
.Greens
.push_back(187);
651 Default
.Blues
.push_back(255);
652 Default
.Reds
.push_back(135);
653 Default
.Greens
.push_back(206);
654 Default
.Blues
.push_back(255);
655 Default
.Reds
.push_back(255);
656 Default
.Greens
.push_back(174);
657 Default
.Blues
.push_back(185);
658 Default
.Reds
.push_back(255);
659 Default
.Greens
.push_back(187);
660 Default
.Blues
.push_back(255);
661 Default
.Reds
.push_back(135);
662 Default
.Greens
.push_back(206);
663 Default
.Blues
.push_back(255);
664 Default
.Reds
.push_back(255);
665 Default
.Greens
.push_back(174);
666 Default
.Blues
.push_back(185);
667 Default
.Reds
.push_back(255);
668 Default
.Greens
.push_back(187);
669 Default
.Blues
.push_back(255);
670 Default
.Reds
.push_back(135);
671 Default
.Greens
.push_back(206);
672 Default
.Blues
.push_back(255);
673 Default
.Reds
.push_back(255);
674 Default
.Greens
.push_back(174);
675 Default
.Blues
.push_back(185);
676 Default
.Reds
.push_back(255);
677 Default
.Greens
.push_back(187);
678 Default
.Blues
.push_back(255);
679 Default
.Reds
.push_back(135);
680 Default
.Greens
.push_back(206);
681 Default
.Blues
.push_back(255);
682 Default
.Reds
.push_back(255);
683 Default
.Greens
.push_back(174);
684 Default
.Blues
.push_back(185);
685 Default
.Reds
.push_back(255);
686 Default
.Greens
.push_back(187);
687 Default
.Blues
.push_back(255);
688 Default
.Reds
.push_back(135);
689 Default
.Greens
.push_back(206);
690 Default
.Blues
.push_back(255);
691 Default
.Reds
.push_back(255);
692 Default
.Greens
.push_back(174);
693 Default
.Blues
.push_back(185);
694 Default
.Reds
.push_back(255);
695 Default
.Greens
.push_back(187);
696 Default
.Blues
.push_back(255);
697 Default
.Reds
.push_back(135);
698 Default
.Greens
.push_back(206);
699 Default
.Blues
.push_back(255);
700 Default
.Reds
.push_back(255);
701 Default
.Greens
.push_back(174);
702 Default
.Blues
.push_back(185);
703 Default
.Reds
.push_back(255);
704 Default
.Greens
.push_back(187);
705 Default
.Blues
.push_back(255);
706 Default
.Reds
.push_back(135);
707 Default
.Greens
.push_back(206);
708 Default
.Blues
.push_back(255);
709 Default
.Reds
.push_back(255);
710 Default
.Greens
.push_back(174);
711 Default
.Blues
.push_back(185);
712 Default
.Reds
.push_back(255);
713 Default
.Greens
.push_back(187);
714 Default
.Blues
.push_back(255);
715 Default
.Reds
.push_back(135);
716 Default
.Greens
.push_back(206);
717 Default
.Blues
.push_back(255);
718 Default
.Reds
.push_back(255);
719 Default
.Greens
.push_back(174);
720 Default
.Blues
.push_back(185);
721 Default
.Reds
.push_back(255);
722 Default
.Greens
.push_back(187);
723 Default
.Blues
.push_back(255);
724 Default
.Reds
.push_back(135);
725 Default
.Greens
.push_back(206);
726 Default
.Blues
.push_back(255);
727 Default
.Reds
.push_back(255);
728 Default
.Greens
.push_back(174);
729 Default
.Blues
.push_back(185);
730 Default
.Reds
.push_back(255);
731 Default
.Greens
.push_back(187);
732 Default
.Blues
.push_back(255);
733 Default
.Reds
.push_back(135);
734 Default
.Greens
.push_back(206);
735 Default
.Blues
.push_back(255);
736 Default
.Reds
.push_back(255);
737 Default
.Greens
.push_back(174);
738 Default
.Blues
.push_back(185);
739 Default
.Reds
.push_back(255);
740 Default
.Greens
.push_back(187);
741 Default
.Blues
.push_back(255);
742 Default
.Reds
.push_back(135);
743 Default
.Greens
.push_back(206);
744 Default
.Blues
.push_back(255);
745 Default
.Reds
.push_back(255);
746 Default
.Greens
.push_back(174);
747 Default
.Blues
.push_back(185);
748 Default
.Reds
.push_back(255);
749 Default
.Greens
.push_back(187);
750 Default
.Blues
.push_back(255);
751 Default
.Reds
.push_back(135);
752 Default
.Greens
.push_back(206);
753 Default
.Blues
.push_back(255);
754 Default
.Reds
.push_back(255);
755 Default
.Greens
.push_back(174);
756 Default
.Blues
.push_back(185);
757 Default
.Reds
.push_back(255);
758 Default
.Greens
.push_back(187);
759 Default
.Blues
.push_back(255);
760 Default
.Reds
.push_back(135);
761 Default
.Greens
.push_back(206);
762 Default
.Blues
.push_back(255);
763 Default
.Reds
.push_back(255);
764 Default
.Greens
.push_back(174);
765 Default
.Blues
.push_back(185);
766 Default
.Reds
.push_back(255);
767 Default
.Greens
.push_back(187);
768 Default
.Blues
.push_back(255);
769 Default
.Reds
.push_back(135);
770 Default
.Greens
.push_back(206);
771 Default
.Blues
.push_back(255);
772 Default
.Reds
.push_back(255);
773 Default
.Greens
.push_back(174);
774 Default
.Blues
.push_back(185);
775 Default
.Reds
.push_back(255);
776 Default
.Greens
.push_back(187);
777 Default
.Blues
.push_back(255);
778 Default
.Reds
.push_back(135);
779 Default
.Greens
.push_back(206);
780 Default
.Blues
.push_back(255);
781 Default
.Reds
.push_back(0);
782 Default
.Greens
.push_back(255);
783 Default
.Blues
.push_back(0);
784 Default
.Reds
.push_back(240);
785 Default
.Greens
.push_back(240);
786 Default
.Blues
.push_back(0);
787 Default
.Reds
.push_back(255);
788 Default
.Greens
.push_back(0);
789 Default
.Blues
.push_back(0);
793 // Below here handlers for the Expat XML input library
794 ////////////////////////////////////////////////////////////////////////////////////
796 void CColourIO::XmlStartHandler(const XML_Char
*name
, const XML_Char
**atts
) {
800 if(strcmp(name
, "palette") == 0) {
803 InputInfo
.Mutable
= isUser();
805 if(strcmp(*atts
, "name") == 0) {
806 InputInfo
.ColourID
= *(atts
+1);
812 if(strcmp(name
, "colour") == 0) {
814 if(strcmp(*atts
, "r") == 0) {
815 InputInfo
.Reds
.push_back(atoi(*(atts
+1)));
817 if(strcmp(*atts
, "g") == 0) {
818 InputInfo
.Greens
.push_back(atoi(*(atts
+1)));
820 if(strcmp(*atts
, "b") == 0) {
821 InputInfo
.Blues
.push_back(atoi(*(atts
+1)));
828 void CColourIO::XmlEndHandler(const XML_Char
*name
) {
830 if(strcmp(name
, "palette") == 0) {
831 Colours
[InputInfo
.ColourID
] = InputInfo
;
836 void CColourIO::XmlCData(const XML_Char
*s
, int len
) {
837 // CAREFUL: s points to a string which is NOT null-terminated.
838 CData
.append(s
, len
);