diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | tests/color.test | 17 | ||||
-rw-r--r-- | xlib/rgb.txt | 658 |
3 files changed, 679 insertions, 2 deletions
@@ -1,3 +1,9 @@ +2012-03-18 Jan Nijtmans <nijtmans@users.sf.net> + + * xlib/xcolors.c: [RFE 3503317]: XParseColor speedup + * xlib/rgb.txt: List of all colors accepted by Tk in Xorg format + * tests/color.test: Added test case for all colors in rgb.txt + 2012-03-04 Jan Nijtmans <nijtmans@users.sf.net> * unix/tcl.m4: Patch from the cygwin folks diff --git a/tests/color.test b/tests/color.test index 27ec152..8557252 100644 --- a/tests/color.test +++ b/tests/color.test @@ -75,8 +75,8 @@ proc closest {w r g b} { # vals - List of intensities. proc c255 {vals} { - list [expr [lindex $vals 0]/256] [expr [lindex $vals 1]/256] \ - [expr [lindex $vals 2]/256] + list [expr {[lindex $vals 0]/256}] [expr {[lindex $vals 1]/256}] \ + [expr {[lindex $vals 2]/256}] } # colorsFree -- @@ -154,6 +154,19 @@ test color-1.4 {Tk_AllocColorFromObj - try other colors in list} colorsFree { pack .b2 -side top lappend result [testcolor purple] } {{{1 1}} {{1 1} {1 0}} {{1 0} {2 1}}} +test color-1.5 {Color table} nonPortable { + set fd [open ../xlib/rgb.txt] + set result {} + while {[gets $fd line] != -1} { + if {[string index $line 0] == "!"} continue + set rgb [c255 [winfo rgb . [lrange $line 3 end]]] + if {$rgb != [lrange $line 0 2] } { + append result $line\n + } + + } + return $result +} {} test color-2.1 {Tk_GetColor procedure} colorsFree { c255 [winfo rgb .t #FF0000] diff --git a/xlib/rgb.txt b/xlib/rgb.txt new file mode 100644 index 0000000..67b979e --- /dev/null +++ b/xlib/rgb.txt @@ -0,0 +1,658 @@ +! +240 248 255 aliceBlue +250 235 215 antiqueWhite +255 239 219 antiqueWhite1 +238 223 204 antiqueWhite2 +205 192 176 antiqueWhite3 +139 131 120 antiqueWhite4 +127 255 212 aquamarine +127 255 212 aquamarine1 +118 238 198 aquamarine2 +102 205 170 aquamarine3 + 69 139 116 aquamarine4 +240 255 255 azure +240 255 255 azure1 +224 238 238 azure2 +193 205 205 azure3 +131 139 139 azure4 +245 245 220 beige +255 228 196 bisque +255 228 196 bisque1 +238 213 183 bisque2 +205 183 158 bisque3 +139 125 107 bisque4 + 0 0 0 black +255 235 205 blanchedAlmond + 0 0 255 blue + 0 0 255 blue1 + 0 0 238 blue2 + 0 0 205 blue3 + 0 0 139 blue4 +138 43 226 blueViolet +165 42 42 brown +255 64 64 brown1 +238 59 59 brown2 +205 51 51 brown3 +139 35 35 brown4 +222 184 135 burlywood +255 211 155 burlywood1 +238 197 145 burlywood2 +205 170 125 burlywood3 +139 115 85 burlywood4 + 95 158 160 cadetBlue +152 245 255 cadetBlue1 +142 229 238 cadetBlue2 +122 197 205 cadetBlue3 + 83 134 139 cadetBlue4 +127 255 0 chartreuse +127 255 0 chartreuse1 +118 238 0 chartreuse2 +102 205 0 chartreuse3 + 69 139 0 chartreuse4 +210 105 30 chocolate +255 127 36 chocolate1 +238 118 33 chocolate2 +205 102 29 chocolate3 +139 69 19 chocolate4 +255 127 80 coral +255 114 86 coral1 +238 106 80 coral2 +205 91 69 coral3 +139 62 47 coral4 +100 149 237 cornflowerBlue +255 248 220 cornsilk +255 248 220 cornsilk1 +238 232 205 cornsilk2 +205 200 177 cornsilk3 +139 136 120 cornsilk4 + 0 255 255 cyan + 0 255 255 cyan1 + 0 238 238 cyan2 + 0 205 205 cyan3 + 0 139 139 cyan4 + 0 0 139 darkBlue + 0 139 139 darkCyan +184 134 11 darkGoldenrod +255 185 15 darkGoldenrod1 +238 173 14 darkGoldenrod2 +205 149 12 darkGoldenrod3 +139 101 8 darkGoldenrod4 +169 169 169 darkGray + 0 100 0 darkGreen +169 169 169 darkGrey +189 183 107 darkKhaki +139 0 139 darkMagenta + 85 107 47 darkOliveGreen +202 255 112 darkOliveGreen1 +188 238 104 darkOliveGreen2 +162 205 90 darkOliveGreen3 +110 139 61 darkOliveGreen4 +255 140 0 darkOrange +255 127 0 darkOrange1 +238 118 0 darkOrange2 +205 102 0 darkOrange3 +139 69 0 darkOrange4 +153 50 204 darkOrchid +191 62 255 darkOrchid1 +178 58 238 darkOrchid2 +154 50 205 darkOrchid3 +104 34 139 darkOrchid4 +139 0 0 darkRed +233 150 122 darkSalmon +143 188 143 darkSeaGreen +193 255 193 darkSeaGreen1 +180 238 180 darkSeaGreen2 +155 205 155 darkSeaGreen3 +105 139 105 darkSeaGreen4 + 72 61 139 darkSlateBlue + 47 79 79 darkSlateGray +151 255 255 darkSlateGray1 +141 238 238 darkSlateGray2 +121 205 205 darkSlateGray3 + 82 139 139 darkSlateGray4 + 47 79 79 darkSlateGrey + 0 206 209 darkTurquoise +148 0 211 darkViolet +255 20 147 deepPink +255 20 147 deepPink1 +238 18 137 deepPink2 +205 16 118 deepPink3 +139 10 80 deepPink4 + 0 191 255 deepSkyBlue + 0 191 255 deepSkyBlue1 + 0 178 238 deepSkyBlue2 + 0 154 205 deepSkyBlue3 + 0 104 139 deepSkyBlue4 +105 105 105 dimGray +105 105 105 dimGrey + 30 144 255 dodgerBlue + 30 144 255 dodgerBlue1 + 28 134 238 dodgerBlue2 + 24 116 205 dodgerBlue3 + 16 78 139 dodgerBlue4 +178 34 34 firebrick +255 48 48 firebrick1 +238 44 44 firebrick2 +205 38 38 firebrick3 +139 26 26 firebrick4 +255 250 240 floralWhite + 34 139 34 forestGreen +220 220 220 gainsboro +248 248 255 ghostWhite +255 215 0 gold +255 215 0 gold1 +238 201 0 gold2 +205 173 0 gold3 +139 117 0 gold4 +218 165 32 goldenrod +255 193 37 goldenrod1 +238 180 34 goldenrod2 +205 155 29 goldenrod3 +139 105 20 goldenrod4 +190 190 190 gray + 3 3 3 gray1 + 5 5 5 gray2 + 8 8 8 gray3 + 10 10 10 gray4 + 13 13 13 gray5 + 15 15 15 gray6 + 18 18 18 gray7 + 20 20 20 gray8 + 23 23 23 gray9 + 26 26 26 gray10 + 28 28 28 gray11 + 31 31 31 gray12 + 33 33 33 gray13 + 36 36 36 gray14 + 38 38 38 gray15 + 41 41 41 gray16 + 43 43 43 gray17 + 46 46 46 gray18 + 48 48 48 gray19 + 51 51 51 gray20 + 54 54 54 gray21 + 56 56 56 gray22 + 59 59 59 gray23 + 61 61 61 gray24 + 64 64 64 gray25 + 66 66 66 gray26 + 69 69 69 gray27 + 71 71 71 gray28 + 74 74 74 gray29 + 77 77 77 gray30 + 79 79 79 gray31 + 82 82 82 gray32 + 84 84 84 gray33 + 87 87 87 gray34 + 89 89 89 gray35 + 92 92 92 gray36 + 94 94 94 gray37 + 97 97 97 gray38 + 99 99 99 gray39 +102 102 102 gray40 +105 105 105 gray41 +107 107 107 gray42 +110 110 110 gray43 +112 112 112 gray44 +115 115 115 gray45 +117 117 117 gray46 +120 120 120 gray47 +122 122 122 gray48 +125 125 125 gray49 +127 127 127 gray50 +130 130 130 gray51 +133 133 133 gray52 +135 135 135 gray53 +138 138 138 gray54 +140 140 140 gray55 +143 143 143 gray56 +145 145 145 gray57 +148 148 148 gray58 +150 150 150 gray59 +153 153 153 gray60 +156 156 156 gray61 +158 158 158 gray62 +161 161 161 gray63 +163 163 163 gray64 +166 166 166 gray65 +168 168 168 gray66 +171 171 171 gray67 +173 173 173 gray68 +176 176 176 gray69 +179 179 179 gray70 +181 181 181 gray71 +184 184 184 gray72 +186 186 186 gray73 +189 189 189 gray74 +191 191 191 gray75 +194 194 194 gray76 +196 196 196 gray77 +199 199 199 gray78 +201 201 201 gray79 +204 204 204 gray80 +207 207 207 gray81 +209 209 209 gray82 +212 212 212 gray83 +214 214 214 gray84 +217 217 217 gray85 +219 219 219 gray86 +222 222 222 gray87 +224 224 224 gray88 +227 227 227 gray89 +229 229 229 gray90 +232 232 232 gray91 +235 235 235 gray92 +237 237 237 gray93 +240 240 240 gray94 +242 242 242 gray95 +245 245 245 gray96 +247 247 247 gray97 +250 250 250 gray98 +252 252 252 gray99 +255 255 255 gray100 + 0 0 0 gray0 + 0 255 0 green + 0 255 0 green1 + 0 238 0 green2 + 0 205 0 green3 + 0 139 0 green4 +173 255 47 greenYellow +190 190 190 grey + 3 3 3 grey1 + 5 5 5 grey2 + 8 8 8 grey3 + 10 10 10 grey4 + 13 13 13 grey5 + 15 15 15 grey6 + 18 18 18 grey7 + 20 20 20 grey8 + 23 23 23 grey9 + 26 26 26 grey10 + 28 28 28 grey11 + 31 31 31 grey12 + 33 33 33 grey13 + 36 36 36 grey14 + 38 38 38 grey15 + 41 41 41 grey16 + 43 43 43 grey17 + 46 46 46 grey18 + 48 48 48 grey19 + 51 51 51 grey20 + 54 54 54 grey21 + 56 56 56 grey22 + 59 59 59 grey23 + 61 61 61 grey24 + 64 64 64 grey25 + 66 66 66 grey26 + 69 69 69 grey27 + 71 71 71 grey28 + 74 74 74 grey29 + 77 77 77 grey30 + 79 79 79 grey31 + 82 82 82 grey32 + 84 84 84 grey33 + 87 87 87 grey34 + 89 89 89 grey35 + 92 92 92 grey36 + 94 94 94 grey37 + 97 97 97 grey38 + 99 99 99 grey39 +102 102 102 grey40 +105 105 105 grey41 +107 107 107 grey42 +110 110 110 grey43 +112 112 112 grey44 +115 115 115 grey45 +117 117 117 grey46 +120 120 120 grey47 +122 122 122 grey48 +125 125 125 grey49 +127 127 127 grey50 +130 130 130 grey51 +133 133 133 grey52 +135 135 135 grey53 +138 138 138 grey54 +140 140 140 grey55 +143 143 143 grey56 +145 145 145 grey57 +148 148 148 grey58 +150 150 150 grey59 +153 153 153 grey60 +156 156 156 grey61 +158 158 158 grey62 +161 161 161 grey63 +163 163 163 grey64 +166 166 166 grey65 +168 168 168 grey66 +171 171 171 grey67 +173 173 173 grey68 +176 176 176 grey69 +179 179 179 grey70 +181 181 181 grey71 +184 184 184 grey72 +186 186 186 grey73 +189 189 189 grey74 +191 191 191 grey75 +194 194 194 grey76 +196 196 196 grey77 +199 199 199 grey78 +201 201 201 grey79 +204 204 204 grey80 +207 207 207 grey81 +209 209 209 grey82 +212 212 212 grey83 +214 214 214 grey84 +217 217 217 grey85 +219 219 219 grey86 +222 222 222 grey87 +224 224 224 grey88 +227 227 227 grey89 +229 229 229 grey90 +232 232 232 grey91 +235 235 235 grey92 +237 237 237 grey93 +240 240 240 grey94 +242 242 242 grey95 +245 245 245 grey96 +247 247 247 grey97 +250 250 250 grey98 +252 252 252 grey99 +255 255 255 grey100 + 0 0 0 grey0 +240 255 240 honeydew +240 255 240 honeydew1 +224 238 224 honeydew2 +193 205 193 honeydew3 +131 139 131 honeydew4 +255 105 180 hotPink +255 110 180 hotPink1 +238 106 167 hotPink2 +205 96 144 hotPink3 +139 58 98 hotPink4 +205 92 92 indianRed +255 106 106 indianRed1 +238 99 99 indianRed2 +205 85 85 indianRed3 +139 58 58 indianRed4 +255 255 240 ivory +255 255 240 ivory1 +238 238 224 ivory2 +205 205 193 ivory3 +139 139 131 ivory4 +240 230 140 khaki +255 246 143 khaki1 +238 230 133 khaki2 +205 198 115 khaki3 +139 134 78 khaki4 +230 230 250 lavender +255 240 245 lavenderBlush +255 240 245 lavenderBlush1 +238 224 229 lavenderBlush2 +205 193 197 lavenderBlush3 +139 131 134 lavenderBlush4 +124 252 0 lawnGreen +255 250 205 lemonChiffon +255 250 205 lemonChiffon1 +238 233 191 lemonChiffon2 +205 201 165 lemonChiffon3 +139 137 112 lemonChiffon4 +173 216 230 lightBlue +191 239 255 lightBlue1 +178 223 238 lightBlue2 +154 192 205 lightBlue3 +104 131 139 lightBlue4 +240 128 128 lightCoral +224 255 255 lightCyan +224 255 255 lightCyan1 +209 238 238 lightCyan2 +180 205 205 lightCyan3 +122 139 139 lightCyan4 +238 221 130 lightGoldenrod +255 236 139 lightGoldenrod1 +238 220 130 lightGoldenrod2 +205 190 112 lightGoldenrod3 +139 129 76 lightGoldenrod4 +250 250 210 lightGoldenrodYellow +211 211 211 lightGray +144 238 144 lightGreen +211 211 211 lightGrey +255 182 193 lightPink +255 174 185 lightPink1 +238 162 173 lightPink2 +205 140 149 lightPink3 +139 95 101 lightPink4 +255 160 122 lightSalmon +255 160 122 lightSalmon1 +238 149 114 lightSalmon2 +205 129 98 lightSalmon3 +139 87 66 lightSalmon4 + 32 178 170 lightSeaGreen +135 206 250 lightSkyBlue +176 226 255 lightSkyBlue1 +164 211 238 lightSkyBlue2 +141 182 205 lightSkyBlue3 + 96 123 139 lightSkyBlue4 +132 112 255 lightSlateBlue +119 136 153 lightSlateGray +119 136 153 lightSlateGrey +176 196 222 lightSteelBlue +202 225 255 lightSteelBlue1 +188 210 238 lightSteelBlue2 +162 181 205 lightSteelBlue3 +110 123 139 lightSteelBlue4 +255 255 224 lightYellow +255 255 224 lightYellow1 +238 238 209 lightYellow2 +205 205 180 lightYellow3 +139 139 122 lightYellow4 + 50 205 50 limeGreen +250 240 230 linen +255 0 255 magenta +255 0 255 magenta1 +238 0 238 magenta2 +205 0 205 magenta3 +139 0 139 magenta4 +176 48 96 maroon +255 52 179 maroon1 +238 48 167 maroon2 +205 41 144 maroon3 +139 28 98 maroon4 +102 205 170 mediumAquamarine + 0 0 205 mediumBlue +186 85 211 mediumOrchid +224 102 255 mediumOrchid1 +209 95 238 mediumOrchid2 +180 82 205 mediumOrchid3 +122 55 139 mediumOrchid4 +147 112 219 mediumPurple +171 130 255 mediumPurple1 +159 121 238 mediumPurple2 +137 104 205 mediumPurple3 + 93 71 139 mediumPurple4 + 60 179 113 mediumSeaGreen +123 104 238 mediumSlateBlue + 0 250 154 mediumSpringGreen + 72 209 204 mediumTurquoise +199 21 133 mediumVioletRed + 25 25 112 midnightBlue +245 255 250 mintCream +255 228 225 mistyRose +255 228 225 mistyRose1 +238 213 210 mistyRose2 +205 183 181 mistyRose3 +139 125 123 mistyRose4 +255 228 181 moccasin +255 222 173 navajoWhite +255 222 173 navajoWhite1 +238 207 161 navajoWhite2 +205 179 139 navajoWhite3 +139 121 94 navajoWhite4 + 0 0 128 navy + 0 0 128 navyBlue +253 245 230 oldLace +107 142 35 oliveDrab +192 255 62 oliveDrab1 +179 238 58 oliveDrab2 +154 205 50 oliveDrab3 +105 139 34 oliveDrab4 +255 165 0 orange +255 165 0 orange1 +238 154 0 orange2 +205 133 0 orange3 +139 90 0 orange4 +255 69 0 orangeRed +255 69 0 orangeRed1 +238 64 0 orangeRed2 +205 55 0 orangeRed3 +139 37 0 orangeRed4 +218 112 214 orchid +255 131 250 orchid1 +238 122 233 orchid2 +205 105 201 orchid3 +139 71 137 orchid4 +238 232 170 paleGoldenrod +152 251 152 paleGreen +154 255 154 paleGreen1 +144 238 144 paleGreen2 +124 205 124 paleGreen3 + 84 139 84 paleGreen4 +175 238 238 paleTurquoise +187 255 255 paleTurquoise1 +174 238 238 paleTurquoise2 +150 205 205 paleTurquoise3 +102 139 139 paleTurquoise4 +219 112 147 paleVioletRed +255 130 171 paleVioletRed1 +238 121 159 paleVioletRed2 +205 104 137 paleVioletRed3 +139 71 93 paleVioletRed4 +255 239 213 papayaWhip +255 218 185 peachPuff +255 218 185 peachPuff1 +238 203 173 peachPuff2 +205 175 149 peachPuff3 +139 119 101 peachPuff4 +205 133 63 peru +255 192 203 pink +255 181 197 pink1 +238 169 184 pink2 +205 145 158 pink3 +139 99 108 pink4 +221 160 221 plum +255 187 255 plum1 +238 174 238 plum2 +205 150 205 plum3 +139 102 139 plum4 +176 224 230 powderBlue +160 32 240 purple +155 48 255 purple1 +145 44 238 purple2 +125 38 205 purple3 + 85 26 139 purple4 +255 0 0 red +255 0 0 red1 +238 0 0 red2 +205 0 0 red3 +139 0 0 red4 +188 143 143 rosyBrown +255 193 193 rosyBrown1 +238 180 180 rosyBrown2 +205 155 155 rosyBrown3 +139 105 105 rosyBrown4 + 65 105 225 royalBlue + 72 118 255 royalBlue1 + 67 110 238 royalBlue2 + 58 95 205 royalBlue3 + 39 64 139 royalBlue4 +139 69 19 saddleBrown +250 128 114 salmon +255 140 105 salmon1 +238 130 98 salmon2 +205 112 84 salmon3 +139 76 57 salmon4 +244 164 96 sandyBrown + 46 139 87 seaGreen + 84 255 159 seaGreen1 + 78 238 148 seaGreen2 + 67 205 128 seaGreen3 + 46 139 87 seaGreen4 +255 245 238 seashell +255 245 238 seashell1 +238 229 222 seashell2 +205 197 191 seashell3 +139 134 130 seashell4 +160 82 45 sienna +255 130 71 sienna1 +238 121 66 sienna2 +205 104 57 sienna3 +139 71 38 sienna4 +135 206 235 skyBlue +135 206 255 skyBlue1 +126 192 238 skyBlue2 +108 166 205 skyBlue3 + 74 112 139 skyBlue4 +106 90 205 slateBlue +131 111 255 slateBlue1 +122 103 238 slateBlue2 +105 89 205 slateBlue3 + 71 60 139 slateBlue4 +112 128 144 slateGray +198 226 255 slateGray1 +185 211 238 slateGray2 +159 182 205 slateGray3 +108 123 139 slateGray4 +112 128 144 slateGrey +255 250 250 snow +255 250 250 snow1 +238 233 233 snow2 +205 201 201 snow3 +139 137 137 snow4 + 0 255 127 springGreen + 0 255 127 springGreen1 + 0 238 118 springGreen2 + 0 205 102 springGreen3 + 0 139 69 springGreen4 + 70 130 180 steelBlue + 99 184 255 steelBlue1 + 92 172 238 steelBlue2 + 79 148 205 steelBlue3 + 54 100 139 steelBlue4 +210 180 140 tan +255 165 79 tan1 +238 154 73 tan2 +205 133 63 tan3 +139 90 43 tan4 +216 191 216 thistle +255 225 255 thistle1 +238 210 238 thistle2 +205 181 205 thistle3 +139 123 139 thistle4 +255 99 71 tomato +255 99 71 tomato1 +238 92 66 tomato2 +205 79 57 tomato3 +139 54 38 tomato4 + 64 224 208 turquoise + 0 245 255 turquoise1 + 0 229 238 turquoise2 + 0 197 205 turquoise3 + 0 134 139 turquoise4 +238 130 238 violet +208 32 144 violetRed +255 62 150 violetRed1 +238 58 140 violetRed2 +205 50 120 violetRed3 +139 34 82 violetRed4 +245 222 179 wheat +255 231 186 wheat1 +238 216 174 wheat2 +205 186 150 wheat3 +139 126 102 wheat4 +255 255 255 white +245 245 245 whiteSmoke +255 255 0 yellow +255 255 0 yellow1 +238 238 0 yellow2 +205 205 0 yellow3 +139 139 0 yellow4 +154 205 50 yellowGreen |