workbook 0.3.1 → 0.4

Sign up to get free protection for your applications and to get access to all the features.
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>