workbook 0.3.1 → 0.4

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.
Files changed (62) hide show
  1. data/.yardoc/checksums +21 -18
  2. data/.yardoc/object_types +0 -0
  3. data/.yardoc/objects/root.dat +0 -0
  4. data/Gemfile.lock +4 -4
  5. data/README.md +8 -5
  6. data/doc/RubyXL/Cell.html +18 -19
  7. data/doc/RubyXL/Workbook.html +116 -114
  8. data/doc/RubyXL.html +3 -3
  9. data/doc/Workbook/Book.html +513 -145
  10. data/doc/Workbook/Cell.html +181 -170
  11. data/doc/Workbook/Format.html +591 -77
  12. data/doc/Workbook/Modules/RawObjectsStorage.html +39 -45
  13. data/doc/Workbook/Modules/TableDiffSort.html +225 -87
  14. data/doc/Workbook/Modules/TypeParser.html +182 -131
  15. data/doc/Workbook/Modules.html +3 -3
  16. data/doc/Workbook/Readers/CsvReader.html +101 -39
  17. data/doc/Workbook/Readers/OdsReader.html +564 -0
  18. data/doc/Workbook/Readers/TxtReader.html +12 -14
  19. data/doc/Workbook/Readers/XlsReader.html +154 -138
  20. data/doc/Workbook/Readers/XlsShared.html +71 -72
  21. data/doc/Workbook/Readers/XlsxReader.html +89 -82
  22. data/doc/Workbook/Readers.html +6 -6
  23. data/doc/Workbook/Row.html +421 -206
  24. data/doc/Workbook/Sheet.html +379 -32
  25. data/doc/Workbook/Table.html +328 -90
  26. data/doc/Workbook/Template.html +55 -60
  27. data/doc/Workbook/Writers/CsvTableWriter.html +33 -8
  28. data/doc/Workbook/Writers/HtmlWriter.html +393 -0
  29. data/doc/Workbook/Writers/XlsWriter.html +132 -92
  30. data/doc/Workbook/Writers.html +5 -5
  31. data/doc/Workbook.html +16 -4
  32. data/doc/_index.html +45 -15
  33. data/doc/class_list.html +1 -1
  34. data/doc/css/style.css +10 -0
  35. data/doc/file.README.html +53 -48
  36. data/doc/frames.html +1 -1
  37. data/doc/index.html +53 -48
  38. data/doc/method_list.html +232 -56
  39. data/doc/top-level-namespace.html +3 -3
  40. data/lib/workbook/book.rb +27 -1
  41. data/lib/workbook/format.rb +46 -7
  42. data/lib/workbook/modules/type_parser.rb +8 -1
  43. data/lib/workbook/readers/ods_reader.rb +93 -0
  44. data/lib/workbook/row.rb +7 -0
  45. data/lib/workbook/sheet.rb +10 -0
  46. data/lib/workbook/version.rb +1 -1
  47. data/lib/workbook/writers/html_writer.rb +56 -0
  48. data/test/artifacts/book_with_tabs_and_colours.ods +0 -0
  49. data/test/artifacts/complex_types.ods +0 -0
  50. data/test/artifacts/excel_different_types.ods +0 -0
  51. data/test/artifacts/simple_sheet.ods +0 -0
  52. data/test/test_book.rb +6 -0
  53. data/test/test_format.rb +39 -0
  54. data/test/test_modules_type_parser.rb +2 -0
  55. data/test/test_readers_csv_reader.rb +44 -0
  56. data/test/test_readers_ods_reader.rb +51 -0
  57. data/test/test_readers_txt_reader.rb +53 -0
  58. data/test/test_row.rb +12 -0
  59. data/test/test_sheet.rb +12 -0
  60. data/test/test_writers_html_writer.rb +37 -0
  61. data/workbook.gemspec +2 -2
  62. metadata +21 -4
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  Module: Workbook::Readers::TxtReader
8
8
 
9
- &mdash; Documentation by YARD 0.8.3
9
+ &mdash; Documentation by YARD 0.8.5.2
10
10
 
11
11
  </title>
12
12
 
@@ -179,11 +179,10 @@
179
179
  <td>
180
180
  <pre class="code"><span class="info file"># File 'lib/workbook/readers/txt_reader.rb', line 5</span>
181
181
 
182
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_load_txt identifier id'>load_txt</span> <span class='rubyid_text identifier id'>text</span>
183
- <span class='rubyid_csv identifier id'>csv</span> <span class='assign token'>=</span> <span class='rubyid_text identifier id'>text</span>
184
- <span class='rubyid_parse_txt identifier id'>parse_txt</span> <span class='rubyid_csv identifier id'>csv</span>
185
- <span class='rubyid_end end kw'>end</span>
186
- </pre>
182
+ <span class='kw'>def</span> <span class='id identifier rubyid_load_txt'>load_txt</span> <span class='id identifier rubyid_text'>text</span>
183
+ <span class='id identifier rubyid_csv'>csv</span> <span class='op'>=</span> <span class='id identifier rubyid_text'>text</span>
184
+ <span class='id identifier rubyid_parse_txt'>parse_txt</span> <span class='id identifier rubyid_csv'>csv</span>
185
+ <span class='kw'>end</span></pre>
187
186
  </td>
188
187
  </tr>
189
188
  </table>
@@ -213,12 +212,11 @@
213
212
  <td>
214
213
  <pre class="code"><span class="info file"># File 'lib/workbook/readers/txt_reader.rb', line 10</span>
215
214
 
216
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_parse_txt identifier id'>parse_txt</span> <span class='rubyid_csv_raw identifier id'>csv_raw</span>
217
- <span class='rubyid_csv identifier id'>csv</span> <span class='assign token'>=</span> <span class='lbrack token'>[</span><span class='rbrack token'>]</span>
218
- <span class='rubyid_csv_raw identifier id'>csv_raw</span><span class='dot token'>.</span><span class='rubyid_split identifier id'>split</span><span class='lparen token'>(</span><span class='string val'>&quot;\n&quot;</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_each identifier id'>each</span> <span class='lbrace token'>{</span><span class='bitor op'>|</span><span class='rubyid_l identifier id'>l</span><span class='bitor op'>|</span> <span class='rubyid_csv identifier id'>csv</span> <span class='lshft op'>&lt;&lt;</span> <span class='rubyid_FasterCSV constant id'>FasterCSV</span><span class='dot token'>.</span><span class='rubyid_parse_line identifier id'>parse_line</span><span class='lparen token'>(</span><span class='rubyid_l identifier id'>l</span><span class='comma token'>,</span><span class='lbrace token'>{</span><span class='symbol val'>:col_sep=</span><span class='gt op'>&gt;</span><span class='string val'>&quot;\t&quot;</span><span class='rbrace token'>}</span><span class='rparen token'>)</span><span class='semicolon token'>;</span><span class='rubyid_nil nil kw'>nil</span><span class='rbrace token'>}</span>
219
- <span class='rubyid_self self kw'>self</span><span class='lbrack token'>[</span><span class='integer val'>0</span><span class='rbrack token'>]</span><span class='assign token'>=</span><span class='rubyid_Workbook constant id'>Workbook</span><span class='colon2 op'>::</span><span class='rubyid_Sheet constant id'>Sheet</span><span class='dot token'>.</span><span class='rubyid_new identifier id'>new</span><span class='lparen token'>(</span><span class='rubyid_csv identifier id'>csv</span><span class='comma token'>,</span><span class='rubyid_self self kw'>self</span><span class='comma token'>,</span><span class='lbrace token'>{</span><span class='symbol val'>:parse_cells_on_batch_creation=</span><span class='gt op'>&gt;</span><span class='rubyid_true true kw'>true</span><span class='comma token'>,</span> <span class='symbol val'>:cell_parse_options=</span><span class='gt op'>&gt;</span><span class='lbrace token'>{</span><span class='symbol val'>:detect_date=</span><span class='gt op'>&gt;</span><span class='rubyid_true true kw'>true</span><span class='rbrace token'>}</span><span class='rbrace token'>}</span><span class='rparen token'>)</span> <span class='rubyid_unless unless_mod kw'>unless</span> <span class='rubyid_sheet identifier id'>sheet</span><span class='dot token'>.</span><span class='rubyid_has_contents? fid id'>has_contents?</span>
220
- <span class='rubyid_end end kw'>end</span>
221
- </pre>
215
+ <span class='kw'>def</span> <span class='id identifier rubyid_parse_txt'>parse_txt</span> <span class='id identifier rubyid_csv_raw'>csv_raw</span>
216
+ <span class='id identifier rubyid_csv'>csv</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
217
+ <span class='id identifier rubyid_csv_raw'>csv_raw</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\n</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_l'>l</span><span class='op'>|</span> <span class='id identifier rubyid_csv'>csv</span> <span class='op'>&lt;&lt;</span> <span class='id identifier rubyid_csv_lib'>csv_lib</span><span class='period'>.</span><span class='id identifier rubyid_parse_line'>parse_line</span><span class='lparen'>(</span><span class='id identifier rubyid_l'>l</span><span class='comma'>,</span><span class='lbrace'>{</span><span class='symbol'>:col_sep</span><span class='op'>=&gt;</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>\t</span><span class='tstring_end'>&quot;</span></span><span class='rbrace'>}</span><span class='rparen'>)</span><span class='semicolon'>;</span><span class='kw'>nil</span><span class='rbrace'>}</span>
218
+ <span class='kw'>self</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='op'>=</span><span class='const'>Workbook</span><span class='op'>::</span><span class='const'>Sheet</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_csv'>csv</span><span class='comma'>,</span><span class='kw'>self</span><span class='comma'>,</span><span class='lbrace'>{</span><span class='symbol'>:parse_cells_on_batch_creation</span><span class='op'>=&gt;</span><span class='kw'>true</span><span class='comma'>,</span> <span class='symbol'>:cell_parse_options</span><span class='op'>=&gt;</span><span class='lbrace'>{</span><span class='symbol'>:detect_date</span><span class='op'>=&gt;</span><span class='kw'>true</span><span class='rbrace'>}</span><span class='rbrace'>}</span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_sheet'>sheet</span><span class='period'>.</span><span class='id identifier rubyid_has_contents?'>has_contents?</span>
219
+ <span class='kw'>end</span></pre>
222
220
  </td>
223
221
  </tr>
224
222
  </table>
@@ -229,9 +227,9 @@
229
227
  </div>
230
228
 
231
229
  <div id="footer">
232
- Generated on Thu Jan 17 13:15:56 2013 by
230
+ Generated on Sun May 5 14:58:04 2013 by
233
231
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
234
- 0.8.3 (ruby-1.8.7).
232
+ 0.8.5.2 (ruby-1.9.3).
235
233
  </div>
236
234
 
237
235
  </body>
@@ -6,7 +6,7 @@
6
6
  <title>
7
7
  Module: Workbook::Readers::XlsReader
8
8
 
9
- &mdash; Documentation by YARD 0.8.3
9
+ &mdash; Documentation by YARD 0.8.5.2
10
10
 
11
11
  </title>
12
12
 
@@ -120,28 +120,6 @@
120
120
 
121
121
 
122
122
 
123
- <span class="summary_desc"><div class='inline'></div></span>
124
-
125
- </li>
126
-
127
-
128
- <li class="public ">
129
- <span class="summary_signature">
130
-
131
- <a href="#ms_formatting_to_strftime-instance_method" title="#ms_formatting_to_strftime (instance method)">- (Object) <strong>ms_formatting_to_strftime</strong>(ms_nr_format) </a>
132
-
133
-
134
-
135
- </span>
136
-
137
-
138
-
139
-
140
-
141
-
142
-
143
-
144
-
145
123
  <span class="summary_desc"><div class='inline'></div></span>
146
124
 
147
125
  </li>
@@ -164,28 +142,6 @@
164
142
 
165
143
 
166
144
 
167
- <span class="summary_desc"><div class='inline'></div></span>
168
-
169
- </li>
170
-
171
-
172
- <li class="public ">
173
- <span class="summary_signature">
174
-
175
- <a href="#xls_color_to_html_hex-instance_method" title="#xls_color_to_html_hex (instance method)">- (Object) <strong>xls_color_to_html_hex</strong>(color_sym) </a>
176
-
177
-
178
-
179
- </span>
180
-
181
-
182
-
183
-
184
-
185
-
186
-
187
-
188
-
189
145
  <span class="summary_desc"><div class='inline'></div></span>
190
146
 
191
147
  </li>
@@ -215,7 +171,6 @@
215
171
  <pre class="lines">
216
172
 
217
173
 
218
- 7
219
174
  8
220
175
  9
221
176
  10
@@ -229,62 +184,27 @@
229
184
  18
230
185
  19
231
186
  20
232
- 21</pre>
187
+ 21
188
+ 22</pre>
233
189
  </td>
234
190
  <td>
235
- <pre class="code"><span class="info file"># File 'lib/workbook/readers/xls_reader.rb', line 7</span>
236
-
237
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_load_xls identifier id'>load_xls</span> <span class='rubyid_file_obj identifier id'>file_obj</span>
238
- <span class='rubyid_begin begin kw'>begin</span>
239
- <span class='rubyid_sp identifier id'>sp</span> <span class='assign token'>=</span> <span class='rubyid_Spreadsheet constant id'>Spreadsheet</span><span class='dot token'>.</span><span class='rubyid_open identifier id'>open</span><span class='lparen token'>(</span><span class='rubyid_file_obj identifier id'>file_obj</span><span class='comma token'>,</span> <span class='rubyid_mode identifier id'>mode</span><span class='assign token'>=</span><span class='string val'>'rb'</span><span class='rparen token'>)</span>
240
- <span class='rubyid_template identifier id'>template</span><span class='dot token'>.</span><span class='rubyid_add_raw identifier id'>add_raw</span> <span class='rubyid_sp identifier id'>sp</span>
241
- <span class='rubyid_parse_xls identifier id'>parse_xls</span> <span class='rubyid_sp identifier id'>sp</span>
242
- <span class='rubyid_rescue rescue kw'>rescue</span> <span class='rubyid_Ole constant id'>Ole</span><span class='colon2 op'>::</span><span class='rubyid_Storage constant id'>Storage</span><span class='colon2 op'>::</span><span class='rubyid_FormatError constant id'>FormatError</span> <span class='assign token'>=</span><span class='gt op'>&gt;</span> <span class='rubyid_e identifier id'>e</span>
243
- <span class='rubyid_begin begin kw'>begin</span>
244
- <span class='comment val'># Assuming it is a tab separated txt inside .xls</span>
245
- <span class='rubyid_open identifier id'>open</span><span class='lparen token'>(</span><span class='rubyid_file_obj identifier id'>file_obj</span><span class='dot token'>.</span><span class='rubyid_path identifier id'>path</span><span class='comma token'>,</span> <span class='string val'>'txt'</span><span class='rparen token'>)</span>
246
- <span class='rubyid_rescue rescue kw'>rescue</span>
247
- <span class='rubyid_raise identifier id'>raise</span> <span class='rubyid_e identifier id'>e</span>
248
- <span class='rubyid_end end kw'>end</span>
249
- <span class='rubyid_end end kw'>end</span>
250
-
251
- <span class='rubyid_end end kw'>end</span>
252
- </pre>
253
- </td>
254
- </tr>
255
- </table>
256
- </div>
257
-
258
- <div class="method_details ">
259
- <h3 class="signature " id="ms_formatting_to_strftime-instance_method">
260
-
261
- - (<tt>Object</tt>) <strong>ms_formatting_to_strftime</strong>(ms_nr_format)
262
-
263
-
264
-
265
-
266
-
267
- </h3><table class="source_code">
268
- <tr>
269
- <td>
270
- <pre class="lines">
271
-
272
-
273
- 95
274
- 96
275
- 97
276
- 98
277
- 99</pre>
278
- </td>
279
- <td>
280
- <pre class="code"><span class="info file"># File 'lib/workbook/readers/xls_reader.rb', line 95</span>
281
-
282
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_ms_formatting_to_strftime identifier id'>ms_formatting_to_strftime</span> <span class='rubyid_ms_nr_format identifier id'>ms_nr_format</span>
283
- <span class='rubyid_ms_nr_format identifier id'>ms_nr_format</span> <span class='assign token'>=</span> <span class='rubyid_ms_nr_format identifier id'>ms_nr_format</span><span class='dot token'>.</span><span class='rubyid_downcase identifier id'>downcase</span>
284
- <span class='rubyid_return return kw'>return</span> <span class='rubyid_nil nil kw'>nil</span> <span class='rubyid_if if_mod kw'>if</span> <span class='rubyid_ms_nr_format identifier id'>ms_nr_format</span> <span class='eq op'>==</span> <span class='string val'>'general'</span>
285
- <span class='rubyid_ms_nr_format identifier id'>ms_nr_format</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'yyyy'</span><span class='comma token'>,</span><span class='string val'>'%Y'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'dddd'</span><span class='comma token'>,</span><span class='string val'>'%A'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'mmmm'</span><span class='comma token'>,</span><span class='string val'>'%B'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'ddd'</span><span class='comma token'>,</span><span class='string val'>'%a'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'mmm'</span><span class='comma token'>,</span><span class='string val'>'%b'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'yy'</span><span class='comma token'>,</span><span class='string val'>'%y'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'dd'</span><span class='comma token'>,</span><span class='string val'>'%d'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'mm'</span><span class='comma token'>,</span><span class='string val'>'%m'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'y'</span><span class='comma token'>,</span><span class='string val'>'%y'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'%%y'</span><span class='comma token'>,</span><span class='string val'>'%y'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'d'</span><span class='comma token'>,</span><span class='string val'>'%e'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'%%e'</span><span class='comma token'>,</span><span class='string val'>'%d'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'m'</span><span class='comma token'>,</span><span class='string val'>'%m'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'%%m'</span><span class='comma token'>,</span><span class='string val'>'%m'</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>';@'</span><span class='comma token'>,</span><span class='string val'>''</span><span class='rparen token'>)</span><span class='dot token'>.</span><span class='rubyid_gsub identifier id'>gsub</span><span class='lparen token'>(</span><span class='string val'>'\\'</span><span class='comma token'>,</span><span class='string val'>''</span><span class='rparen token'>)</span>
286
- <span class='rubyid_end end kw'>end</span>
287
- </pre>
191
+ <pre class="code"><span class="info file"># File 'lib/workbook/readers/xls_reader.rb', line 8</span>
192
+
193
+ <span class='kw'>def</span> <span class='id identifier rubyid_load_xls'>load_xls</span> <span class='id identifier rubyid_file_obj'>file_obj</span>
194
+ <span class='kw'>begin</span>
195
+ <span class='id identifier rubyid_sp'>sp</span> <span class='op'>=</span> <span class='const'>Spreadsheet</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='id identifier rubyid_file_obj'>file_obj</span><span class='comma'>,</span> <span class='id identifier rubyid_mode'>mode</span><span class='op'>=</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>rb</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
196
+ <span class='id identifier rubyid_template'>template</span><span class='period'>.</span><span class='id identifier rubyid_add_raw'>add_raw</span> <span class='id identifier rubyid_sp'>sp</span>
197
+ <span class='id identifier rubyid_parse_xls'>parse_xls</span> <span class='id identifier rubyid_sp'>sp</span>
198
+ <span class='kw'>rescue</span> <span class='const'>Ole</span><span class='op'>::</span><span class='const'>Storage</span><span class='op'>::</span><span class='const'>FormatError</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span>
199
+ <span class='kw'>begin</span>
200
+ <span class='comment'># Assuming it is a tab separated txt inside .xls
201
+ </span> <span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='id identifier rubyid_file_obj'>file_obj</span><span class='period'>.</span><span class='id identifier rubyid_path'>path</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>txt</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
202
+ <span class='kw'>rescue</span>
203
+ <span class='id identifier rubyid_raise'>raise</span> <span class='id identifier rubyid_e'>e</span>
204
+ <span class='kw'>end</span>
205
+ <span class='kw'>end</span>
206
+
207
+ <span class='kw'>end</span></pre>
288
208
  </td>
289
209
  </tr>
290
210
  </table>
@@ -305,44 +225,140 @@
305
225
  <pre class="lines">
306
226
 
307
227
 
308
- 24</pre>
309
- </td>
310
- <td>
311
- <pre class="code"><span class="info file"># File 'lib/workbook/readers/xls_reader.rb', line 24</span>
312
-
313
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_parse_xls identifier id'>parse_xls</span> <span class='rubyid_xls_spreadsheet identifier id'>xls_spreadsheet</span><span class='assign token'>=</span><span class='rubyid_template identifier id'>template</span><span class='dot token'>.</span><span class='rubyid_raws identifier id'>raws</span><span class='lbrack token'>[</span><span class='rubyid_Spreadsheet constant id'>Spreadsheet</span><span class='colon2 op'>::</span><span class='rubyid_Excel constant id'>Excel</span><span class='colon2 op'>::</span><span class='rubyid_Workbook constant id'>Workbook</span><span class='rbrack token'>]</span><span class='comma token'>,</span> <span class='rubyid_options identifier id'>options</span><span class='assign token'>=</span><span class='lbrace token'>{</span><span class='rbrace token'>}</span>
314
- </pre>
315
- </td>
316
- </tr>
317
- </table>
318
- </div>
319
-
320
- <div class="method_details ">
321
- <h3 class="signature " id="xls_color_to_html_hex-instance_method">
322
-
323
- - (<tt>Object</tt>) <strong>xls_color_to_html_hex</strong>(color_sym)
324
-
325
-
326
-
327
-
328
-
329
- </h3><table class="source_code">
330
- <tr>
331
- <td>
332
- <pre class="lines">
333
-
334
-
335
- 91
336
- 92
337
- 93</pre>
228
+ 25
229
+ 26
230
+ 27
231
+ 28
232
+ 29
233
+ 30
234
+ 31
235
+ 32
236
+ 33
237
+ 34
238
+ 35
239
+ 36
240
+ 37
241
+ 38
242
+ 39
243
+ 40
244
+ 41
245
+ 42
246
+ 43
247
+ 44
248
+ 45
249
+ 46
250
+ 47
251
+ 48
252
+ 49
253
+ 50
254
+ 51
255
+ 52
256
+ 53
257
+ 54
258
+ 55
259
+ 56
260
+ 57
261
+ 58
262
+ 59
263
+ 60
264
+ 61
265
+ 62
266
+ 63
267
+ 64
268
+ 65
269
+ 66
270
+ 67
271
+ 68
272
+ 69
273
+ 70
274
+ 71
275
+ 72
276
+ 73
277
+ 74
278
+ 75
279
+ 76
280
+ 77
281
+ 78
282
+ 79
283
+ 80
284
+ 81
285
+ 82
286
+ 83
287
+ 84
288
+ 85
289
+ 86
290
+ 87
291
+ 88
292
+ 89</pre>
338
293
  </td>
339
294
  <td>
340
- <pre class="code"><span class="info file"># File 'lib/workbook/readers/xls_reader.rb', line 91</span>
341
-
342
- <span class='rubyid_def def kw'>def</span> <span class='rubyid_xls_color_to_html_hex identifier id'>xls_color_to_html_hex</span> <span class='rubyid_color_sym identifier id'>color_sym</span>
343
- <span class='rubyid_Workbook constant id'>Workbook</span><span class='colon2 op'>::</span><span class='rubyid_Book constant id'>Book</span><span class='colon2 op'>::</span><span class='rubyid_XLS_COLORS constant id'>XLS_COLORS</span><span class='lbrack token'>[</span><span class='rubyid_color_sym identifier id'>color_sym</span><span class='rbrack token'>]</span> <span class='question op'>?</span> <span class='rubyid_Workbook constant id'>Workbook</span><span class='colon2 op'>::</span><span class='rubyid_Book constant id'>Book</span><span class='colon2 op'>::</span><span class='rubyid_XLS_COLORS constant id'>XLS_COLORS</span><span class='lbrack token'>[</span><span class='rubyid_color_sym identifier id'>color_sym</span><span class='rbrack token'>]</span> <span class='colon op'>:</span> <span class='string val'>&quot;#000000&quot;</span>
344
- <span class='rubyid_end end kw'>end</span>
345
- </pre>
295
+ <pre class="code"><span class="info file"># File 'lib/workbook/readers/xls_reader.rb', line 25</span>
296
+
297
+ <span class='kw'>def</span> <span class='id identifier rubyid_parse_xls'>parse_xls</span> <span class='id identifier rubyid_xls_spreadsheet'>xls_spreadsheet</span><span class='op'>=</span><span class='id identifier rubyid_template'>template</span><span class='period'>.</span><span class='id identifier rubyid_raws'>raws</span><span class='lbracket'>[</span><span class='const'>Spreadsheet</span><span class='op'>::</span><span class='const'>Excel</span><span class='op'>::</span><span class='const'>Workbook</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span>
298
+ <span class='id identifier rubyid_options'>options</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='symbol'>:additional_type_parsing</span><span class='op'>=&gt;</span><span class='kw'>true</span><span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span> <span class='id identifier rubyid_options'>options</span>
299
+ <span class='id identifier rubyid_number_of_worksheets'>number_of_worksheets</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_spreadsheet'>xls_spreadsheet</span><span class='period'>.</span><span class='id identifier rubyid_worksheets'>worksheets</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span>
300
+ <span class='lparen'>(</span><span class='int'>0</span><span class='op'>..</span><span class='id identifier rubyid_number_of_worksheets'>number_of_worksheets</span><span class='op'>-</span><span class='int'>1</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_si'>si</span><span class='op'>|</span>
301
+ <span class='id identifier rubyid_xls_sheet'>xls_sheet</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_spreadsheet'>xls_spreadsheet</span><span class='period'>.</span><span class='id identifier rubyid_worksheets'>worksheets</span><span class='lbracket'>[</span><span class='id identifier rubyid_si'>si</span><span class='rbracket'>]</span>
302
+ <span class='kw'>begin</span>
303
+ <span class='id identifier rubyid_number_of_rows'>number_of_rows</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_spreadsheet'>xls_spreadsheet</span><span class='period'>.</span><span class='id identifier rubyid_worksheets'>worksheets</span><span class='lbracket'>[</span><span class='id identifier rubyid_si'>si</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span>
304
+ <span class='id identifier rubyid_s'>s</span> <span class='op'>=</span> <span class='id identifier rubyid_create_or_open_sheet_at'>create_or_open_sheet_at</span><span class='lparen'>(</span><span class='id identifier rubyid_si'>si</span><span class='rparen'>)</span>
305
+ <span class='lparen'>(</span><span class='int'>0</span><span class='op'>..</span><span class='id identifier rubyid_number_of_rows'>number_of_rows</span><span class='op'>-</span><span class='int'>1</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_ri'>ri</span><span class='op'>|</span>
306
+ <span class='id identifier rubyid_xls_row'>xls_row</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_sheet'>xls_sheet</span><span class='period'>.</span><span class='id identifier rubyid_row'>row</span><span class='lparen'>(</span><span class='id identifier rubyid_ri'>ri</span><span class='rparen'>)</span>
307
+ <span class='id identifier rubyid_r'>r</span> <span class='op'>=</span> <span class='id identifier rubyid_s'>s</span><span class='period'>.</span><span class='id identifier rubyid_table'>table</span><span class='period'>.</span><span class='id identifier rubyid_create_or_open_row_at'>create_or_open_row_at</span><span class='lparen'>(</span><span class='id identifier rubyid_ri'>ri</span><span class='rparen'>)</span>
308
+ <span class='id identifier rubyid_col_widths'>col_widths</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_sheet'>xls_sheet</span><span class='period'>.</span><span class='id identifier rubyid_columns'>columns</span><span class='period'>.</span><span class='id identifier rubyid_collect'>collect</span><span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_c'>c</span><span class='op'>|</span> <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_width'>width</span> <span class='kw'>if</span> <span class='id identifier rubyid_c'>c</span><span class='rbrace'>}</span>
309
+ <span class='id identifier rubyid_xls_row'>xls_row</span><span class='period'>.</span><span class='id identifier rubyid_each_with_index'>each_with_index</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_xls_cell'>xls_cell</span><span class='comma'>,</span><span class='id identifier rubyid_ci'>ci</span><span class='op'>|</span>
310
+
311
+ <span class='kw'>begin</span>
312
+ <span class='id identifier rubyid_r'>r</span><span class='lbracket'>[</span><span class='id identifier rubyid_ci'>ci</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='const'>Workbook</span><span class='op'>::</span><span class='const'>Cell</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='id identifier rubyid_xls_cell'>xls_cell</span>
313
+ <span class='id identifier rubyid_r'>r</span><span class='lbracket'>[</span><span class='id identifier rubyid_ci'>ci</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_parse!'>parse!</span>
314
+ <span class='kw'>rescue</span> <span class='const'>ArgumentError</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_e'>e</span>
315
+ <span class='kw'>if</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_message'>message</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>not a Spreadsheet::Formula</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
316
+ <span class='id identifier rubyid_v'>v</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_cell'>xls_cell</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span>
317
+ <span class='kw'>if</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span> <span class='op'>==</span> <span class='const'>Float</span> <span class='kw'>and</span> <span class='id identifier rubyid_xls_row'>xls_row</span><span class='period'>.</span><span class='id identifier rubyid_format'>format</span><span class='lparen'>(</span><span class='id identifier rubyid_ci'>ci</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_date?'>date?</span>
318
+ <span class='id identifier rubyid_xls_row'>xls_row</span><span class='lbracket'>[</span><span class='id identifier rubyid_ci'>ci</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_v'>v</span>
319
+ <span class='id identifier rubyid_v'>v</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_row'>xls_row</span><span class='period'>.</span><span class='id identifier rubyid_datetime'>datetime</span><span class='lparen'>(</span><span class='id identifier rubyid_ci'>ci</span><span class='rparen'>)</span>
320
+ <span class='kw'>end</span>
321
+ <span class='kw'>if</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Spreadsheet</span><span class='op'>::</span><span class='const'>Excel</span><span class='op'>::</span><span class='const'>Error</span>
322
+ <span class='id identifier rubyid_v'>v</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>----!</span><span class='tstring_end'>&quot;</span></span>
323
+ <span class='kw'>end</span>
324
+ <span class='id identifier rubyid_r'>r</span><span class='lbracket'>[</span><span class='id identifier rubyid_ci'>ci</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='const'>Workbook</span><span class='op'>::</span><span class='const'>Cell</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='id identifier rubyid_v'>v</span>
325
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_message'>message</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>not a Spreadsheet::Link</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
326
+ <span class='id identifier rubyid_r'>r</span><span class='lbracket'>[</span><span class='id identifier rubyid_ci'>ci</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='const'>Workbook</span><span class='op'>::</span><span class='const'>Cell</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='id identifier rubyid_xls_cell'>xls_cell</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
327
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_message'>message</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>not a Spreadsheet::Link</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
328
+ <span class='id identifier rubyid_r'>r</span><span class='lbracket'>[</span><span class='id identifier rubyid_ci'>ci</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='const'>Workbook</span><span class='op'>::</span><span class='const'>Cell</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='id identifier rubyid_xls_cell'>xls_cell</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
329
+ <span class='kw'>elsif</span> <span class='id identifier rubyid_e'>e</span><span class='period'>.</span><span class='id identifier rubyid_message'>message</span><span class='period'>.</span><span class='id identifier rubyid_match'>match</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>not a Spreadsheet::Excel::Error</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
330
+ <span class='id identifier rubyid_r'>r</span><span class='lbracket'>[</span><span class='id identifier rubyid_ci'>ci</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>._.</span><span class='tstring_end'>&quot;</span></span>
331
+ <span class='kw'>else</span>
332
+ <span class='id identifier rubyid_r'>r</span><span class='lbracket'>[</span><span class='id identifier rubyid_ci'>ci</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>._.</span><span class='tstring_end'>&quot;</span></span> <span class='comment'># raise e (we're going to be silent for now)
333
+ </span> <span class='kw'>end</span>
334
+ <span class='kw'>end</span>
335
+ <span class='id identifier rubyid_xls_format'>xls_format</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_row'>xls_row</span><span class='period'>.</span><span class='id identifier rubyid_format'>format</span><span class='lparen'>(</span><span class='id identifier rubyid_ci'>ci</span><span class='rparen'>)</span>
336
+ <span class='id identifier rubyid_col_width'>col_width</span> <span class='op'>=</span> <span class='kw'>nil</span>
337
+
338
+ <span class='kw'>if</span> <span class='id identifier rubyid_ri'>ri</span> <span class='op'>==</span> <span class='int'>0</span>
339
+ <span class='id identifier rubyid_col_width'>col_width</span> <span class='op'>=</span> <span class='id identifier rubyid_col_widths'>col_widths</span><span class='lbracket'>[</span><span class='id identifier rubyid_ci'>ci</span><span class='rbracket'>]</span>
340
+ <span class='kw'>end</span>
341
+ <span class='id identifier rubyid_f'>f</span> <span class='op'>=</span> <span class='id identifier rubyid_template'>template</span><span class='period'>.</span><span class='id identifier rubyid_create_or_find_format_by'>create_or_find_format_by</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>object_id_</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_xls_format'>xls_format</span><span class='period'>.</span><span class='id identifier rubyid_object_id'>object_id</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span><span class='comma'>,</span><span class='id identifier rubyid_col_width'>col_width</span>
342
+ <span class='id identifier rubyid_f'>f</span><span class='lbracket'>[</span><span class='symbol'>:width</span><span class='rbracket'>]</span><span class='op'>=</span> <span class='id identifier rubyid_col_width'>col_width</span>
343
+ <span class='id identifier rubyid_f'>f</span><span class='lbracket'>[</span><span class='symbol'>:rotation</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_format'>xls_format</span><span class='period'>.</span><span class='id identifier rubyid_rotation'>rotation</span> <span class='kw'>if</span> <span class='id identifier rubyid_xls_format'>xls_format</span><span class='period'>.</span><span class='id identifier rubyid_rotation'>rotation</span>
344
+ <span class='id identifier rubyid_f'>f</span><span class='lbracket'>[</span><span class='symbol'>:background_color</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_color_to_html_hex'>xls_color_to_html_hex</span><span class='lparen'>(</span><span class='id identifier rubyid_xls_format'>xls_format</span><span class='period'>.</span><span class='id identifier rubyid_pattern_fg_color'>pattern_fg_color</span><span class='rparen'>)</span>
345
+ <span class='id identifier rubyid_f'>f</span><span class='lbracket'>[</span><span class='symbol'>:number_format</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_ms_formatting_to_strftime'>ms_formatting_to_strftime</span><span class='lparen'>(</span><span class='id identifier rubyid_xls_format'>xls_format</span><span class='period'>.</span><span class='id identifier rubyid_number_format'>number_format</span><span class='rparen'>)</span>
346
+ <span class='id identifier rubyid_f'>f</span><span class='lbracket'>[</span><span class='symbol'>:text_direction</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_format'>xls_format</span><span class='period'>.</span><span class='id identifier rubyid_text_direction'>text_direction</span>
347
+ <span class='id identifier rubyid_f'>f</span><span class='lbracket'>[</span><span class='symbol'>:font_family</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_xls_format'>xls_format</span><span class='period'>.</span><span class='id identifier rubyid_font'>font</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='rbrace'>}</span><span class='tstring_content'>, </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_xls_format'>xls_format</span><span class='period'>.</span><span class='id identifier rubyid_font'>font</span><span class='period'>.</span><span class='id identifier rubyid_family'>family</span><span class='rbrace'>}</span><span class='tstring_end'>&quot;</span></span>
348
+ <span class='id identifier rubyid_f'>f</span><span class='lbracket'>[</span><span class='symbol'>:font_weight</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_format'>xls_format</span><span class='period'>.</span><span class='id identifier rubyid_font'>font</span><span class='period'>.</span><span class='id identifier rubyid_weight'>weight</span>
349
+ <span class='id identifier rubyid_f'>f</span><span class='lbracket'>[</span><span class='symbol'>:color</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_xls_color_to_html_hex'>xls_color_to_html_hex</span><span class='lparen'>(</span><span class='id identifier rubyid_xls_format'>xls_format</span><span class='period'>.</span><span class='id identifier rubyid_font'>font</span><span class='period'>.</span><span class='id identifier rubyid_color'>color</span><span class='rparen'>)</span>
350
+
351
+ <span class='id identifier rubyid_f'>f</span><span class='period'>.</span><span class='id identifier rubyid_add_raw'>add_raw</span> <span class='id identifier rubyid_xls_format'>xls_format</span>
352
+
353
+ <span class='id identifier rubyid_r'>r</span><span class='lbracket'>[</span><span class='id identifier rubyid_ci'>ci</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_format'>format</span> <span class='op'>=</span> <span class='id identifier rubyid_f'>f</span>
354
+ <span class='kw'>end</span>
355
+ <span class='kw'>end</span>
356
+ <span class='kw'>rescue</span> <span class='const'>TypeError</span>
357
+ <span class='id identifier rubyid_puts'>puts</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>WARNING: Failed at worksheet (</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_si'>si</span><span class='rbrace'>}</span><span class='tstring_content'>)... ignored</span><span class='tstring_end'>&quot;</span></span>
358
+ <span class='comment'>#ignore SpreadsheetGem can be buggy...
359
+ </span> <span class='kw'>end</span>
360
+ <span class='kw'>end</span>
361
+ <span class='kw'>end</span></pre>
346
362
  </td>
347
363
  </tr>
348
364
  </table>
@@ -353,9 +369,9 @@
353
369
  </div>
354
370
 
355
371
  <div id="footer">
356
- Generated on Thu Jan 17 13:15:57 2013 by
372
+ Generated on Sun May 5 14:58:05 2013 by
357
373
  <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
358
- 0.8.3 (ruby-1.8.7).
374
+ 0.8.5.2 (ruby-1.9.3).
359
375
  </div>
360
376
 
361
377
  </body>