| 1 | /* |
| 2 | * Copyright (C) 1989-95 GROUPE BULL |
| 3 | * |
| 4 | * Permission is hereby granted, free of charge, to any person obtaining a copy |
| 5 | * of this software and associated documentation files (the "Software"), to |
| 6 | * deal in the Software without restriction, including without limitation the |
| 7 | * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or |
| 8 | * sell copies of the Software, and to permit persons to whom the Software is |
| 9 | * furnished to do so, subject to the following conditions: |
| 10 | * |
| 11 | * The above copyright notice and this permission notice shall be included in |
| 12 | * all copies or substantial portions of the Software. |
| 13 | * |
| 14 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| 15 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| 16 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
| 17 | * GROUPE BULL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN |
| 18 | * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN |
| 19 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
| 20 | * |
| 21 | * Except as contained in this notice, the name of GROUPE BULL shall not be |
| 22 | * used in advertising or otherwise to promote the sale, use or other dealings |
| 23 | * in this Software without prior written authorization from GROUPE BULL. |
| 24 | */ |
| 25 | |
| 26 | /*****************************************************************************\ |
| 27 | * rgbtab.h * |
| 28 | * * |
| 29 | * A hard coded rgb.txt. To keep it short I removed all colornames with * |
| 30 | * trailing numbers, Blue3 etc, except the GrayXX. Sorry Grey-lovers I prefer * |
| 31 | * Gray ;-). But Grey is recognized on lookups, only on save Gray will be * |
| 32 | * used, maybe you want to do some substitue there too. * |
| 33 | * * |
| 34 | * To save memory the RGBs are coded in one long value, as done by the RGB * |
| 35 | * macro. * |
| 36 | * * |
| 37 | * Developed by HeDu 3/94 (hedu@cul-ipn.uni-kiel.de) * |
| 38 | \*****************************************************************************/ |
| 39 | |
| 40 | |
| 41 | typedef struct { |
| 42 | char *name; |
| 43 | unsigned long rgb; /* it's unsigned long */ |
| 44 | } rgbRecord; |
| 45 | |
| 46 | /* |
| 47 | #define myRGB(r,g,b) \ |
| 48 | ((unsigned long)r<<16|(unsigned long)g<<8|(unsigned long)b) |
| 49 | */ |
| 50 | #ifdef FOR_MSW |
| 51 | #define myRGB(r,g,b) RGB(r,g,b) /* MSW has this macro */ |
| 52 | #else |
| 53 | #define myRGB(r,g,b)((r<<16)+(g<<8)+(b)) |
| 54 | #define GetRValue(c) ((((c&0x00FF0000)>>16)<<8)+((c&0x00FF0000)>>16)) |
| 55 | #define GetGValue(c) ((((c&0x0000FF00)>>8)<<8)+((c&0x0000FF00)>>8)) |
| 56 | #define GetBValue(c) (((c&0x000000FF)<<8)+(c&0x000000FF)) |
| 57 | #endif |
| 58 | |
| 59 | static rgbRecord theRGBRecords[] = |
| 60 | { |
| 61 | {"AliceBlue", myRGB(240, 248, 255)}, |
| 62 | {"AntiqueWhite", myRGB(250, 235, 215)}, |
| 63 | {"Aquamarine", myRGB(50, 191, 193)}, |
| 64 | {"Azure", myRGB(240, 255, 255)}, |
| 65 | {"Beige", myRGB(245, 245, 220)}, |
| 66 | {"Bisque", myRGB(255, 228, 196)}, |
| 67 | {"Black", myRGB(0, 0, 0)}, |
| 68 | {"BlanchedAlmond", myRGB(255, 235, 205)}, |
| 69 | {"Blue", myRGB(0, 0, 255)}, |
| 70 | {"BlueViolet", myRGB(138, 43, 226)}, |
| 71 | {"Brown", myRGB(165, 42, 42)}, |
| 72 | {"burlywood", myRGB(222, 184, 135)}, |
| 73 | {"CadetBlue", myRGB(95, 146, 158)}, |
| 74 | {"chartreuse", myRGB(127, 255, 0)}, |
| 75 | {"chocolate", myRGB(210, 105, 30)}, |
| 76 | {"Coral", myRGB(255, 114, 86)}, |
| 77 | {"CornflowerBlue", myRGB(34, 34, 152)}, |
| 78 | {"cornsilk", myRGB(255, 248, 220)}, |
| 79 | {"Cyan", myRGB(0, 255, 255)}, |
| 80 | {"DarkGoldenrod", myRGB(184, 134, 11)}, |
| 81 | {"DarkGreen", myRGB(0, 86, 45)}, |
| 82 | {"DarkKhaki", myRGB(189, 183, 107)}, |
| 83 | {"DarkOliveGreen", myRGB(85, 86, 47)}, |
| 84 | {"DarkOrange", myRGB(255, 140, 0)}, |
| 85 | {"DarkOrchid", myRGB(139, 32, 139)}, |
| 86 | {"DarkSalmon", myRGB(233, 150, 122)}, |
| 87 | {"DarkSeaGreen", myRGB(143, 188, 143)}, |
| 88 | {"DarkSlateBlue", myRGB(56, 75, 102)}, |
| 89 | {"DarkSlateGray", myRGB(47, 79, 79)}, |
| 90 | {"DarkTurquoise", myRGB(0, 166, 166)}, |
| 91 | {"DarkViolet", myRGB(148, 0, 211)}, |
| 92 | {"DeepPink", myRGB(255, 20, 147)}, |
| 93 | {"DeepSkyBlue", myRGB(0, 191, 255)}, |
| 94 | {"DimGray", myRGB(84, 84, 84)}, |
| 95 | {"DodgerBlue", myRGB(30, 144, 255)}, |
| 96 | {"Firebrick", myRGB(142, 35, 35)}, |
| 97 | {"FloralWhite", myRGB(255, 250, 240)}, |
| 98 | {"ForestGreen", myRGB(80, 159, 105)}, |
| 99 | {"gainsboro", myRGB(220, 220, 220)}, |
| 100 | {"GhostWhite", myRGB(248, 248, 255)}, |
| 101 | {"Gold", myRGB(218, 170, 0)}, |
| 102 | {"Goldenrod", myRGB(239, 223, 132)}, |
| 103 | {"Gray", myRGB(126, 126, 126)}, |
| 104 | {"Gray0", myRGB(0, 0, 0)}, |
| 105 | {"Gray1", myRGB(3, 3, 3)}, |
| 106 | {"Gray10", myRGB(26, 26, 26)}, |
| 107 | {"Gray100", myRGB(255, 255, 255)}, |
| 108 | {"Gray11", myRGB(28, 28, 28)}, |
| 109 | {"Gray12", myRGB(31, 31, 31)}, |
| 110 | {"Gray13", myRGB(33, 33, 33)}, |
| 111 | {"Gray14", myRGB(36, 36, 36)}, |
| 112 | {"Gray15", myRGB(38, 38, 38)}, |
| 113 | {"Gray16", myRGB(41, 41, 41)}, |
| 114 | {"Gray17", myRGB(43, 43, 43)}, |
| 115 | {"Gray18", myRGB(46, 46, 46)}, |
| 116 | {"Gray19", myRGB(48, 48, 48)}, |
| 117 | {"Gray2", myRGB(5, 5, 5)}, |
| 118 | {"Gray20", myRGB(51, 51, 51)}, |
| 119 | {"Gray21", myRGB(54, 54, 54)}, |
| 120 | {"Gray22", myRGB(56, 56, 56)}, |
| 121 | {"Gray23", myRGB(59, 59, 59)}, |
| 122 | {"Gray24", myRGB(61, 61, 61)}, |
| 123 | {"Gray25", myRGB(64, 64, 64)}, |
| 124 | {"Gray26", myRGB(66, 66, 66)}, |
| 125 | {"Gray27", myRGB(69, 69, 69)}, |
| 126 | {"Gray28", myRGB(71, 71, 71)}, |
| 127 | {"Gray29", myRGB(74, 74, 74)}, |
| 128 | {"Gray3", myRGB(8, 8, 8)}, |
| 129 | {"Gray30", myRGB(77, 77, 77)}, |
| 130 | {"Gray31", myRGB(79, 79, 79)}, |
| 131 | {"Gray32", myRGB(82, 82, 82)}, |
| 132 | {"Gray33", myRGB(84, 84, 84)}, |
| 133 | {"Gray34", myRGB(87, 87, 87)}, |
| 134 | {"Gray35", myRGB(89, 89, 89)}, |
| 135 | {"Gray36", myRGB(92, 92, 92)}, |
| 136 | {"Gray37", myRGB(94, 94, 94)}, |
| 137 | {"Gray38", myRGB(97, 97, 97)}, |
| 138 | {"Gray39", myRGB(99, 99, 99)}, |
| 139 | {"Gray4", myRGB(10, 10, 10)}, |
| 140 | {"Gray40", myRGB(102, 102, 102)}, |
| 141 | {"Gray41", myRGB(105, 105, 105)}, |
| 142 | {"Gray42", myRGB(107, 107, 107)}, |
| 143 | {"Gray43", myRGB(110, 110, 110)}, |
| 144 | {"Gray44", myRGB(112, 112, 112)}, |
| 145 | {"Gray45", myRGB(115, 115, 115)}, |
| 146 | {"Gray46", myRGB(117, 117, 117)}, |
| 147 | {"Gray47", myRGB(120, 120, 120)}, |
| 148 | {"Gray48", myRGB(122, 122, 122)}, |
| 149 | {"Gray49", myRGB(125, 125, 125)}, |
| 150 | {"Gray5", myRGB(13, 13, 13)}, |
| 151 | {"Gray50", myRGB(127, 127, 127)}, |
| 152 | {"Gray51", myRGB(130, 130, 130)}, |
| 153 | {"Gray52", myRGB(133, 133, 133)}, |
| 154 | {"Gray53", myRGB(135, 135, 135)}, |
| 155 | {"Gray54", myRGB(138, 138, 138)}, |
| 156 | {"Gray55", myRGB(140, 140, 140)}, |
| 157 | {"Gray56", myRGB(143, 143, 143)}, |
| 158 | {"Gray57", myRGB(145, 145, 145)}, |
| 159 | {"Gray58", myRGB(148, 148, 148)}, |
| 160 | {"Gray59", myRGB(150, 150, 150)}, |
| 161 | {"Gray6", myRGB(15, 15, 15)}, |
| 162 | {"Gray60", myRGB(153, 153, 153)}, |
| 163 | {"Gray61", myRGB(156, 156, 156)}, |
| 164 | {"Gray62", myRGB(158, 158, 158)}, |
| 165 | {"Gray63", myRGB(161, 161, 161)}, |
| 166 | {"Gray64", myRGB(163, 163, 163)}, |
| 167 | {"Gray65", myRGB(166, 166, 166)}, |
| 168 | {"Gray66", myRGB(168, 168, 168)}, |
| 169 | {"Gray67", myRGB(171, 171, 171)}, |
| 170 | {"Gray68", myRGB(173, 173, 173)}, |
| 171 | {"Gray69", myRGB(176, 176, 176)}, |
| 172 | {"Gray7", myRGB(18, 18, 18)}, |
| 173 | {"Gray70", myRGB(179, 179, 179)}, |
| 174 | {"Gray71", myRGB(181, 181, 181)}, |
| 175 | {"Gray72", myRGB(184, 184, 184)}, |
| 176 | {"Gray73", myRGB(186, 186, 186)}, |
| 177 | {"Gray74", myRGB(189, 189, 189)}, |
| 178 | {"Gray75", myRGB(191, 191, 191)}, |
| 179 | {"Gray76", myRGB(194, 194, 194)}, |
| 180 | {"Gray77", myRGB(196, 196, 196)}, |
| 181 | {"Gray78", myRGB(199, 199, 199)}, |
| 182 | {"Gray79", myRGB(201, 201, 201)}, |
| 183 | {"Gray8", myRGB(20, 20, 20)}, |
| 184 | {"Gray80", myRGB(204, 204, 204)}, |
| 185 | {"Gray81", myRGB(207, 207, 207)}, |
| 186 | {"Gray82", myRGB(209, 209, 209)}, |
| 187 | {"Gray83", myRGB(212, 212, 212)}, |
| 188 | {"Gray84", myRGB(214, 214, 214)}, |
| 189 | {"Gray85", myRGB(217, 217, 217)}, |
| 190 | {"Gray86", myRGB(219, 219, 219)}, |
| 191 | {"Gray87", myRGB(222, 222, 222)}, |
| 192 | {"Gray88", myRGB(224, 224, 224)}, |
| 193 | {"Gray89", myRGB(227, 227, 227)}, |
| 194 | {"Gray9", myRGB(23, 23, 23)}, |
| 195 | {"Gray90", myRGB(229, 229, 229)}, |
| 196 | {"Gray91", myRGB(232, 232, 232)}, |
| 197 | {"Gray92", myRGB(235, 235, 235)}, |
| 198 | {"Gray93", myRGB(237, 237, 237)}, |
| 199 | {"Gray94", myRGB(240, 240, 240)}, |
| 200 | {"Gray95", myRGB(242, 242, 242)}, |
| 201 | {"Gray96", myRGB(245, 245, 245)}, |
| 202 | {"Gray97", myRGB(247, 247, 247)}, |
| 203 | {"Gray98", myRGB(250, 250, 250)}, |
| 204 | {"Gray99", myRGB(252, 252, 252)}, |
| 205 | {"Green", myRGB(0, 255, 0)}, |
| 206 | {"GreenYellow", myRGB(173, 255, 47)}, |
| 207 | {"honeydew", myRGB(240, 255, 240)}, |
| 208 | {"HotPink", myRGB(255, 105, 180)}, |
| 209 | {"IndianRed", myRGB(107, 57, 57)}, |
| 210 | {"ivory", myRGB(255, 255, 240)}, |
| 211 | {"Khaki", myRGB(179, 179, 126)}, |
| 212 | {"lavender", myRGB(230, 230, 250)}, |
| 213 | {"LavenderBlush", myRGB(255, 240, 245)}, |
| 214 | {"LawnGreen", myRGB(124, 252, 0)}, |
| 215 | {"LemonChiffon", myRGB(255, 250, 205)}, |
| 216 | {"LightBlue", myRGB(176, 226, 255)}, |
| 217 | {"LightCoral", myRGB(240, 128, 128)}, |
| 218 | {"LightCyan", myRGB(224, 255, 255)}, |
| 219 | {"LightGoldenrod", myRGB(238, 221, 130)}, |
| 220 | {"LightGoldenrodYellow", myRGB(250, 250, 210)}, |
| 221 | {"LightGray", myRGB(168, 168, 168)}, |
| 222 | {"LightPink", myRGB(255, 182, 193)}, |
| 223 | {"LightSalmon", myRGB(255, 160, 122)}, |
| 224 | {"LightSeaGreen", myRGB(32, 178, 170)}, |
| 225 | {"LightSkyBlue", myRGB(135, 206, 250)}, |
| 226 | {"LightSlateBlue", myRGB(132, 112, 255)}, |
| 227 | {"LightSlateGray", myRGB(119, 136, 153)}, |
| 228 | {"LightSteelBlue", myRGB(124, 152, 211)}, |
| 229 | {"LightYellow", myRGB(255, 255, 224)}, |
| 230 | {"LimeGreen", myRGB(0, 175, 20)}, |
| 231 | {"linen", myRGB(250, 240, 230)}, |
| 232 | {"Magenta", myRGB(255, 0, 255)}, |
| 233 | {"Maroon", myRGB(143, 0, 82)}, |
| 234 | {"MediumAquamarine", myRGB(0, 147, 143)}, |
| 235 | {"MediumBlue", myRGB(50, 50, 204)}, |
| 236 | {"MediumForestGreen", myRGB(50, 129, 75)}, |
| 237 | {"MediumGoldenrod", myRGB(209, 193, 102)}, |
| 238 | {"MediumOrchid", myRGB(189, 82, 189)}, |
| 239 | {"MediumPurple", myRGB(147, 112, 219)}, |
| 240 | {"MediumSeaGreen", myRGB(52, 119, 102)}, |
| 241 | {"MediumSlateBlue", myRGB(106, 106, 141)}, |
| 242 | {"MediumSpringGreen", myRGB(35, 142, 35)}, |
| 243 | {"MediumTurquoise", myRGB(0, 210, 210)}, |
| 244 | {"MediumVioletRed", myRGB(213, 32, 121)}, |
| 245 | {"MidnightBlue", myRGB(47, 47, 100)}, |
| 246 | {"MintCream", myRGB(245, 255, 250)}, |
| 247 | {"MistyRose", myRGB(255, 228, 225)}, |
| 248 | {"moccasin", myRGB(255, 228, 181)}, |
| 249 | {"NavajoWhite", myRGB(255, 222, 173)}, |
| 250 | {"Navy", myRGB(35, 35, 117)}, |
| 251 | {"NavyBlue", myRGB(35, 35, 117)}, |
| 252 | {"OldLace", myRGB(253, 245, 230)}, |
| 253 | {"OliveDrab", myRGB(107, 142, 35)}, |
| 254 | {"Orange", myRGB(255, 135, 0)}, |
| 255 | {"OrangeRed", myRGB(255, 69, 0)}, |
| 256 | {"Orchid", myRGB(239, 132, 239)}, |
| 257 | {"PaleGoldenrod", myRGB(238, 232, 170)}, |
| 258 | {"PaleGreen", myRGB(115, 222, 120)}, |
| 259 | {"PaleTurquoise", myRGB(175, 238, 238)}, |
| 260 | {"PaleVioletRed", myRGB(219, 112, 147)}, |
| 261 | {"PapayaWhip", myRGB(255, 239, 213)}, |
| 262 | {"PeachPuff", myRGB(255, 218, 185)}, |
| 263 | {"peru", myRGB(205, 133, 63)}, |
| 264 | {"Pink", myRGB(255, 181, 197)}, |
| 265 | {"Plum", myRGB(197, 72, 155)}, |
| 266 | {"PowderBlue", myRGB(176, 224, 230)}, |
| 267 | {"purple", myRGB(160, 32, 240)}, |
| 268 | {"Red", myRGB(255, 0, 0)}, |
| 269 | {"RosyBrown", myRGB(188, 143, 143)}, |
| 270 | {"RoyalBlue", myRGB(65, 105, 225)}, |
| 271 | {"SaddleBrown", myRGB(139, 69, 19)}, |
| 272 | {"Salmon", myRGB(233, 150, 122)}, |
| 273 | {"SandyBrown", myRGB(244, 164, 96)}, |
| 274 | {"SeaGreen", myRGB(82, 149, 132)}, |
| 275 | {"seashell", myRGB(255, 245, 238)}, |
| 276 | {"Sienna", myRGB(150, 82, 45)}, |
| 277 | {"SkyBlue", myRGB(114, 159, 255)}, |
| 278 | {"SlateBlue", myRGB(126, 136, 171)}, |
| 279 | {"SlateGray", myRGB(112, 128, 144)}, |
| 280 | {"snow", myRGB(255, 250, 250)}, |
| 281 | {"SpringGreen", myRGB(65, 172, 65)}, |
| 282 | {"SteelBlue", myRGB(84, 112, 170)}, |
| 283 | {"Tan", myRGB(222, 184, 135)}, |
| 284 | {"Thistle", myRGB(216, 191, 216)}, |
| 285 | {"tomato", myRGB(255, 99, 71)}, |
| 286 | {"Transparent", myRGB(0, 0, 1)}, |
| 287 | {"Turquoise", myRGB(25, 204, 223)}, |
| 288 | {"Violet", myRGB(156, 62, 206)}, |
| 289 | {"VioletRed", myRGB(243, 62, 150)}, |
| 290 | {"Wheat", myRGB(245, 222, 179)}, |
| 291 | {"White", myRGB(255, 255, 255)}, |
| 292 | {"WhiteSmoke", myRGB(245, 245, 245)}, |
| 293 | {"Yellow", myRGB(255, 255, 0)}, |
| 294 | {"YellowGreen", myRGB(50, 216, 56)}, |
| 295 | NULL |
| 296 | }; |
| 297 | |
| 298 | static int numTheRGBRecords = 234; |