context 0.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Rakefile.rb +107 -0
- data/coverage/-usr-local-lib-site_ruby-1_8-atk_rb.html +612 -0
- data/coverage/-usr-local-lib-site_ruby-1_8-gdk_pixbuf2_rb.html +637 -0
- data/coverage/-usr-local-lib-site_ruby-1_8-glib2_rb.html +829 -0
- data/coverage/-usr-local-lib-site_ruby-1_8-gtk2-base_rb.html +709 -0
- data/coverage/-usr-local-lib-site_ruby-1_8-gtk2_rb.html +623 -0
- data/coverage/-usr-local-lib-site_ruby-1_8-pango_rb.html +665 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-color_rb.html +865 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-colors_rb.html +1266 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-constants_rb.html +632 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-blur_rb.html +655 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-circle_rb.html +619 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-color_rb.html +621 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-path_rb.html +726 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-rectangle_rb.html +643 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context-triangle_rb.html +622 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-context_rb.html +639 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-paper_rb.html +793 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-papers_rb.html +651 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-path_rb.html +625 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-point_rb.html +617 -0
- data/coverage/-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo_rb.html +756 -0
- data/coverage/index.html +1170 -0
- data/coverage/lib-Context-Bridge_rb.html +673 -0
- data/coverage/lib-Context-Context_rb.html +756 -0
- data/coverage/lib-Context-EnumeratedType_rb.html +661 -0
- data/coverage/lib-Context-ExecutionProxy_rb.html +671 -0
- data/coverage/lib-Context-Gtk-App_rb.html +638 -0
- data/coverage/lib-Context-Gtk-Key_rb.html +664 -0
- data/coverage/lib-Context-Gtk-Widget_rb.html +667 -0
- data/coverage/lib-Context-KeyAssignment_rb.html +641 -0
- data/coverage/lib-Context-KeyMap_rb.html +653 -0
- data/coverage/lib-Context-Key_rb.html +667 -0
- data/coverage/lib-Context-View_rb.html +659 -0
- data/coverage/lib-Context-Views-Gtk-PageView_rb.html +660 -0
- data/coverage/lib-Context-Views-PageView_rb.html +627 -0
- data/coverage/lib-Context-Widget_rb.html +650 -0
- data/coverage/lib-Context-require_all_rb.html +623 -0
- data/doc/classes/Context.html +174 -0
- data/doc/classes/Context/Bridge.html +296 -0
- data/doc/classes/Context/Context.html +564 -0
- data/doc/classes/Context/EnumeratedType.html +283 -0
- data/doc/classes/Context/ExecutionProxy.html +228 -0
- data/doc/classes/Context/Gtk.html +126 -0
- data/doc/classes/Context/Gtk/App.html +217 -0
- data/doc/classes/Context/Gtk/Key.html +292 -0
- data/doc/classes/Context/Gtk/PageView.html +245 -0
- data/doc/classes/Context/Gtk/PageView/MainWindow.html +200 -0
- data/doc/classes/Context/Gtk/Widget.html +311 -0
- data/doc/classes/Context/Key.html +305 -0
- data/doc/classes/Context/Key/Modifier.html +117 -0
- data/doc/classes/Context/KeyAssignment.html +234 -0
- data/doc/classes/Context/KeyMap.html +273 -0
- data/doc/classes/Context/PageView.html +180 -0
- data/doc/classes/Context/View.html +334 -0
- data/doc/classes/Context/Widget.html +298 -0
- data/doc/classes/Kernel.html +148 -0
- data/doc/classes/Object.html +196 -0
- data/doc/created.rid +1 -0
- data/doc/files/lib/Context/Bridge_rb.html +108 -0
- data/doc/files/lib/Context/Context_rb.html +109 -0
- data/doc/files/lib/Context/EnumeratedType_rb.html +101 -0
- data/doc/files/lib/Context/ExecutionProxy_rb.html +101 -0
- data/doc/files/lib/Context/Gtk/App_rb.html +110 -0
- data/doc/files/lib/Context/Gtk/Key_rb.html +109 -0
- data/doc/files/lib/Context/Gtk/Widget_rb.html +109 -0
- data/doc/files/lib/Context/KeyAssignment_rb.html +108 -0
- data/doc/files/lib/Context/KeyMap_rb.html +109 -0
- data/doc/files/lib/Context/Key_rb.html +108 -0
- data/doc/files/lib/Context/Version_rb.html +101 -0
- data/doc/files/lib/Context/View_rb.html +101 -0
- data/doc/files/lib/Context/Views/Gtk/PageView_rb.html +111 -0
- data/doc/files/lib/Context/Views/PageView_rb.html +108 -0
- data/doc/files/lib/Context/Widget_rb.html +101 -0
- data/doc/files/lib/Context/require_all_rb.html +101 -0
- data/doc/fr_class_index.html +46 -0
- data/doc/fr_file_index.html +42 -0
- data/doc/fr_method_index.html +103 -0
- data/doc/index.html +24 -0
- data/doc/rdoc-style.css +208 -0
- data/lib/Context/Bridge.rb +63 -0
- data/lib/Context/Context.rb +146 -0
- data/lib/Context/EnumeratedType.rb +51 -0
- data/lib/Context/ExecutionProxy.rb +61 -0
- data/lib/Context/Gtk/App.rb +28 -0
- data/lib/Context/Gtk/Key.rb +54 -0
- data/lib/Context/Gtk/Widget.rb +57 -0
- data/lib/Context/Key.rb +57 -0
- data/lib/Context/KeyAssignment.rb +31 -0
- data/lib/Context/KeyMap.rb +43 -0
- data/lib/Context/Version.rb +5 -0
- data/lib/Context/View.rb +49 -0
- data/lib/Context/Views/Gtk/PageView.rb +50 -0
- data/lib/Context/Views/PageView.rb +17 -0
- data/lib/Context/Widget.rb +40 -0
- data/lib/Context/require_all.rb +13 -0
- data/spec/Context/Bridge_spec.rb +40 -0
- data/spec/Context/Context_spec.rb +102 -0
- data/spec/Context/EnumeratedType_spec.rb +51 -0
- data/spec/Context/ExecutionProxy_spec.rb +28 -0
- data/spec/Context/Gtk/App_spec.rb +24 -0
- data/spec/Context/Gtk/Key_spec.rb +45 -0
- data/spec/Context/Gtk/Widget_spec.rb +44 -0
- data/spec/Context/KeyAssignment_spec.rb +26 -0
- data/spec/Context/KeyMap_spec.rb +64 -0
- data/spec/Context/Key_spec.rb +22 -0
- data/spec/Context/View_spec.rb +62 -0
- data/spec/Context/Views/Gtk/PageView_spec.rb +44 -0
- data/spec/Context/Views/PageView_spec.rb +20 -0
- data/spec/Context/Widget_spec.rb +15 -0
- data/spec/Context/require_all_spec.rb +13 -0
- data/test_results.html +343 -0
- metadata +179 -0
|
@@ -0,0 +1,865 @@
|
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
2
|
+
<html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'><head><title>/var/lib/gems/1.8/gems/cairo-1.7.0/src/lib/cairo/color.rb - C0 code coverage information</title>
|
|
3
|
+
<style type='text/css'>body { background-color: rgb(240, 240, 245); }</style>
|
|
4
|
+
<style type='text/css'>span.cross-ref-title {
|
|
5
|
+
font-size: 140%;
|
|
6
|
+
}
|
|
7
|
+
span.cross-ref a {
|
|
8
|
+
text-decoration: none;
|
|
9
|
+
}
|
|
10
|
+
span.cross-ref {
|
|
11
|
+
background-color:#f3f7fa;
|
|
12
|
+
border: 1px dashed #333;
|
|
13
|
+
margin: 1em;
|
|
14
|
+
padding: 0.5em;
|
|
15
|
+
overflow: hidden;
|
|
16
|
+
}
|
|
17
|
+
a.crossref-toggle {
|
|
18
|
+
text-decoration: none;
|
|
19
|
+
}
|
|
20
|
+
span.marked0 {
|
|
21
|
+
background-color: rgb(185, 210, 200);
|
|
22
|
+
display: block;
|
|
23
|
+
}
|
|
24
|
+
span.marked1 {
|
|
25
|
+
background-color: rgb(190, 215, 205);
|
|
26
|
+
display: block;
|
|
27
|
+
}
|
|
28
|
+
span.inferred0 {
|
|
29
|
+
background-color: rgb(175, 200, 200);
|
|
30
|
+
display: block;
|
|
31
|
+
}
|
|
32
|
+
span.inferred1 {
|
|
33
|
+
background-color: rgb(180, 205, 205);
|
|
34
|
+
display: block;
|
|
35
|
+
}
|
|
36
|
+
span.uncovered0 {
|
|
37
|
+
background-color: rgb(225, 110, 110);
|
|
38
|
+
display: block;
|
|
39
|
+
}
|
|
40
|
+
span.uncovered1 {
|
|
41
|
+
background-color: rgb(235, 120, 120);
|
|
42
|
+
display: block;
|
|
43
|
+
}
|
|
44
|
+
span.overview {
|
|
45
|
+
border-bottom: 8px solid black;
|
|
46
|
+
}
|
|
47
|
+
div.overview {
|
|
48
|
+
border-bottom: 8px solid black;
|
|
49
|
+
}
|
|
50
|
+
body {
|
|
51
|
+
font-family: verdana, arial, helvetica;
|
|
52
|
+
}
|
|
53
|
+
div.footer {
|
|
54
|
+
font-size: 68%;
|
|
55
|
+
margin-top: 1.5em;
|
|
56
|
+
}
|
|
57
|
+
h1, h2, h3, h4, h5, h6 {
|
|
58
|
+
margin-bottom: 0.5em;
|
|
59
|
+
}
|
|
60
|
+
h5 {
|
|
61
|
+
margin-top: 0.5em;
|
|
62
|
+
}
|
|
63
|
+
.hidden {
|
|
64
|
+
display: none;
|
|
65
|
+
}
|
|
66
|
+
div.separator {
|
|
67
|
+
height: 10px;
|
|
68
|
+
}
|
|
69
|
+
/* Commented out for better readability, esp. on IE */
|
|
70
|
+
/*
|
|
71
|
+
table tr td, table tr th {
|
|
72
|
+
font-size: 68%;
|
|
73
|
+
}
|
|
74
|
+
td.value table tr td {
|
|
75
|
+
font-size: 11px;
|
|
76
|
+
}
|
|
77
|
+
*/
|
|
78
|
+
table.percent_graph {
|
|
79
|
+
height: 12px;
|
|
80
|
+
border: #808080 1px solid;
|
|
81
|
+
empty-cells: show;
|
|
82
|
+
}
|
|
83
|
+
table.percent_graph td.covered {
|
|
84
|
+
height: 10px;
|
|
85
|
+
background: #00f000;
|
|
86
|
+
}
|
|
87
|
+
table.percent_graph td.uncovered {
|
|
88
|
+
height: 10px;
|
|
89
|
+
background: #e00000;
|
|
90
|
+
}
|
|
91
|
+
table.percent_graph td.NA {
|
|
92
|
+
height: 10px;
|
|
93
|
+
background: #eaeaea;
|
|
94
|
+
}
|
|
95
|
+
table.report {
|
|
96
|
+
border-collapse: collapse;
|
|
97
|
+
width: 100%;
|
|
98
|
+
}
|
|
99
|
+
table.report td.heading {
|
|
100
|
+
background: #dcecff;
|
|
101
|
+
border: #d0d0d0 1px solid;
|
|
102
|
+
font-weight: bold;
|
|
103
|
+
text-align: center;
|
|
104
|
+
}
|
|
105
|
+
table.report td.heading:hover {
|
|
106
|
+
background: #c0ffc0;
|
|
107
|
+
}
|
|
108
|
+
table.report td.text {
|
|
109
|
+
border: #d0d0d0 1px solid;
|
|
110
|
+
}
|
|
111
|
+
table.report td.value,
|
|
112
|
+
table.report td.lines_total,
|
|
113
|
+
table.report td.lines_code {
|
|
114
|
+
text-align: right;
|
|
115
|
+
border: #d0d0d0 1px solid;
|
|
116
|
+
}
|
|
117
|
+
table.report tr.light {
|
|
118
|
+
background-color: rgb(240, 240, 245);
|
|
119
|
+
}
|
|
120
|
+
table.report tr.dark {
|
|
121
|
+
background-color: rgb(230, 230, 235);
|
|
122
|
+
}
|
|
123
|
+
</style>
|
|
124
|
+
<script type='text/javascript'>
|
|
125
|
+
// <![CDATA[
|
|
126
|
+
function toggleCode( id ) {
|
|
127
|
+
if ( document.getElementById )
|
|
128
|
+
elem = document.getElementById( id );
|
|
129
|
+
else if ( document.all )
|
|
130
|
+
elem = eval( "document.all." + id );
|
|
131
|
+
else
|
|
132
|
+
return false;
|
|
133
|
+
|
|
134
|
+
elemStyle = elem.style;
|
|
135
|
+
|
|
136
|
+
if ( elemStyle.display != "block" ) {
|
|
137
|
+
elemStyle.display = "block"
|
|
138
|
+
} else {
|
|
139
|
+
elemStyle.display = "none"
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
return true;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
// Make cross-references hidden by default
|
|
146
|
+
document.writeln( "<style type=\"text/css\">span.cross-ref { display: none }</style>" )
|
|
147
|
+
// ]]>
|
|
148
|
+
</script>
|
|
149
|
+
<style type='text/css'>span.run0 {
|
|
150
|
+
background-color: rgb(178, 204, 255);
|
|
151
|
+
display: block;
|
|
152
|
+
}
|
|
153
|
+
span.run1 {
|
|
154
|
+
background-color: rgb(178, 206, 255);
|
|
155
|
+
display: block;
|
|
156
|
+
}
|
|
157
|
+
span.run2 {
|
|
158
|
+
background-color: rgb(178, 209, 255);
|
|
159
|
+
display: block;
|
|
160
|
+
}
|
|
161
|
+
span.run3 {
|
|
162
|
+
background-color: rgb(178, 211, 255);
|
|
163
|
+
display: block;
|
|
164
|
+
}
|
|
165
|
+
span.run4 {
|
|
166
|
+
background-color: rgb(178, 214, 255);
|
|
167
|
+
display: block;
|
|
168
|
+
}
|
|
169
|
+
span.run5 {
|
|
170
|
+
background-color: rgb(178, 218, 255);
|
|
171
|
+
display: block;
|
|
172
|
+
}
|
|
173
|
+
span.run6 {
|
|
174
|
+
background-color: rgb(178, 220, 255);
|
|
175
|
+
display: block;
|
|
176
|
+
}
|
|
177
|
+
span.run7 {
|
|
178
|
+
background-color: rgb(178, 223, 255);
|
|
179
|
+
display: block;
|
|
180
|
+
}
|
|
181
|
+
span.run8 {
|
|
182
|
+
background-color: rgb(178, 225, 255);
|
|
183
|
+
display: block;
|
|
184
|
+
}
|
|
185
|
+
span.run9 {
|
|
186
|
+
background-color: rgb(178, 228, 255);
|
|
187
|
+
display: block;
|
|
188
|
+
}
|
|
189
|
+
span.run10 {
|
|
190
|
+
background-color: rgb(178, 232, 255);
|
|
191
|
+
display: block;
|
|
192
|
+
}
|
|
193
|
+
span.run11 {
|
|
194
|
+
background-color: rgb(178, 234, 255);
|
|
195
|
+
display: block;
|
|
196
|
+
}
|
|
197
|
+
span.run12 {
|
|
198
|
+
background-color: rgb(178, 237, 255);
|
|
199
|
+
display: block;
|
|
200
|
+
}
|
|
201
|
+
span.run13 {
|
|
202
|
+
background-color: rgb(178, 239, 255);
|
|
203
|
+
display: block;
|
|
204
|
+
}
|
|
205
|
+
span.run14 {
|
|
206
|
+
background-color: rgb(178, 242, 255);
|
|
207
|
+
display: block;
|
|
208
|
+
}
|
|
209
|
+
span.run15 {
|
|
210
|
+
background-color: rgb(178, 246, 255);
|
|
211
|
+
display: block;
|
|
212
|
+
}
|
|
213
|
+
span.run16 {
|
|
214
|
+
background-color: rgb(178, 248, 255);
|
|
215
|
+
display: block;
|
|
216
|
+
}
|
|
217
|
+
span.run17 {
|
|
218
|
+
background-color: rgb(178, 251, 255);
|
|
219
|
+
display: block;
|
|
220
|
+
}
|
|
221
|
+
span.run18 {
|
|
222
|
+
background-color: rgb(178, 253, 255);
|
|
223
|
+
display: block;
|
|
224
|
+
}
|
|
225
|
+
span.run19 {
|
|
226
|
+
background-color: rgb(178, 255, 253);
|
|
227
|
+
display: block;
|
|
228
|
+
}
|
|
229
|
+
span.run20 {
|
|
230
|
+
background-color: rgb(178, 255, 249);
|
|
231
|
+
display: block;
|
|
232
|
+
}
|
|
233
|
+
span.run21 {
|
|
234
|
+
background-color: rgb(178, 255, 247);
|
|
235
|
+
display: block;
|
|
236
|
+
}
|
|
237
|
+
span.run22 {
|
|
238
|
+
background-color: rgb(178, 255, 244);
|
|
239
|
+
display: block;
|
|
240
|
+
}
|
|
241
|
+
span.run23 {
|
|
242
|
+
background-color: rgb(178, 255, 242);
|
|
243
|
+
display: block;
|
|
244
|
+
}
|
|
245
|
+
span.run24 {
|
|
246
|
+
background-color: rgb(178, 255, 239);
|
|
247
|
+
display: block;
|
|
248
|
+
}
|
|
249
|
+
span.run25 {
|
|
250
|
+
background-color: rgb(178, 255, 235);
|
|
251
|
+
display: block;
|
|
252
|
+
}
|
|
253
|
+
span.run26 {
|
|
254
|
+
background-color: rgb(178, 255, 233);
|
|
255
|
+
display: block;
|
|
256
|
+
}
|
|
257
|
+
span.run27 {
|
|
258
|
+
background-color: rgb(178, 255, 230);
|
|
259
|
+
display: block;
|
|
260
|
+
}
|
|
261
|
+
span.run28 {
|
|
262
|
+
background-color: rgb(178, 255, 228);
|
|
263
|
+
display: block;
|
|
264
|
+
}
|
|
265
|
+
span.run29 {
|
|
266
|
+
background-color: rgb(178, 255, 225);
|
|
267
|
+
display: block;
|
|
268
|
+
}
|
|
269
|
+
span.run30 {
|
|
270
|
+
background-color: rgb(178, 255, 221);
|
|
271
|
+
display: block;
|
|
272
|
+
}
|
|
273
|
+
span.run31 {
|
|
274
|
+
background-color: rgb(178, 255, 219);
|
|
275
|
+
display: block;
|
|
276
|
+
}
|
|
277
|
+
span.run32 {
|
|
278
|
+
background-color: rgb(178, 255, 216);
|
|
279
|
+
display: block;
|
|
280
|
+
}
|
|
281
|
+
span.run33 {
|
|
282
|
+
background-color: rgb(178, 255, 214);
|
|
283
|
+
display: block;
|
|
284
|
+
}
|
|
285
|
+
span.run34 {
|
|
286
|
+
background-color: rgb(178, 255, 211);
|
|
287
|
+
display: block;
|
|
288
|
+
}
|
|
289
|
+
span.run35 {
|
|
290
|
+
background-color: rgb(178, 255, 207);
|
|
291
|
+
display: block;
|
|
292
|
+
}
|
|
293
|
+
span.run36 {
|
|
294
|
+
background-color: rgb(178, 255, 205);
|
|
295
|
+
display: block;
|
|
296
|
+
}
|
|
297
|
+
span.run37 {
|
|
298
|
+
background-color: rgb(178, 255, 202);
|
|
299
|
+
display: block;
|
|
300
|
+
}
|
|
301
|
+
span.run38 {
|
|
302
|
+
background-color: rgb(178, 255, 200);
|
|
303
|
+
display: block;
|
|
304
|
+
}
|
|
305
|
+
span.run39 {
|
|
306
|
+
background-color: rgb(178, 255, 197);
|
|
307
|
+
display: block;
|
|
308
|
+
}
|
|
309
|
+
span.run40 {
|
|
310
|
+
background-color: rgb(178, 255, 193);
|
|
311
|
+
display: block;
|
|
312
|
+
}
|
|
313
|
+
span.run41 {
|
|
314
|
+
background-color: rgb(178, 255, 191);
|
|
315
|
+
display: block;
|
|
316
|
+
}
|
|
317
|
+
span.run42 {
|
|
318
|
+
background-color: rgb(178, 255, 188);
|
|
319
|
+
display: block;
|
|
320
|
+
}
|
|
321
|
+
span.run43 {
|
|
322
|
+
background-color: rgb(178, 255, 186);
|
|
323
|
+
display: block;
|
|
324
|
+
}
|
|
325
|
+
span.run44 {
|
|
326
|
+
background-color: rgb(178, 255, 183);
|
|
327
|
+
display: block;
|
|
328
|
+
}
|
|
329
|
+
span.run45 {
|
|
330
|
+
background-color: rgb(178, 255, 179);
|
|
331
|
+
display: block;
|
|
332
|
+
}
|
|
333
|
+
span.run46 {
|
|
334
|
+
background-color: rgb(179, 255, 178);
|
|
335
|
+
display: block;
|
|
336
|
+
}
|
|
337
|
+
span.run47 {
|
|
338
|
+
background-color: rgb(182, 255, 178);
|
|
339
|
+
display: block;
|
|
340
|
+
}
|
|
341
|
+
span.run48 {
|
|
342
|
+
background-color: rgb(184, 255, 178);
|
|
343
|
+
display: block;
|
|
344
|
+
}
|
|
345
|
+
span.run49 {
|
|
346
|
+
background-color: rgb(187, 255, 178);
|
|
347
|
+
display: block;
|
|
348
|
+
}
|
|
349
|
+
span.run50 {
|
|
350
|
+
background-color: rgb(191, 255, 178);
|
|
351
|
+
display: block;
|
|
352
|
+
}
|
|
353
|
+
span.run51 {
|
|
354
|
+
background-color: rgb(193, 255, 178);
|
|
355
|
+
display: block;
|
|
356
|
+
}
|
|
357
|
+
span.run52 {
|
|
358
|
+
background-color: rgb(196, 255, 178);
|
|
359
|
+
display: block;
|
|
360
|
+
}
|
|
361
|
+
span.run53 {
|
|
362
|
+
background-color: rgb(198, 255, 178);
|
|
363
|
+
display: block;
|
|
364
|
+
}
|
|
365
|
+
span.run54 {
|
|
366
|
+
background-color: rgb(201, 255, 178);
|
|
367
|
+
display: block;
|
|
368
|
+
}
|
|
369
|
+
span.run55 {
|
|
370
|
+
background-color: rgb(205, 255, 178);
|
|
371
|
+
display: block;
|
|
372
|
+
}
|
|
373
|
+
span.run56 {
|
|
374
|
+
background-color: rgb(207, 255, 178);
|
|
375
|
+
display: block;
|
|
376
|
+
}
|
|
377
|
+
span.run57 {
|
|
378
|
+
background-color: rgb(210, 255, 178);
|
|
379
|
+
display: block;
|
|
380
|
+
}
|
|
381
|
+
span.run58 {
|
|
382
|
+
background-color: rgb(212, 255, 178);
|
|
383
|
+
display: block;
|
|
384
|
+
}
|
|
385
|
+
span.run59 {
|
|
386
|
+
background-color: rgb(215, 255, 178);
|
|
387
|
+
display: block;
|
|
388
|
+
}
|
|
389
|
+
span.run60 {
|
|
390
|
+
background-color: rgb(219, 255, 178);
|
|
391
|
+
display: block;
|
|
392
|
+
}
|
|
393
|
+
span.run61 {
|
|
394
|
+
background-color: rgb(221, 255, 178);
|
|
395
|
+
display: block;
|
|
396
|
+
}
|
|
397
|
+
span.run62 {
|
|
398
|
+
background-color: rgb(224, 255, 178);
|
|
399
|
+
display: block;
|
|
400
|
+
}
|
|
401
|
+
span.run63 {
|
|
402
|
+
background-color: rgb(226, 255, 178);
|
|
403
|
+
display: block;
|
|
404
|
+
}
|
|
405
|
+
span.run64 {
|
|
406
|
+
background-color: rgb(229, 255, 178);
|
|
407
|
+
display: block;
|
|
408
|
+
}
|
|
409
|
+
span.run65 {
|
|
410
|
+
background-color: rgb(233, 255, 178);
|
|
411
|
+
display: block;
|
|
412
|
+
}
|
|
413
|
+
span.run66 {
|
|
414
|
+
background-color: rgb(235, 255, 178);
|
|
415
|
+
display: block;
|
|
416
|
+
}
|
|
417
|
+
span.run67 {
|
|
418
|
+
background-color: rgb(238, 255, 178);
|
|
419
|
+
display: block;
|
|
420
|
+
}
|
|
421
|
+
span.run68 {
|
|
422
|
+
background-color: rgb(240, 255, 178);
|
|
423
|
+
display: block;
|
|
424
|
+
}
|
|
425
|
+
span.run69 {
|
|
426
|
+
background-color: rgb(243, 255, 178);
|
|
427
|
+
display: block;
|
|
428
|
+
}
|
|
429
|
+
span.run70 {
|
|
430
|
+
background-color: rgb(247, 255, 178);
|
|
431
|
+
display: block;
|
|
432
|
+
}
|
|
433
|
+
span.run71 {
|
|
434
|
+
background-color: rgb(249, 255, 178);
|
|
435
|
+
display: block;
|
|
436
|
+
}
|
|
437
|
+
span.run72 {
|
|
438
|
+
background-color: rgb(252, 255, 178);
|
|
439
|
+
display: block;
|
|
440
|
+
}
|
|
441
|
+
span.run73 {
|
|
442
|
+
background-color: rgb(255, 255, 178);
|
|
443
|
+
display: block;
|
|
444
|
+
}
|
|
445
|
+
span.run74 {
|
|
446
|
+
background-color: rgb(255, 252, 178);
|
|
447
|
+
display: block;
|
|
448
|
+
}
|
|
449
|
+
span.run75 {
|
|
450
|
+
background-color: rgb(255, 248, 178);
|
|
451
|
+
display: block;
|
|
452
|
+
}
|
|
453
|
+
span.run76 {
|
|
454
|
+
background-color: rgb(255, 246, 178);
|
|
455
|
+
display: block;
|
|
456
|
+
}
|
|
457
|
+
span.run77 {
|
|
458
|
+
background-color: rgb(255, 243, 178);
|
|
459
|
+
display: block;
|
|
460
|
+
}
|
|
461
|
+
span.run78 {
|
|
462
|
+
background-color: rgb(255, 240, 178);
|
|
463
|
+
display: block;
|
|
464
|
+
}
|
|
465
|
+
span.run79 {
|
|
466
|
+
background-color: rgb(255, 238, 178);
|
|
467
|
+
display: block;
|
|
468
|
+
}
|
|
469
|
+
span.run80 {
|
|
470
|
+
background-color: rgb(255, 234, 178);
|
|
471
|
+
display: block;
|
|
472
|
+
}
|
|
473
|
+
span.run81 {
|
|
474
|
+
background-color: rgb(255, 232, 178);
|
|
475
|
+
display: block;
|
|
476
|
+
}
|
|
477
|
+
span.run82 {
|
|
478
|
+
background-color: rgb(255, 229, 178);
|
|
479
|
+
display: block;
|
|
480
|
+
}
|
|
481
|
+
span.run83 {
|
|
482
|
+
background-color: rgb(255, 226, 178);
|
|
483
|
+
display: block;
|
|
484
|
+
}
|
|
485
|
+
span.run84 {
|
|
486
|
+
background-color: rgb(255, 224, 178);
|
|
487
|
+
display: block;
|
|
488
|
+
}
|
|
489
|
+
span.run85 {
|
|
490
|
+
background-color: rgb(255, 220, 178);
|
|
491
|
+
display: block;
|
|
492
|
+
}
|
|
493
|
+
span.run86 {
|
|
494
|
+
background-color: rgb(255, 218, 178);
|
|
495
|
+
display: block;
|
|
496
|
+
}
|
|
497
|
+
span.run87 {
|
|
498
|
+
background-color: rgb(255, 215, 178);
|
|
499
|
+
display: block;
|
|
500
|
+
}
|
|
501
|
+
span.run88 {
|
|
502
|
+
background-color: rgb(255, 212, 178);
|
|
503
|
+
display: block;
|
|
504
|
+
}
|
|
505
|
+
span.run89 {
|
|
506
|
+
background-color: rgb(255, 210, 178);
|
|
507
|
+
display: block;
|
|
508
|
+
}
|
|
509
|
+
span.run90 {
|
|
510
|
+
background-color: rgb(255, 206, 178);
|
|
511
|
+
display: block;
|
|
512
|
+
}
|
|
513
|
+
span.run91 {
|
|
514
|
+
background-color: rgb(255, 204, 178);
|
|
515
|
+
display: block;
|
|
516
|
+
}
|
|
517
|
+
span.run92 {
|
|
518
|
+
background-color: rgb(255, 201, 178);
|
|
519
|
+
display: block;
|
|
520
|
+
}
|
|
521
|
+
span.run93 {
|
|
522
|
+
background-color: rgb(255, 198, 178);
|
|
523
|
+
display: block;
|
|
524
|
+
}
|
|
525
|
+
span.run94 {
|
|
526
|
+
background-color: rgb(255, 196, 178);
|
|
527
|
+
display: block;
|
|
528
|
+
}
|
|
529
|
+
span.run95 {
|
|
530
|
+
background-color: rgb(255, 192, 178);
|
|
531
|
+
display: block;
|
|
532
|
+
}
|
|
533
|
+
span.run96 {
|
|
534
|
+
background-color: rgb(255, 189, 178);
|
|
535
|
+
display: block;
|
|
536
|
+
}
|
|
537
|
+
span.run97 {
|
|
538
|
+
background-color: rgb(255, 187, 178);
|
|
539
|
+
display: block;
|
|
540
|
+
}
|
|
541
|
+
span.run98 {
|
|
542
|
+
background-color: rgb(255, 184, 178);
|
|
543
|
+
display: block;
|
|
544
|
+
}
|
|
545
|
+
span.run99 {
|
|
546
|
+
background-color: rgb(255, 182, 178);
|
|
547
|
+
display: block;
|
|
548
|
+
}
|
|
549
|
+
span.run100 {
|
|
550
|
+
background-color: rgb(255, 178, 178);
|
|
551
|
+
display: block;
|
|
552
|
+
}
|
|
553
|
+
</style>
|
|
554
|
+
</head>
|
|
555
|
+
<body><h3>C0 code coverage information</h3>
|
|
556
|
+
<p>Generated on Tue Sep 30 12:14:23 +0900 2008 with <a href='http://eigenclass.org/hiki/rcov'>rcov 0.8.1.2</a>
|
|
557
|
+
</p>
|
|
558
|
+
<hr/>
|
|
559
|
+
<pre><span class='marked0'>Code reported as executed by Ruby looks like this...
|
|
560
|
+
</span><span class='marked1'>and this: this line is also marked as covered.
|
|
561
|
+
</span><span class='inferred0'>Lines considered as run by rcov, but not reported by Ruby, look like this,
|
|
562
|
+
</span><span class='inferred1'>and this: these lines were inferred by rcov (using simple heuristics).
|
|
563
|
+
</span><span class='uncovered0'>Finally, here's a line marked as not executed.
|
|
564
|
+
</span></pre>
|
|
565
|
+
<table class='report'><thead><tr><td class='heading'>Name</td>
|
|
566
|
+
<td class='heading'>Total lines</td>
|
|
567
|
+
<td class='heading'>Lines of code</td>
|
|
568
|
+
<td class='heading'>Total coverage</td>
|
|
569
|
+
<td class='heading'>Code coverage</td>
|
|
570
|
+
</tr>
|
|
571
|
+
</thead>
|
|
572
|
+
<tbody><tr class='light'><td><a href='-var-lib-gems-1_8-gems-cairo-1_7_0-src-lib-cairo-color_rb.html'>/var/lib/gems/1.8/gems/cairo-1.7.0/src/lib/cairo/color.rb</a>
|
|
573
|
+
</td>
|
|
574
|
+
<td class='lines_total'><tt>255</tt>
|
|
575
|
+
</td>
|
|
576
|
+
<td class='lines_code'><tt>228</tt>
|
|
577
|
+
</td>
|
|
578
|
+
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_total'>38.8%</tt>
|
|
579
|
+
</td>
|
|
580
|
+
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='39'/>
|
|
581
|
+
<td class='uncovered' width='61'/>
|
|
582
|
+
</tr>
|
|
583
|
+
</table>
|
|
584
|
+
</td>
|
|
585
|
+
</tr>
|
|
586
|
+
</table>
|
|
587
|
+
</td>
|
|
588
|
+
<td><table cellspacing='0' cellpadding='0' align='right'><tr><td><tt class='coverage_code'>31.6%</tt>
|
|
589
|
+
</td>
|
|
590
|
+
<td><table cellspacing='0' class='percent_graph' cellpadding='0' width='100'><tr><td class='covered' width='32'/>
|
|
591
|
+
<td class='uncovered' width='68'/>
|
|
592
|
+
</tr>
|
|
593
|
+
</table>
|
|
594
|
+
</td>
|
|
595
|
+
</tr>
|
|
596
|
+
</table>
|
|
597
|
+
</td>
|
|
598
|
+
</tr>
|
|
599
|
+
</tbody>
|
|
600
|
+
</table>
|
|
601
|
+
<pre><span class="marked0"><a name="line1"></a> 1 module Cairo
|
|
602
|
+
</span><span class="marked1"><a name="line2"></a> 2 module Color
|
|
603
|
+
</span><span class="marked0"><a name="line3"></a> 3 module_function
|
|
604
|
+
</span><span class="marked1"><a name="line4"></a> 4 def parse(value, robust=false)
|
|
605
|
+
</span><span class="uncovered0"><a name="line5"></a> 5 return value.dup if value.is_a?(Base)
|
|
606
|
+
</span><span class="uncovered1"><a name="line6"></a> 6 case value
|
|
607
|
+
</span><span class="uncovered0"><a name="line7"></a> 7 when Array
|
|
608
|
+
</span><span class="uncovered1"><a name="line8"></a> 8 case value.first
|
|
609
|
+
</span><span class="uncovered0"><a name="line9"></a> 9 when :cmyk, :cmyka
|
|
610
|
+
</span><span class="uncovered1"><a name="line10"></a> 10 CMYK.new(*value[1..-1])
|
|
611
|
+
</span><span class="uncovered0"><a name="line11"></a> 11 when :hsv, :hsva
|
|
612
|
+
</span><span class="uncovered1"><a name="line12"></a> 12 HSV.new(*value[1..-1])
|
|
613
|
+
</span><span class="uncovered0"><a name="line13"></a> 13 else
|
|
614
|
+
</span><span class="uncovered1"><a name="line14"></a> 14 type, *value = value if [:rgb, :rgba].include?(value.first)
|
|
615
|
+
</span><span class="uncovered0"><a name="line15"></a> 15 RGB.new(*value)
|
|
616
|
+
</span><span class="uncovered1"><a name="line16"></a> 16 end
|
|
617
|
+
</span><span class="uncovered0"><a name="line17"></a> 17 when /\A#/ #
|
|
618
|
+
</span><span class="uncovered1"><a name="line18"></a> 18 parse_hex_color(value)
|
|
619
|
+
</span><span class="uncovered0"><a name="line19"></a> 19 when String, Symbol
|
|
620
|
+
</span><span class="uncovered1"><a name="line20"></a> 20 name = Cairo.normalize_const_name(value)
|
|
621
|
+
</span><span class="uncovered0"><a name="line21"></a> 21 begin
|
|
622
|
+
</span><span class="uncovered1"><a name="line22"></a> 22 const_get(name).dup
|
|
623
|
+
</span><span class="uncovered0"><a name="line23"></a> 23 rescue NameError
|
|
624
|
+
</span><span class="uncovered1"><a name="line24"></a> 24 raise ArgumentError, "unknown color name: #{value}"
|
|
625
|
+
</span><span class="uncovered0"><a name="line25"></a> 25 end
|
|
626
|
+
</span><span class="uncovered1"><a name="line26"></a> 26 else
|
|
627
|
+
</span><span class="uncovered0"><a name="line27"></a> 27 if robust
|
|
628
|
+
</span><span class="uncovered1"><a name="line28"></a> 28 raise ArgumentError, "can't parse as color name: #{value.inspect}"
|
|
629
|
+
</span><span class="uncovered0"><a name="line29"></a> 29 end
|
|
630
|
+
</span><span class="uncovered1"><a name="line30"></a> 30 value
|
|
631
|
+
</span><span class="uncovered0"><a name="line31"></a> 31 end
|
|
632
|
+
</span><span class="uncovered1"><a name="line32"></a> 32 end
|
|
633
|
+
</span><span class="inferred0"><a name="line33"></a> 33
|
|
634
|
+
</span><span class="marked1"><a name="line34"></a> 34 HEX_RE = "(?i:[a-f\\d])"
|
|
635
|
+
</span><span class="marked0"><a name="line35"></a> 35 def parse_hex_color(value)
|
|
636
|
+
</span><span class="uncovered1"><a name="line36"></a> 36 case value
|
|
637
|
+
</span><span class="uncovered0"><a name="line37"></a> 37 when /\A#((?:#{HEX_RE}){3,4})\z/ #
|
|
638
|
+
</span><span class="uncovered1"><a name="line38"></a> 38 RGB.new(*$1.scan(/./).collect {|value| value.hex / 15.0})
|
|
639
|
+
</span><span class="uncovered0"><a name="line39"></a> 39 when /\A#((?:#{HEX_RE}{2,2}){3,4})\z/ #
|
|
640
|
+
</span><span class="uncovered1"><a name="line40"></a> 40 RGB.new(*$1.scan(/.{2,2}/).collect {|value| value.hex / 255.0})
|
|
641
|
+
</span><span class="uncovered0"><a name="line41"></a> 41 when /\A#((?:#{HEX_RE}{4,4}){3,4})\z/ #
|
|
642
|
+
</span><span class="uncovered1"><a name="line42"></a> 42 RGB.new(*$1.scan(/.{4,4}/).collect {|value| value.hex / 65535.0})
|
|
643
|
+
</span><span class="uncovered0"><a name="line43"></a> 43 else
|
|
644
|
+
</span><span class="uncovered1"><a name="line44"></a> 44 message = "invalid hex color format: #{value} should be "
|
|
645
|
+
</span><span class="uncovered0"><a name="line45"></a> 45 message << "#RGB, #RGBA, #RRGGBB, #RRGGBBAA, #RRRRGGGGBBBB "
|
|
646
|
+
</span><span class="uncovered1"><a name="line46"></a> 46 message << "or #RRRRGGGGBBBBAAAA"
|
|
647
|
+
</span><span class="uncovered0"><a name="line47"></a> 47 raise ArgumentError, message
|
|
648
|
+
</span><span class="uncovered1"><a name="line48"></a> 48 end
|
|
649
|
+
</span><span class="uncovered0"><a name="line49"></a> 49 end
|
|
650
|
+
</span><span class="inferred1"><a name="line50"></a> 50
|
|
651
|
+
</span><span class="marked0"><a name="line51"></a> 51 class Base
|
|
652
|
+
</span><span class="marked1"><a name="line52"></a> 52 attr_accessor :alpha
|
|
653
|
+
</span><span class="inferred0"><a name="line53"></a> 53
|
|
654
|
+
</span><span class="marked1"><a name="line54"></a> 54 alias_method :a, :alpha
|
|
655
|
+
</span><span class="marked0"><a name="line55"></a> 55 alias_method :a=, :alpha=
|
|
656
|
+
</span><span class="inferred1"><a name="line56"></a> 56
|
|
657
|
+
</span><span class="marked0"><a name="line57"></a> 57 def initialize(a)
|
|
658
|
+
</span><span class="marked1"><a name="line58"></a> 58 assert_in_range(a, "alpha channel")
|
|
659
|
+
</span><span class="marked0"><a name="line59"></a> 59 @alpha = a
|
|
660
|
+
</span><span class="inferred1"><a name="line60"></a> 60 end
|
|
661
|
+
</span><span class="inferred0"><a name="line61"></a> 61
|
|
662
|
+
</span><span class="marked1"><a name="line62"></a> 62 private
|
|
663
|
+
</span><span class="marked0"><a name="line63"></a> 63 def assert_in_range(value, description)
|
|
664
|
+
</span><span class="marked1"><a name="line64"></a> 64 unless (0.0..1.0).include?(value)
|
|
665
|
+
</span><span class="uncovered0"><a name="line65"></a> 65 raise ArgumentError,
|
|
666
|
+
</span><span class="uncovered1"><a name="line66"></a> 66 "#{description} value should be in [0.0, 1.0]: #{value.inspect}"
|
|
667
|
+
</span><span class="uncovered0"><a name="line67"></a> 67 end
|
|
668
|
+
</span><span class="marked1"><a name="line68"></a> 68 end
|
|
669
|
+
</span><span class="inferred0"><a name="line69"></a> 69 end
|
|
670
|
+
</span><span class="inferred1"><a name="line70"></a> 70
|
|
671
|
+
</span><span class="marked0"><a name="line71"></a> 71 class RGB < Base
|
|
672
|
+
</span><span class="marked1"><a name="line72"></a> 72 attr_accessor :red, :green, :blue
|
|
673
|
+
</span><span class="inferred0"><a name="line73"></a> 73
|
|
674
|
+
</span><span class="marked1"><a name="line74"></a> 74 alias_method :r, :red
|
|
675
|
+
</span><span class="marked0"><a name="line75"></a> 75 alias_method :r=, :red=
|
|
676
|
+
</span><span class="marked1"><a name="line76"></a> 76 alias_method :g, :green
|
|
677
|
+
</span><span class="marked0"><a name="line77"></a> 77 alias_method :g=, :green=
|
|
678
|
+
</span><span class="marked1"><a name="line78"></a> 78 alias_method :b, :blue
|
|
679
|
+
</span><span class="marked0"><a name="line79"></a> 79 alias_method :b=, :blue=
|
|
680
|
+
</span><span class="inferred1"><a name="line80"></a> 80
|
|
681
|
+
</span><span class="marked0"><a name="line81"></a> 81 def initialize(r, g, b, a=1.0)
|
|
682
|
+
</span><span class="marked1"><a name="line82"></a> 82 super(a)
|
|
683
|
+
</span><span class="marked0"><a name="line83"></a> 83 assert_in_range(r, "red")
|
|
684
|
+
</span><span class="marked1"><a name="line84"></a> 84 assert_in_range(g, "green")
|
|
685
|
+
</span><span class="marked0"><a name="line85"></a> 85 assert_in_range(b, "blue")
|
|
686
|
+
</span><span class="marked1"><a name="line86"></a> 86 @red = r
|
|
687
|
+
</span><span class="marked0"><a name="line87"></a> 87 @green = g
|
|
688
|
+
</span><span class="marked1"><a name="line88"></a> 88 @blue = b
|
|
689
|
+
</span><span class="inferred0"><a name="line89"></a> 89 end
|
|
690
|
+
</span><span class="inferred1"><a name="line90"></a> 90
|
|
691
|
+
</span><span class="marked0"><a name="line91"></a> 91 def to_a
|
|
692
|
+
</span><span class="uncovered1"><a name="line92"></a> 92 [@red, @green, @blue, @alpha]
|
|
693
|
+
</span><span class="uncovered0"><a name="line93"></a> 93 end
|
|
694
|
+
</span><span class="marked1"><a name="line94"></a> 94 alias_method :to_ary, :to_a
|
|
695
|
+
</span><span class="inferred0"><a name="line95"></a> 95
|
|
696
|
+
</span><span class="marked1"><a name="line96"></a> 96 def to_s
|
|
697
|
+
</span><span class="uncovered0"><a name="line97"></a> 97 "#%02X%02X%02X%02X" % to_a.collect {|v| (v * 255).ceil}
|
|
698
|
+
</span><span class="uncovered1"><a name="line98"></a> 98 end
|
|
699
|
+
</span><span class="inferred0"><a name="line99"></a> 99
|
|
700
|
+
</span><span class="marked1"><a name="line100"></a>100 def to_rgb
|
|
701
|
+
</span><span class="uncovered0"><a name="line101"></a>101 clone
|
|
702
|
+
</span><span class="uncovered1"><a name="line102"></a>102 end
|
|
703
|
+
</span><span class="inferred0"><a name="line103"></a>103
|
|
704
|
+
</span><span class="marked1"><a name="line104"></a>104 def to_cmyk
|
|
705
|
+
</span><span class="uncovered0"><a name="line105"></a>105 cmy = [1.0 - @red, 1.0 - @green, 1.0 - @blue]
|
|
706
|
+
</span><span class="uncovered1"><a name="line106"></a>106 key_plate = cmy.min
|
|
707
|
+
</span><span class="uncovered0"><a name="line107"></a>107 if key_plate < 1.0
|
|
708
|
+
</span><span class="uncovered1"><a name="line108"></a>108 one_k = 1.0 - key_plate
|
|
709
|
+
</span><span class="uncovered0"><a name="line109"></a>109 cmyk = cmy.collect {|value| (value - key_plate) / one_k} + [key_plate]
|
|
710
|
+
</span><span class="uncovered1"><a name="line110"></a>110 else
|
|
711
|
+
</span><span class="uncovered0"><a name="line111"></a>111 cmyk = [0, 0, 0, key_plate]
|
|
712
|
+
</span><span class="uncovered1"><a name="line112"></a>112 end
|
|
713
|
+
</span><span class="uncovered0"><a name="line113"></a>113 cmyka = cmyk + [@alpha]
|
|
714
|
+
</span><span class="uncovered1"><a name="line114"></a>114 CMYK.new(*cmyka)
|
|
715
|
+
</span><span class="uncovered0"><a name="line115"></a>115 end
|
|
716
|
+
</span><span class="inferred1"><a name="line116"></a>116
|
|
717
|
+
</span><span class="marked0"><a name="line117"></a>117 def to_hsv
|
|
718
|
+
</span><span class="uncovered1"><a name="line118"></a>118 max = [@red, @blue, @green].max
|
|
719
|
+
</span><span class="uncovered0"><a name="line119"></a>119 if max > 0
|
|
720
|
+
</span><span class="uncovered1"><a name="line120"></a>120 min = [@red, @blue, @green].min
|
|
721
|
+
</span><span class="uncovered0"><a name="line121"></a>121 max_min = max - min
|
|
722
|
+
</span><span class="uncovered1"><a name="line122"></a>122 case max
|
|
723
|
+
</span><span class="uncovered0"><a name="line123"></a>123 when @red
|
|
724
|
+
</span><span class="uncovered1"><a name="line124"></a>124 numerator = @green - @blue
|
|
725
|
+
</span><span class="uncovered0"><a name="line125"></a>125 angle = 0
|
|
726
|
+
</span><span class="uncovered1"><a name="line126"></a>126 when @blue
|
|
727
|
+
</span><span class="uncovered0"><a name="line127"></a>127 numerator = @blue - @red
|
|
728
|
+
</span><span class="uncovered1"><a name="line128"></a>128 angle = 120
|
|
729
|
+
</span><span class="uncovered0"><a name="line129"></a>129 when @green
|
|
730
|
+
</span><span class="uncovered1"><a name="line130"></a>130 numerator = @red - @green
|
|
731
|
+
</span><span class="uncovered0"><a name="line131"></a>131 angle = 240
|
|
732
|
+
</span><span class="uncovered1"><a name="line132"></a>132 end
|
|
733
|
+
</span><span class="uncovered0"><a name="line133"></a>133 h = max_min > 0 ? 60 * numerator / max_min + angle : 0.0
|
|
734
|
+
</span><span class="uncovered1"><a name="line134"></a>134 s = max_min / max
|
|
735
|
+
</span><span class="uncovered0"><a name="line135"></a>135 else
|
|
736
|
+
</span><span class="uncovered1"><a name="line136"></a>136 h = 0.0
|
|
737
|
+
</span><span class="uncovered0"><a name="line137"></a>137 s = 0.0
|
|
738
|
+
</span><span class="uncovered1"><a name="line138"></a>138 end
|
|
739
|
+
</span><span class="uncovered0"><a name="line139"></a>139 v = max
|
|
740
|
+
</span><span class="uncovered1"><a name="line140"></a>140 HSV.new(h, s, v, @alpha)
|
|
741
|
+
</span><span class="uncovered0"><a name="line141"></a>141 end
|
|
742
|
+
</span><span class="uncovered1"><a name="line142"></a>142 end
|
|
743
|
+
</span><span class="inferred0"><a name="line143"></a>143
|
|
744
|
+
</span><span class="marked1"><a name="line144"></a>144 class CMYK < Base
|
|
745
|
+
</span><span class="marked0"><a name="line145"></a>145 attr_accessor :cyan, :magenta, :yellow, :key_plate
|
|
746
|
+
</span><span class="inferred1"><a name="line146"></a>146
|
|
747
|
+
</span><span class="marked0"><a name="line147"></a>147 alias_method :c, :cyan
|
|
748
|
+
</span><span class="marked1"><a name="line148"></a>148 alias_method :c=, :cyan=
|
|
749
|
+
</span><span class="marked0"><a name="line149"></a>149 alias_method :m, :magenta
|
|
750
|
+
</span><span class="marked1"><a name="line150"></a>150 alias_method :m=, :magenta=
|
|
751
|
+
</span><span class="marked0"><a name="line151"></a>151 alias_method :y, :yellow
|
|
752
|
+
</span><span class="marked1"><a name="line152"></a>152 alias_method :y=, :yellow=
|
|
753
|
+
</span><span class="marked0"><a name="line153"></a>153 alias_method :k, :key_plate
|
|
754
|
+
</span><span class="marked1"><a name="line154"></a>154 alias_method :k=, :key_plate=
|
|
755
|
+
</span><span class="inferred0"><a name="line155"></a>155
|
|
756
|
+
</span><span class="marked1"><a name="line156"></a>156 def initialize(c, m, y, k, a=1.0)
|
|
757
|
+
</span><span class="uncovered0"><a name="line157"></a>157 super(a)
|
|
758
|
+
</span><span class="uncovered1"><a name="line158"></a>158 assert_in_range(c, "cyan")
|
|
759
|
+
</span><span class="uncovered0"><a name="line159"></a>159 assert_in_range(m, "magenta")
|
|
760
|
+
</span><span class="uncovered1"><a name="line160"></a>160 assert_in_range(y, "yellow")
|
|
761
|
+
</span><span class="uncovered0"><a name="line161"></a>161 assert_in_range(k, "key plate")
|
|
762
|
+
</span><span class="uncovered1"><a name="line162"></a>162 @cyan = c
|
|
763
|
+
</span><span class="uncovered0"><a name="line163"></a>163 @magenta = m
|
|
764
|
+
</span><span class="uncovered1"><a name="line164"></a>164 @yellow = y
|
|
765
|
+
</span><span class="uncovered0"><a name="line165"></a>165 @key_plate = k
|
|
766
|
+
</span><span class="uncovered1"><a name="line166"></a>166 end
|
|
767
|
+
</span><span class="inferred0"><a name="line167"></a>167
|
|
768
|
+
</span><span class="marked1"><a name="line168"></a>168 def to_a
|
|
769
|
+
</span><span class="uncovered0"><a name="line169"></a>169 [@cyan, @magenta, @yellow, @key_plate, @alpha]
|
|
770
|
+
</span><span class="uncovered1"><a name="line170"></a>170 end
|
|
771
|
+
</span><span class="marked0"><a name="line171"></a>171 alias_method :to_ary, :to_a
|
|
772
|
+
</span><span class="inferred1"><a name="line172"></a>172
|
|
773
|
+
</span><span class="marked0"><a name="line173"></a>173 def to_rgb
|
|
774
|
+
</span><span class="uncovered1"><a name="line174"></a>174 one_k = 1.0 - @key_plate
|
|
775
|
+
</span><span class="uncovered0"><a name="line175"></a>175 rgba = [
|
|
776
|
+
</span><span class="uncovered1"><a name="line176"></a>176 (1.0 - @cyan) * one_k,
|
|
777
|
+
</span><span class="uncovered0"><a name="line177"></a>177 (1.0 - @magenta) * one_k,
|
|
778
|
+
</span><span class="uncovered1"><a name="line178"></a>178 (1.0 - @yellow) * one_k,
|
|
779
|
+
</span><span class="uncovered0"><a name="line179"></a>179 @alpha,
|
|
780
|
+
</span><span class="uncovered1"><a name="line180"></a>180 ]
|
|
781
|
+
</span><span class="uncovered0"><a name="line181"></a>181 RGB.new(*rgba)
|
|
782
|
+
</span><span class="uncovered1"><a name="line182"></a>182 end
|
|
783
|
+
</span><span class="inferred0"><a name="line183"></a>183
|
|
784
|
+
</span><span class="marked1"><a name="line184"></a>184 def to_cmyk
|
|
785
|
+
</span><span class="uncovered0"><a name="line185"></a>185 clone
|
|
786
|
+
</span><span class="uncovered1"><a name="line186"></a>186 end
|
|
787
|
+
</span><span class="inferred0"><a name="line187"></a>187
|
|
788
|
+
</span><span class="marked1"><a name="line188"></a>188 def to_hsv
|
|
789
|
+
</span><span class="uncovered0"><a name="line189"></a>189 to_rgb.to_hsv
|
|
790
|
+
</span><span class="uncovered1"><a name="line190"></a>190 end
|
|
791
|
+
</span><span class="uncovered0"><a name="line191"></a>191 end
|
|
792
|
+
</span><span class="inferred1"><a name="line192"></a>192
|
|
793
|
+
</span><span class="marked0"><a name="line193"></a>193 class HSV < Base
|
|
794
|
+
</span><span class="marked1"><a name="line194"></a>194 attr_accessor :hue, :saturation, :value
|
|
795
|
+
</span><span class="inferred0"><a name="line195"></a>195
|
|
796
|
+
</span><span class="marked1"><a name="line196"></a>196 alias_method :h, :hue
|
|
797
|
+
</span><span class="marked0"><a name="line197"></a>197 alias_method :h=, :hue=
|
|
798
|
+
</span><span class="marked1"><a name="line198"></a>198 alias_method :s, :saturation
|
|
799
|
+
</span><span class="marked0"><a name="line199"></a>199 alias_method :s=, :saturation=
|
|
800
|
+
</span><span class="marked1"><a name="line200"></a>200 alias_method :v, :value
|
|
801
|
+
</span><span class="marked0"><a name="line201"></a>201 alias_method :v=, :value=
|
|
802
|
+
</span><span class="inferred1"><a name="line202"></a>202
|
|
803
|
+
</span><span class="marked0"><a name="line203"></a>203 def initialize(h, s, v, a=1.0)
|
|
804
|
+
</span><span class="uncovered1"><a name="line204"></a>204 super(a)
|
|
805
|
+
</span><span class="uncovered0"><a name="line205"></a>205 assert_in_range(s, "saturation")
|
|
806
|
+
</span><span class="uncovered1"><a name="line206"></a>206 assert_in_range(v, "value")
|
|
807
|
+
</span><span class="uncovered0"><a name="line207"></a>207 @hue = h.modulo(360.0)
|
|
808
|
+
</span><span class="uncovered1"><a name="line208"></a>208 @saturation = s
|
|
809
|
+
</span><span class="uncovered0"><a name="line209"></a>209 @value = v
|
|
810
|
+
</span><span class="uncovered1"><a name="line210"></a>210 end
|
|
811
|
+
</span><span class="inferred0"><a name="line211"></a>211
|
|
812
|
+
</span><span class="marked1"><a name="line212"></a>212 def to_a
|
|
813
|
+
</span><span class="uncovered0"><a name="line213"></a>213 [@hue, @saturation, @value, @alpha]
|
|
814
|
+
</span><span class="uncovered1"><a name="line214"></a>214 end
|
|
815
|
+
</span><span class="marked0"><a name="line215"></a>215 alias_method :to_ary, :to_a
|
|
816
|
+
</span><span class="inferred1"><a name="line216"></a>216
|
|
817
|
+
</span><span class="marked0"><a name="line217"></a>217 def to_rgb
|
|
818
|
+
</span><span class="uncovered1"><a name="line218"></a>218 if s > 0
|
|
819
|
+
</span><span class="uncovered0"><a name="line219"></a>219 h_60 = @hue / 60.0
|
|
820
|
+
</span><span class="uncovered1"><a name="line220"></a>220 hi = h_60.floor.modulo(6)
|
|
821
|
+
</span><span class="uncovered0"><a name="line221"></a>221 f = h_60 - hi
|
|
822
|
+
</span><span class="uncovered1"><a name="line222"></a>222 p = @value * (1 - @saturation)
|
|
823
|
+
</span><span class="uncovered0"><a name="line223"></a>223 q = @value * (1 - f * @saturation)
|
|
824
|
+
</span><span class="uncovered1"><a name="line224"></a>224 t = @value * (1 - (1 - f) * @saturation)
|
|
825
|
+
</span><span class="uncovered0"><a name="line225"></a>225 case hi
|
|
826
|
+
</span><span class="uncovered1"><a name="line226"></a>226 when 0
|
|
827
|
+
</span><span class="uncovered0"><a name="line227"></a>227 rgb = [@value, t, p]
|
|
828
|
+
</span><span class="uncovered1"><a name="line228"></a>228 when 1
|
|
829
|
+
</span><span class="uncovered0"><a name="line229"></a>229 rgb = [q, @value, p]
|
|
830
|
+
</span><span class="uncovered1"><a name="line230"></a>230 when 2
|
|
831
|
+
</span><span class="uncovered0"><a name="line231"></a>231 rgb = [p, @value, t]
|
|
832
|
+
</span><span class="uncovered1"><a name="line232"></a>232 when 3
|
|
833
|
+
</span><span class="uncovered0"><a name="line233"></a>233 rgb = [p, q, @value]
|
|
834
|
+
</span><span class="uncovered1"><a name="line234"></a>234 when 4
|
|
835
|
+
</span><span class="uncovered0"><a name="line235"></a>235 rgb = [t, p, @value]
|
|
836
|
+
</span><span class="uncovered1"><a name="line236"></a>236 when 5
|
|
837
|
+
</span><span class="uncovered0"><a name="line237"></a>237 rgb = [@value, p, q]
|
|
838
|
+
</span><span class="uncovered1"><a name="line238"></a>238 end
|
|
839
|
+
</span><span class="uncovered0"><a name="line239"></a>239 rgba = rgb + [@alpha]
|
|
840
|
+
</span><span class="uncovered1"><a name="line240"></a>240 RGB.new(*rgba)
|
|
841
|
+
</span><span class="uncovered0"><a name="line241"></a>241 else
|
|
842
|
+
</span><span class="uncovered1"><a name="line242"></a>242 RGB.new(@value, @value, @value, @alpha)
|
|
843
|
+
</span><span class="uncovered0"><a name="line243"></a>243 end
|
|
844
|
+
</span><span class="uncovered1"><a name="line244"></a>244 end
|
|
845
|
+
</span><span class="inferred0"><a name="line245"></a>245
|
|
846
|
+
</span><span class="marked1"><a name="line246"></a>246 def to_cmyk
|
|
847
|
+
</span><span class="uncovered0"><a name="line247"></a>247 to_rgb.to_cmyk
|
|
848
|
+
</span><span class="uncovered1"><a name="line248"></a>248 end
|
|
849
|
+
</span><span class="inferred0"><a name="line249"></a>249
|
|
850
|
+
</span><span class="marked1"><a name="line250"></a>250 def to_hsv
|
|
851
|
+
</span><span class="uncovered0"><a name="line251"></a>251 clone
|
|
852
|
+
</span><span class="uncovered1"><a name="line252"></a>252 end
|
|
853
|
+
</span><span class="uncovered0"><a name="line253"></a>253 end
|
|
854
|
+
</span><span class="uncovered1"><a name="line254"></a>254 end
|
|
855
|
+
</span><span class="uncovered0"><a name="line255"></a>255 end
|
|
856
|
+
</span></pre><hr/>
|
|
857
|
+
<p>Generated using the <a href='http://eigenclass.org/hiki.rb?rcov'>rcov code coverage analysis tool for Ruby</a>
|
|
858
|
+
version 0.8.1.2.</p>
|
|
859
|
+
<p><a href='http://validator.w3.org/check/referer'><img src='http://www.w3.org/Icons/valid-xhtml10' height='31' alt='Valid XHTML 1.0!' width='88'/>
|
|
860
|
+
</a>
|
|
861
|
+
<a href='http://jigsaw.w3.org/css-validator/check/referer'><img src='http://jigsaw.w3.org/css-validator/images/vcss' alt='Valid CSS!' style='border:0;width:88px;height:31px'/>
|
|
862
|
+
</a>
|
|
863
|
+
</p>
|
|
864
|
+
</body>
|
|
865
|
+
</html>
|