write_xlsx 1.09.3 → 1.11.2

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 (2065) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +128 -0
  3. data/.rubocop_todo.yml +445 -0
  4. data/Changes +49 -0
  5. data/Gemfile +2 -0
  6. data/LICENSE.txt +1 -1
  7. data/README.md +2 -2
  8. data/Rakefile +14 -8
  9. data/examples/array_formula.rb +2 -2
  10. data/examples/autofilter.rb +50 -26
  11. data/examples/autofit.rb +37 -0
  12. data/examples/chart_area.rb +16 -16
  13. data/examples/chart_bar.rb +16 -16
  14. data/examples/chart_clustered.rb +12 -12
  15. data/examples/chart_column.rb +16 -16
  16. data/examples/chart_combined.rb +27 -28
  17. data/examples/chart_data_labels.rb +103 -115
  18. data/examples/chart_data_table.rb +29 -29
  19. data/examples/chart_data_tools.rb +55 -61
  20. data/examples/chart_doughnut.rb +34 -38
  21. data/examples/chart_gauge.rb +20 -20
  22. data/examples/chart_line.rb +44 -45
  23. data/examples/chart_pareto.rb +18 -18
  24. data/examples/chart_pie.rb +22 -22
  25. data/examples/chart_radar.rb +41 -47
  26. data/examples/chart_scatter.rb +16 -16
  27. data/examples/chart_secondary_axis.rb +16 -16
  28. data/examples/chart_stock.rb +22 -23
  29. data/examples/chart_styles.rb +8 -9
  30. data/examples/colors.rb +31 -34
  31. data/examples/comments1.rb +1 -0
  32. data/examples/comments2.rb +85 -114
  33. data/examples/conditional_format.rb +164 -155
  34. data/examples/data_validate.rb +135 -122
  35. data/examples/date_time.rb +30 -30
  36. data/examples/defined_name.rb +5 -5
  37. data/examples/demo.rb +14 -16
  38. data/examples/diag_border.rb +7 -8
  39. data/examples/dynamic_arrays.rb +247 -0
  40. data/examples/formats.rb +95 -107
  41. data/examples/headers.rb +2 -7
  42. data/examples/hyperlink1.rb +5 -6
  43. data/examples/ignore_errors.rb +2 -2
  44. data/examples/indent.rb +2 -2
  45. data/examples/lambda.rb +43 -0
  46. data/examples/macros.rb +6 -6
  47. data/examples/merge1.rb +1 -4
  48. data/examples/merge2.rb +9 -12
  49. data/examples/merge3.rb +6 -7
  50. data/examples/merge4.rb +22 -24
  51. data/examples/merge5.rb +24 -24
  52. data/examples/merge6.rb +8 -8
  53. data/examples/outline.rb +9 -17
  54. data/examples/outline_collapsed.rb +7 -7
  55. data/examples/panes.rb +16 -16
  56. data/examples/properties.rb +9 -9
  57. data/examples/protection.rb +2 -2
  58. data/examples/rich_strings.rb +25 -17
  59. data/examples/shape1.rb +9 -9
  60. data/examples/shape2.rb +19 -19
  61. data/examples/shape3.rb +6 -6
  62. data/examples/shape4.rb +9 -9
  63. data/examples/shape5.rb +9 -9
  64. data/examples/shape6.rb +9 -9
  65. data/examples/shape7.rb +15 -15
  66. data/examples/shape8.rb +15 -15
  67. data/examples/shape_all.rb +7 -7
  68. data/examples/sparklines1.rb +23 -24
  69. data/examples/sparklines2.rb +152 -152
  70. data/examples/tables.rb +119 -127
  71. data/examples/update_range_format_with_params.rb +4 -4
  72. data/examples/watermark.png +0 -0
  73. data/examples/watermark.rb +26 -0
  74. data/lib/write_xlsx/chart/area.rb +9 -9
  75. data/lib/write_xlsx/chart/axis.rb +13 -24
  76. data/lib/write_xlsx/chart/bar.rb +9 -12
  77. data/lib/write_xlsx/chart/caption.rb +1 -0
  78. data/lib/write_xlsx/chart/column.rb +4 -4
  79. data/lib/write_xlsx/chart/doughnut.rb +4 -2
  80. data/lib/write_xlsx/chart/legend.rb +1 -0
  81. data/lib/write_xlsx/chart/line.rb +18 -18
  82. data/lib/write_xlsx/chart/pie.rb +27 -14
  83. data/lib/write_xlsx/chart/radar.rb +10 -10
  84. data/lib/write_xlsx/chart/scatter.rb +23 -25
  85. data/lib/write_xlsx/chart/series.rb +112 -73
  86. data/lib/write_xlsx/chart/stock.rb +30 -24
  87. data/lib/write_xlsx/chart.rb +320 -269
  88. data/lib/write_xlsx/chartsheet.rb +33 -32
  89. data/lib/write_xlsx/col_name.rb +9 -3
  90. data/lib/write_xlsx/colors.rb +21 -19
  91. data/lib/write_xlsx/compatibility.rb +15 -15
  92. data/lib/write_xlsx/drawing.rb +72 -63
  93. data/lib/write_xlsx/format.rb +71 -69
  94. data/lib/write_xlsx/formats.rb +2 -0
  95. data/lib/write_xlsx/gradient.rb +7 -9
  96. data/lib/write_xlsx/package/app.rb +17 -16
  97. data/lib/write_xlsx/package/button.rb +9 -5
  98. data/lib/write_xlsx/package/comments.rb +36 -38
  99. data/lib/write_xlsx/package/conditional_format.rb +112 -120
  100. data/lib/write_xlsx/package/content_types.rb +21 -21
  101. data/lib/write_xlsx/package/core.rb +6 -4
  102. data/lib/write_xlsx/package/custom.rb +8 -7
  103. data/lib/write_xlsx/package/metadata.rb +7 -5
  104. data/lib/write_xlsx/package/packager.rb +39 -25
  105. data/lib/write_xlsx/package/relationships.rb +2 -1
  106. data/lib/write_xlsx/package/shared_strings.rb +17 -15
  107. data/lib/write_xlsx/package/styles.rb +74 -90
  108. data/lib/write_xlsx/package/table.rb +186 -131
  109. data/lib/write_xlsx/package/theme.rb +4 -3
  110. data/lib/write_xlsx/package/vml.rb +25 -31
  111. data/lib/write_xlsx/package/xml_writer_simple.rb +46 -40
  112. data/lib/write_xlsx/shape.rb +26 -36
  113. data/lib/write_xlsx/sheets.rb +41 -45
  114. data/lib/write_xlsx/sparkline.rb +299 -307
  115. data/lib/write_xlsx/utility.rb +210 -188
  116. data/lib/write_xlsx/version.rb +3 -1
  117. data/lib/write_xlsx/workbook.rb +289 -331
  118. data/lib/write_xlsx/worksheet/cell_data.rb +87 -66
  119. data/lib/write_xlsx/worksheet/data_validation.rb +79 -74
  120. data/lib/write_xlsx/worksheet/hyperlink.rb +14 -19
  121. data/lib/write_xlsx/worksheet/page_setup.rb +10 -11
  122. data/lib/write_xlsx/worksheet.rb +1449 -866
  123. data/lib/write_xlsx/zip_file_utils.rb +33 -34
  124. data/lib/write_xlsx.rb +2 -3
  125. data/write_xlsx.gemspec +26 -19
  126. metadata +72 -3884
  127. data/.gitattributes +0 -1
  128. data/.gitignore +0 -45
  129. data/.travis.yml +0 -75
  130. data/bin/extract_vba.rb +0 -34
  131. data/test/chart/test_add_series.rb +0 -190
  132. data/test/chart/test_process_names.rb +0 -27
  133. data/test/chart/test_write_a_latin.rb +0 -22
  134. data/test/chart/test_write_auto.rb +0 -15
  135. data/test/chart/test_write_ax_id.rb +0 -15
  136. data/test/chart/test_write_ax_pos.rb +0 -15
  137. data/test/chart/test_write_cross_ax.rb +0 -15
  138. data/test/chart/test_write_crosses.rb +0 -15
  139. data/test/chart/test_write_d_lbls.rb +0 -292
  140. data/test/chart/test_write_format_code.rb +0 -16
  141. data/test/chart/test_write_idx.rb +0 -15
  142. data/test/chart/test_write_label_align.rb +0 -15
  143. data/test/chart/test_write_label_offset.rb +0 -15
  144. data/test/chart/test_write_lang.rb +0 -15
  145. data/test/chart/test_write_layout.rb +0 -15
  146. data/test/chart/test_write_legend.rb +0 -16
  147. data/test/chart/test_write_legend_pos.rb +0 -23
  148. data/test/chart/test_write_major_gridlines.rb +0 -15
  149. data/test/chart/test_write_marker.rb +0 -17
  150. data/test/chart/test_write_marker_size.rb +0 -15
  151. data/test/chart/test_write_marker_value.rb +0 -16
  152. data/test/chart/test_write_num_cache.rb +0 -16
  153. data/test/chart/test_write_number_format.rb +0 -48
  154. data/test/chart/test_write_order.rb +0 -15
  155. data/test/chart/test_write_orientation.rb +0 -15
  156. data/test/chart/test_write_page_margins.rb +0 -15
  157. data/test/chart/test_write_page_setup.rb +0 -15
  158. data/test/chart/test_write_plot_vis_only.rb +0 -15
  159. data/test/chart/test_write_pt.rb +0 -16
  160. data/test/chart/test_write_pt_count.rb +0 -16
  161. data/test/chart/test_write_series_formula.rb +0 -16
  162. data/test/chart/test_write_style.rb +0 -41
  163. data/test/chart/test_write_symbol.rb +0 -16
  164. data/test/chart/test_write_tick_lbl_pos.rb +0 -16
  165. data/test/chart/test_write_v.rb +0 -16
  166. data/test/chartsheet/test_chartsheet01.rb +0 -31
  167. data/test/chartsheet/test_write_sheet_protection.rb +0 -91
  168. data/test/drawing/test_drawing_chart_01.rb +0 -54
  169. data/test/drawing/test_drawing_image_01.rb +0 -68
  170. data/test/drawing/test_drawing_shape_01.rb +0 -71
  171. data/test/drawing/test_drawing_shape_02.rb +0 -80
  172. data/test/drawing/test_drawing_shape_03.rb +0 -41
  173. data/test/drawing/test_drawing_shape_04.rb +0 -105
  174. data/test/drawing/test_drawing_shape_05.rb +0 -48
  175. data/test/drawing/test_drawing_shape_06.rb +0 -47
  176. data/test/drawing/test_drawing_shape_07.rb +0 -52
  177. data/test/drawing/test_write_a_graphic_frame_locks.rb +0 -18
  178. data/test/drawing/test_write_c_chart.rb +0 -18
  179. data/test/drawing/test_write_c_nv_graphic_frame_pr.rb +0 -28
  180. data/test/drawing/test_write_c_nv_pr.rb +0 -18
  181. data/test/drawing/test_write_col.rb +0 -18
  182. data/test/drawing/test_write_col_off.rb +0 -18
  183. data/test/drawing/test_write_pos.rb +0 -18
  184. data/test/drawing/test_write_row.rb +0 -18
  185. data/test/drawing/test_write_row_off.rb +0 -18
  186. data/test/drawing/test_write_xdr_ext.rb +0 -18
  187. data/test/drawing/test_write_xfrm_extension.rb +0 -18
  188. data/test/drawing/test_write_xfrm_offset.rb +0 -18
  189. data/test/helper.rb +0 -206
  190. data/test/package/app/test_app01.rb +0 -44
  191. data/test/package/app/test_app02.rb +0 -46
  192. data/test/package/app/test_app03.rb +0 -53
  193. data/test/package/comments/test_comments_01.rb +0 -54
  194. data/test/package/comments/test_comments_02.rb +0 -54
  195. data/test/package/content_types/test_content_types.rb +0 -35
  196. data/test/package/content_types/test_write_default.rb +0 -13
  197. data/test/package/content_types/test_write_override.rb +0 -13
  198. data/test/package/core/test_core01.rb +0 -28
  199. data/test/package/core/test_core02.rb +0 -42
  200. data/test/package/relationships/test_relationships.rb +0 -28
  201. data/test/package/relationships/test_sheet_rels.rb +0 -22
  202. data/test/package/shared_strings/test_shared_strings01.rb +0 -30
  203. data/test/package/shared_strings/test_shared_strings02.rb +0 -30
  204. data/test/package/shared_strings/test_write_si.rb +0 -16
  205. data/test/package/styles/test_styles_01.rb +0 -60
  206. data/test/package/styles/test_styles_02.rb +0 -95
  207. data/test/package/styles/test_styles_03.rb +0 -81
  208. data/test/package/styles/test_styles_04.rb +0 -207
  209. data/test/package/styles/test_styles_05.rb +0 -141
  210. data/test/package/styles/test_styles_06.rb +0 -95
  211. data/test/package/styles/test_styles_07.rb +0 -95
  212. data/test/package/styles/test_styles_08.rb +0 -100
  213. data/test/package/styles/test_styles_09.rb +0 -86
  214. data/test/package/table/test_table01.rb +0 -42
  215. data/test/package/table/test_table02.rb +0 -44
  216. data/test/package/table/test_table03.rb +0 -48
  217. data/test/package/table/test_table04.rb +0 -46
  218. data/test/package/table/test_table05.rb +0 -46
  219. data/test/package/table/test_table06.rb +0 -52
  220. data/test/package/table/test_table07.rb +0 -47
  221. data/test/package/table/test_table08.rb +0 -53
  222. data/test/package/table/test_table09.rb +0 -65
  223. data/test/package/table/test_table10.rb +0 -45
  224. data/test/package/table/test_table11.rb +0 -60
  225. data/test/package/table/test_table12.rb +0 -60
  226. data/test/package/table/test_table13.rb +0 -69
  227. data/test/package/table/test_write_auto_filter.rb +0 -23
  228. data/test/package/table/test_write_table_column.rb +0 -22
  229. data/test/package/table/test_write_table_style_info.rb +0 -26
  230. data/test/package/vml/test_write_auto_fill.rb +0 -14
  231. data/test/package/vml/test_write_div.rb +0 -14
  232. data/test/package/vml/test_write_idmap.rb +0 -14
  233. data/test/package/vml/test_write_path.rb +0 -30
  234. data/test/package/vml/test_write_shapelayout.rb +0 -14
  235. data/test/package/vml/test_write_shapetype.rb +0 -22
  236. data/test/package/vml/test_write_stroke.rb +0 -14
  237. data/test/perl_output/a_simple.xlsx +0 -0
  238. data/test/perl_output/add_vba_project.xlsm +0 -0
  239. data/test/perl_output/array_formula.xlsx +0 -0
  240. data/test/perl_output/autofilter.xlsx +0 -0
  241. data/test/perl_output/background.xlsx +0 -0
  242. data/test/perl_output/chart_area.xlsx +0 -0
  243. data/test/perl_output/chart_bar.xlsx +0 -0
  244. data/test/perl_output/chart_column.xlsx +0 -0
  245. data/test/perl_output/chart_combined.xlsx +0 -0
  246. data/test/perl_output/chart_data_labels.xlsx +0 -0
  247. data/test/perl_output/chart_data_table.xlsx +0 -0
  248. data/test/perl_output/chart_data_tools.xlsx +0 -0
  249. data/test/perl_output/chart_doughnut.xlsx +0 -0
  250. data/test/perl_output/chart_gauge.xlsx +0 -0
  251. data/test/perl_output/chart_line.xlsx +0 -0
  252. data/test/perl_output/chart_pareto.xlsx +0 -0
  253. data/test/perl_output/chart_pie.xlsx +0 -0
  254. data/test/perl_output/chart_radar.xlsx +0 -0
  255. data/test/perl_output/chart_scatter.xlsx +0 -0
  256. data/test/perl_output/chart_scatter06.xlsx +0 -0
  257. data/test/perl_output/chart_secondary_axis.xlsx +0 -0
  258. data/test/perl_output/chart_stock.xlsx +0 -0
  259. data/test/perl_output/comments1.xlsx +0 -0
  260. data/test/perl_output/comments2.xlsx +0 -0
  261. data/test/perl_output/conditional_format.xlsx +0 -0
  262. data/test/perl_output/data_validate.xlsx +0 -0
  263. data/test/perl_output/date_time.xlsx +0 -0
  264. data/test/perl_output/defined_name.xlsx +0 -0
  265. data/test/perl_output/demo.xlsx +0 -0
  266. data/test/perl_output/diag_border.xlsx +0 -0
  267. data/test/perl_output/fit_to_pages.xlsx +0 -0
  268. data/test/perl_output/formats.xlsx +0 -0
  269. data/test/perl_output/headers.xlsx +0 -0
  270. data/test/perl_output/hide_first_sheet.xlsx +0 -0
  271. data/test/perl_output/hide_row_col.xlsx +0 -0
  272. data/test/perl_output/hide_sheet.xlsx +0 -0
  273. data/test/perl_output/hyperlink.xlsx +0 -0
  274. data/test/perl_output/ignore_errors.xlsx +0 -0
  275. data/test/perl_output/indent.xlsx +0 -0
  276. data/test/perl_output/keep_leading_zeros.xlsx +0 -0
  277. data/test/perl_output/merge1.xlsx +0 -0
  278. data/test/perl_output/merge2.xlsx +0 -0
  279. data/test/perl_output/merge3.xlsx +0 -0
  280. data/test/perl_output/merge4.xlsx +0 -0
  281. data/test/perl_output/merge5.xlsx +0 -0
  282. data/test/perl_output/merge6.xlsx +0 -0
  283. data/test/perl_output/multi_line.xlsx +0 -0
  284. data/test/perl_output/outline.xlsx +0 -0
  285. data/test/perl_output/outline_collapsed.xlsx +0 -0
  286. data/test/perl_output/panes.xlsx +0 -0
  287. data/test/perl_output/print_scale.xlsx +0 -0
  288. data/test/perl_output/properties.xlsx +0 -0
  289. data/test/perl_output/protection.xlsx +0 -0
  290. data/test/perl_output/regions.xlsx +0 -0
  291. data/test/perl_output/rich_strings.xlsx +0 -0
  292. data/test/perl_output/right_to_left.xlsx +0 -0
  293. data/test/perl_output/shape1.xlsx +0 -0
  294. data/test/perl_output/shape2.xlsx +0 -0
  295. data/test/perl_output/shape3.xlsx +0 -0
  296. data/test/perl_output/shape4.xlsx +0 -0
  297. data/test/perl_output/shape5.xlsx +0 -0
  298. data/test/perl_output/shape6.xlsx +0 -0
  299. data/test/perl_output/shape7.xlsx +0 -0
  300. data/test/perl_output/shape8.xlsx +0 -0
  301. data/test/perl_output/shape_all.xlsx +0 -0
  302. data/test/perl_output/sparklines1.xlsx +0 -0
  303. data/test/perl_output/sparklines2.xlsx +0 -0
  304. data/test/perl_output/stats.xlsx +0 -0
  305. data/test/perl_output/stats_ext.xlsx +0 -0
  306. data/test/perl_output/stocks.xlsx +0 -0
  307. data/test/perl_output/tab_colors.xlsx +0 -0
  308. data/test/perl_output/tables.xlsx +0 -0
  309. data/test/regression/_test_hyperlink31.rb +0 -26
  310. data/test/regression/disabled_test_vml04.rb +0 -41
  311. data/test/regression/images/black_150.jpg +0 -0
  312. data/test/regression/images/black_150.png +0 -0
  313. data/test/regression/images/black_150e.png +0 -0
  314. data/test/regression/images/black_300.jpg +0 -0
  315. data/test/regression/images/black_300.png +0 -0
  316. data/test/regression/images/black_300e.png +0 -0
  317. data/test/regression/images/black_72.jpg +0 -0
  318. data/test/regression/images/black_72.png +0 -0
  319. data/test/regression/images/black_72e.png +0 -0
  320. data/test/regression/images/black_96.jpg +0 -0
  321. data/test/regression/images/black_96.png +0 -0
  322. data/test/regression/images/blue.jpg +0 -0
  323. data/test/regression/images/blue.png +0 -0
  324. data/test/regression/images/grey.jpg +0 -0
  325. data/test/regression/images/grey.png +0 -0
  326. data/test/regression/images/happy.jpg +0 -0
  327. data/test/regression/images/issue32.png +0 -0
  328. data/test/regression/images/logo.gif +0 -0
  329. data/test/regression/images/logo.jpg +0 -0
  330. data/test/regression/images/logo.png +0 -0
  331. data/test/regression/images/mylogo.png +0 -0
  332. data/test/regression/images/red.bmp +0 -0
  333. data/test/regression/images/red.gif +0 -0
  334. data/test/regression/images/red.jpg +0 -0
  335. data/test/regression/images/red.png +0 -0
  336. data/test/regression/images/red2.png +0 -0
  337. data/test/regression/images/red_208.png +0 -0
  338. data/test/regression/images/red_64x20.png +0 -0
  339. data/test/regression/images/train.jpg +0 -0
  340. data/test/regression/images/yellow.jpg +0 -0
  341. data/test/regression/images/yellow.png +0 -0
  342. data/test/regression/images/zero_dpi.jpg +0 -0
  343. data/test/regression/klt.csv +0 -4
  344. data/test/regression/test_array_formula01.rb +0 -31
  345. data/test/regression/test_array_formula02.rb +0 -32
  346. data/test/regression/test_array_formula03.rb +0 -36
  347. data/test/regression/test_array_formula04.rb +0 -31
  348. data/test/regression/test_autofilter00.rb +0 -84
  349. data/test/regression/test_autofilter01.rb +0 -86
  350. data/test/regression/test_autofilter02.rb +0 -104
  351. data/test/regression/test_autofilter03.rb +0 -104
  352. data/test/regression/test_autofilter04.rb +0 -107
  353. data/test/regression/test_autofilter05.rb +0 -108
  354. data/test/regression/test_autofilter06.rb +0 -108
  355. data/test/regression/test_autofilter07.rb +0 -107
  356. data/test/regression/test_autofilter08.rb +0 -110
  357. data/test/regression/test_autofilter09.rb +0 -110
  358. data/test/regression/test_autofilter10.rb +0 -110
  359. data/test/regression/test_background01.rb +0 -23
  360. data/test/regression/test_background02.rb +0 -23
  361. data/test/regression/test_background03.rb +0 -24
  362. data/test/regression/test_background04.rb +0 -25
  363. data/test/regression/test_background05.rb +0 -25
  364. data/test/regression/test_background06.rb +0 -31
  365. data/test/regression/test_background07.rb +0 -37
  366. data/test/regression/test_button01.rb +0 -23
  367. data/test/regression/test_button02.rb +0 -29
  368. data/test/regression/test_button03.rb +0 -24
  369. data/test/regression/test_button04.rb +0 -25
  370. data/test/regression/test_button05.rb +0 -28
  371. data/test/regression/test_button06.rb +0 -28
  372. data/test/regression/test_button07.rb +0 -35
  373. data/test/regression/test_button08.rb +0 -28
  374. data/test/regression/test_button13.rb +0 -30
  375. data/test/regression/test_button14.rb +0 -31
  376. data/test/regression/test_chart_area01.rb +0 -45
  377. data/test/regression/test_chart_area02.rb +0 -45
  378. data/test/regression/test_chart_area03.rb +0 -45
  379. data/test/regression/test_chart_area04.rb +0 -44
  380. data/test/regression/test_chart_axis01.rb +0 -45
  381. data/test/regression/test_chart_axis02.rb +0 -45
  382. data/test/regression/test_chart_axis03.rb +0 -67
  383. data/test/regression/test_chart_axis04.rb +0 -52
  384. data/test/regression/test_chart_axis05.rb +0 -47
  385. data/test/regression/test_chart_axis06.rb +0 -49
  386. data/test/regression/test_chart_axis07.rb +0 -53
  387. data/test/regression/test_chart_axis08.rb +0 -52
  388. data/test/regression/test_chart_axis09.rb +0 -46
  389. data/test/regression/test_chart_axis10.rb +0 -52
  390. data/test/regression/test_chart_axis11.rb +0 -46
  391. data/test/regression/test_chart_axis12.rb +0 -46
  392. data/test/regression/test_chart_axis13.rb +0 -52
  393. data/test/regression/test_chart_axis14.rb +0 -66
  394. data/test/regression/test_chart_axis15.rb +0 -47
  395. data/test/regression/test_chart_axis16.rb +0 -69
  396. data/test/regression/test_chart_axis17.rb +0 -45
  397. data/test/regression/test_chart_axis18.rb +0 -43
  398. data/test/regression/test_chart_axis19.rb +0 -45
  399. data/test/regression/test_chart_axis20.rb +0 -45
  400. data/test/regression/test_chart_axis21.rb +0 -49
  401. data/test/regression/test_chart_axis22.rb +0 -44
  402. data/test/regression/test_chart_axis23.rb +0 -45
  403. data/test/regression/test_chart_axis24.rb +0 -45
  404. data/test/regression/test_chart_axis25.rb +0 -44
  405. data/test/regression/test_chart_axis26.rb +0 -46
  406. data/test/regression/test_chart_axis27.rb +0 -44
  407. data/test/regression/test_chart_axis28.rb +0 -44
  408. data/test/regression/test_chart_axis29.rb +0 -43
  409. data/test/regression/test_chart_axis30.rb +0 -40
  410. data/test/regression/test_chart_axis31.rb +0 -40
  411. data/test/regression/test_chart_axis32.rb +0 -40
  412. data/test/regression/test_chart_axis33.rb +0 -44
  413. data/test/regression/test_chart_axis34.rb +0 -43
  414. data/test/regression/test_chart_axis35.rb +0 -43
  415. data/test/regression/test_chart_axis36.rb +0 -43
  416. data/test/regression/test_chart_axis37.rb +0 -45
  417. data/test/regression/test_chart_axis38.rb +0 -43
  418. data/test/regression/test_chart_axis39.rb +0 -50
  419. data/test/regression/test_chart_axis40.rb +0 -44
  420. data/test/regression/test_chart_axis41.rb +0 -48
  421. data/test/regression/test_chart_axis42.rb +0 -44
  422. data/test/regression/test_chart_axis43.rb +0 -44
  423. data/test/regression/test_chart_axis44.rb +0 -54
  424. data/test/regression/test_chart_axis45.rb +0 -54
  425. data/test/regression/test_chart_axis46.rb +0 -54
  426. data/test/regression/test_chart_axis47.rb +0 -52
  427. data/test/regression/test_chart_axis48.rb +0 -53
  428. data/test/regression/test_chart_bar01.rb +0 -44
  429. data/test/regression/test_chart_bar02.rb +0 -54
  430. data/test/regression/test_chart_bar03.rb +0 -66
  431. data/test/regression/test_chart_bar04.rb +0 -69
  432. data/test/regression/test_chart_bar05.rb +0 -39
  433. data/test/regression/test_chart_bar06.rb +0 -49
  434. data/test/regression/test_chart_bar07.rb +0 -53
  435. data/test/regression/test_chart_bar08.rb +0 -43
  436. data/test/regression/test_chart_bar09.rb +0 -42
  437. data/test/regression/test_chart_bar10.rb +0 -46
  438. data/test/regression/test_chart_bar11.rb +0 -72
  439. data/test/regression/test_chart_bar12.rb +0 -38
  440. data/test/regression/test_chart_bar13.rb +0 -48
  441. data/test/regression/test_chart_bar14.rb +0 -64
  442. data/test/regression/test_chart_bar15.rb +0 -51
  443. data/test/regression/test_chart_bar16.rb +0 -49
  444. data/test/regression/test_chart_bar17.rb +0 -45
  445. data/test/regression/test_chart_bar18.rb +0 -56
  446. data/test/regression/test_chart_bar19.rb +0 -48
  447. data/test/regression/test_chart_bar20.rb +0 -45
  448. data/test/regression/test_chart_bar21.rb +0 -49
  449. data/test/regression/test_chart_bar22.rb +0 -66
  450. data/test/regression/test_chart_bar23.rb +0 -60
  451. data/test/regression/test_chart_bar24.rb +0 -44
  452. data/test/regression/test_chart_blank01.rb +0 -41
  453. data/test/regression/test_chart_blank02.rb +0 -41
  454. data/test/regression/test_chart_blank03.rb +0 -41
  455. data/test/regression/test_chart_blank04.rb +0 -41
  456. data/test/regression/test_chart_blank05.rb +0 -44
  457. data/test/regression/test_chart_blank06.rb +0 -41
  458. data/test/regression/test_chart_chartarea01.rb +0 -52
  459. data/test/regression/test_chart_chartarea02.rb +0 -52
  460. data/test/regression/test_chart_chartarea03.rb +0 -55
  461. data/test/regression/test_chart_chartarea04.rb +0 -71
  462. data/test/regression/test_chart_chartarea05.rb +0 -49
  463. data/test/regression/test_chart_chartarea06.rb +0 -49
  464. data/test/regression/test_chart_clustered01.rb +0 -65
  465. data/test/regression/test_chart_column01.rb +0 -39
  466. data/test/regression/test_chart_column02.rb +0 -44
  467. data/test/regression/test_chart_column03.rb +0 -44
  468. data/test/regression/test_chart_column04.rb +0 -44
  469. data/test/regression/test_chart_column05.rb +0 -39
  470. data/test/regression/test_chart_column06.rb +0 -45
  471. data/test/regression/test_chart_column07.rb +0 -40
  472. data/test/regression/test_chart_column08.rb +0 -42
  473. data/test/regression/test_chart_column09.rb +0 -39
  474. data/test/regression/test_chart_column10.rb +0 -39
  475. data/test/regression/test_chart_column11.rb +0 -41
  476. data/test/regression/test_chart_column12.rb +0 -37
  477. data/test/regression/test_chart_combined01.rb +0 -37
  478. data/test/regression/test_chart_combined02.rb +0 -43
  479. data/test/regression/test_chart_combined03.rb +0 -45
  480. data/test/regression/test_chart_combined04.rb +0 -47
  481. data/test/regression/test_chart_combined05.rb +0 -49
  482. data/test/regression/test_chart_combined06.rb +0 -49
  483. data/test/regression/test_chart_combined07.rb +0 -53
  484. data/test/regression/test_chart_combined08.rb +0 -65
  485. data/test/regression/test_chart_combined09.rb +0 -50
  486. data/test/regression/test_chart_combined10.rb +0 -43
  487. data/test/regression/test_chart_combined11.rb +0 -63
  488. data/test/regression/test_chart_crossing01.rb +0 -49
  489. data/test/regression/test_chart_crossing02.rb +0 -47
  490. data/test/regression/test_chart_crossing03.rb +0 -52
  491. data/test/regression/test_chart_crossing04.rb +0 -52
  492. data/test/regression/test_chart_crossing05.rb +0 -46
  493. data/test/regression/test_chart_crossing06.rb +0 -46
  494. data/test/regression/test_chart_data_labels01.rb +0 -47
  495. data/test/regression/test_chart_data_labels02.rb +0 -47
  496. data/test/regression/test_chart_data_labels03.rb +0 -47
  497. data/test/regression/test_chart_data_labels04.rb +0 -47
  498. data/test/regression/test_chart_data_labels05.rb +0 -50
  499. data/test/regression/test_chart_data_labels06.rb +0 -50
  500. data/test/regression/test_chart_data_labels07.rb +0 -40
  501. data/test/regression/test_chart_data_labels08.rb +0 -46
  502. data/test/regression/test_chart_data_labels09.rb +0 -47
  503. data/test/regression/test_chart_data_labels10.rb +0 -47
  504. data/test/regression/test_chart_data_labels11.rb +0 -37
  505. data/test/regression/test_chart_data_labels12.rb +0 -37
  506. data/test/regression/test_chart_data_labels13.rb +0 -37
  507. data/test/regression/test_chart_data_labels14.rb +0 -37
  508. data/test/regression/test_chart_data_labels15.rb +0 -37
  509. data/test/regression/test_chart_data_labels16.rb +0 -40
  510. data/test/regression/test_chart_data_labels17.rb +0 -63
  511. data/test/regression/test_chart_data_labels18.rb +0 -53
  512. data/test/regression/test_chart_data_labels19.rb +0 -53
  513. data/test/regression/test_chart_data_labels20.rb +0 -44
  514. data/test/regression/test_chart_data_labels21.rb +0 -48
  515. data/test/regression/test_chart_data_labels22.rb +0 -47
  516. data/test/regression/test_chart_data_labels23.rb +0 -50
  517. data/test/regression/test_chart_data_labels24.rb +0 -50
  518. data/test/regression/test_chart_data_labels25.rb +0 -61
  519. data/test/regression/test_chart_data_labels26.rb +0 -44
  520. data/test/regression/test_chart_data_labels27.rb +0 -44
  521. data/test/regression/test_chart_data_labels28.rb +0 -52
  522. data/test/regression/test_chart_data_labels29.rb +0 -43
  523. data/test/regression/test_chart_data_labels30.rb +0 -46
  524. data/test/regression/test_chart_data_labels31.rb +0 -49
  525. data/test/regression/test_chart_data_labels32.rb +0 -54
  526. data/test/regression/test_chart_data_labels33.rb +0 -52
  527. data/test/regression/test_chart_data_labels34.rb +0 -54
  528. data/test/regression/test_chart_data_labels35.rb +0 -46
  529. data/test/regression/test_chart_data_labels36.rb +0 -54
  530. data/test/regression/test_chart_data_labels37.rb +0 -51
  531. data/test/regression/test_chart_data_labels38.rb +0 -54
  532. data/test/regression/test_chart_data_labels39.rb +0 -53
  533. data/test/regression/test_chart_data_labels40.rb +0 -53
  534. data/test/regression/test_chart_data_labels41.rb +0 -54
  535. data/test/regression/test_chart_data_labels42.rb +0 -58
  536. data/test/regression/test_chart_data_labels43.rb +0 -58
  537. data/test/regression/test_chart_data_labels44.rb +0 -56
  538. data/test/regression/test_chart_data_labels45.rb +0 -57
  539. data/test/regression/test_chart_data_labels46.rb +0 -61
  540. data/test/regression/test_chart_data_labels47.rb +0 -61
  541. data/test/regression/test_chart_data_labels48.rb +0 -55
  542. data/test/regression/test_chart_data_labels49.rb +0 -55
  543. data/test/regression/test_chart_data_labels50.rb +0 -57
  544. data/test/regression/test_chart_date01.rb +0 -53
  545. data/test/regression/test_chart_date02.rb +0 -59
  546. data/test/regression/test_chart_date03.rb +0 -59
  547. data/test/regression/test_chart_date04.rb +0 -61
  548. data/test/regression/test_chart_date05.rb +0 -57
  549. data/test/regression/test_chart_display_units01.rb +0 -35
  550. data/test/regression/test_chart_display_units02.rb +0 -36
  551. data/test/regression/test_chart_display_units03.rb +0 -36
  552. data/test/regression/test_chart_display_units04.rb +0 -36
  553. data/test/regression/test_chart_display_units05.rb +0 -36
  554. data/test/regression/test_chart_display_units06.rb +0 -36
  555. data/test/regression/test_chart_display_units07.rb +0 -36
  556. data/test/regression/test_chart_display_units08.rb +0 -36
  557. data/test/regression/test_chart_display_units09.rb +0 -36
  558. data/test/regression/test_chart_display_units10.rb +0 -36
  559. data/test/regression/test_chart_display_units11.rb +0 -36
  560. data/test/regression/test_chart_display_units12.rb +0 -41
  561. data/test/regression/test_chart_doughnut01.rb +0 -39
  562. data/test/regression/test_chart_doughnut02.rb +0 -38
  563. data/test/regression/test_chart_doughnut03.rb +0 -38
  564. data/test/regression/test_chart_doughnut04.rb +0 -38
  565. data/test/regression/test_chart_doughnut05.rb +0 -38
  566. data/test/regression/test_chart_doughnut06.rb +0 -34
  567. data/test/regression/test_chart_doughnut07.rb +0 -37
  568. data/test/regression/test_chart_drop_lines01.rb +0 -46
  569. data/test/regression/test_chart_drop_lines02.rb +0 -51
  570. data/test/regression/test_chart_drop_lines03.rb +0 -46
  571. data/test/regression/test_chart_drop_lines04.rb +0 -64
  572. data/test/regression/test_chart_errorbars01.rb +0 -46
  573. data/test/regression/test_chart_errorbars02.rb +0 -56
  574. data/test/regression/test_chart_errorbars03.rb +0 -52
  575. data/test/regression/test_chart_errorbars04.rb +0 -47
  576. data/test/regression/test_chart_errorbars05.rb +0 -46
  577. data/test/regression/test_chart_errorbars06.rb +0 -46
  578. data/test/regression/test_chart_errorbars07.rb +0 -65
  579. data/test/regression/test_chart_errorbars08.rb +0 -50
  580. data/test/regression/test_chart_errorbars09.rb +0 -50
  581. data/test/regression/test_chart_errorbars10.rb +0 -52
  582. data/test/regression/test_chart_font01.rb +0 -54
  583. data/test/regression/test_chart_font02.rb +0 -56
  584. data/test/regression/test_chart_font03.rb +0 -59
  585. data/test/regression/test_chart_font04.rb +0 -57
  586. data/test/regression/test_chart_font05.rb +0 -54
  587. data/test/regression/test_chart_font06.rb +0 -84
  588. data/test/regression/test_chart_font07.rb +0 -44
  589. data/test/regression/test_chart_font08.rb +0 -44
  590. data/test/regression/test_chart_font09.rb +0 -40
  591. data/test/regression/test_chart_format01.rb +0 -44
  592. data/test/regression/test_chart_format02.rb +0 -45
  593. data/test/regression/test_chart_format03.rb +0 -46
  594. data/test/regression/test_chart_format04.rb +0 -45
  595. data/test/regression/test_chart_format05.rb +0 -45
  596. data/test/regression/test_chart_format06.rb +0 -50
  597. data/test/regression/test_chart_format07.rb +0 -55
  598. data/test/regression/test_chart_format08.rb +0 -50
  599. data/test/regression/test_chart_format09.rb +0 -54
  600. data/test/regression/test_chart_format10.rb +0 -57
  601. data/test/regression/test_chart_format11.rb +0 -61
  602. data/test/regression/test_chart_format12.rb +0 -58
  603. data/test/regression/test_chart_format13.rb +0 -50
  604. data/test/regression/test_chart_format14.rb +0 -54
  605. data/test/regression/test_chart_format15.rb +0 -52
  606. data/test/regression/test_chart_format16.rb +0 -55
  607. data/test/regression/test_chart_format17.rb +0 -39
  608. data/test/regression/test_chart_format18.rb +0 -43
  609. data/test/regression/test_chart_format19.rb +0 -46
  610. data/test/regression/test_chart_format20.rb +0 -54
  611. data/test/regression/test_chart_format21.rb +0 -47
  612. data/test/regression/test_chart_format22.rb +0 -47
  613. data/test/regression/test_chart_format23.rb +0 -47
  614. data/test/regression/test_chart_format24.rb +0 -52
  615. data/test/regression/test_chart_format25.rb +0 -46
  616. data/test/regression/test_chart_format26.rb +0 -48
  617. data/test/regression/test_chart_format27.rb +0 -58
  618. data/test/regression/test_chart_format28.rb +0 -52
  619. data/test/regression/test_chart_format29.rb +0 -59
  620. data/test/regression/test_chart_format30.rb +0 -53
  621. data/test/regression/test_chart_format31.rb +0 -60
  622. data/test/regression/test_chart_gap01.rb +0 -47
  623. data/test/regression/test_chart_gap02.rb +0 -47
  624. data/test/regression/test_chart_gap03.rb +0 -47
  625. data/test/regression/test_chart_gap04.rb +0 -54
  626. data/test/regression/test_chart_gap05.rb +0 -56
  627. data/test/regression/test_chart_gradient01.rb +0 -43
  628. data/test/regression/test_chart_gradient02.rb +0 -43
  629. data/test/regression/test_chart_gradient03.rb +0 -46
  630. data/test/regression/test_chart_gradient04.rb +0 -46
  631. data/test/regression/test_chart_gradient05.rb +0 -46
  632. data/test/regression/test_chart_gradient06.rb +0 -46
  633. data/test/regression/test_chart_gradient07.rb +0 -44
  634. data/test/regression/test_chart_gradient08.rb +0 -43
  635. data/test/regression/test_chart_gradient09.rb +0 -43
  636. data/test/regression/test_chart_gradient10.rb +0 -43
  637. data/test/regression/test_chart_gradient11.rb +0 -43
  638. data/test/regression/test_chart_gradient12.rb +0 -46
  639. data/test/regression/test_chart_gradient13.rb +0 -46
  640. data/test/regression/test_chart_gridlines01.rb +0 -42
  641. data/test/regression/test_chart_gridlines02.rb +0 -47
  642. data/test/regression/test_chart_gridlines03.rb +0 -63
  643. data/test/regression/test_chart_gridlines04.rb +0 -44
  644. data/test/regression/test_chart_gridlines05.rb +0 -48
  645. data/test/regression/test_chart_gridlines06.rb +0 -53
  646. data/test/regression/test_chart_gridlines07.rb +0 -69
  647. data/test/regression/test_chart_gridlines08.rb +0 -45
  648. data/test/regression/test_chart_gridlines09.rb +0 -67
  649. data/test/regression/test_chart_layout01.rb +0 -48
  650. data/test/regression/test_chart_layout02.rb +0 -48
  651. data/test/regression/test_chart_layout03.rb +0 -49
  652. data/test/regression/test_chart_layout04.rb +0 -47
  653. data/test/regression/test_chart_layout05.rb +0 -64
  654. data/test/regression/test_chart_layout06.rb +0 -48
  655. data/test/regression/test_chart_layout07.rb +0 -48
  656. data/test/regression/test_chart_layout08.rb +0 -49
  657. data/test/regression/test_chart_legend01.rb +0 -41
  658. data/test/regression/test_chart_legend02.rb +0 -41
  659. data/test/regression/test_chart_legend03.rb +0 -41
  660. data/test/regression/test_chart_legend04.rb +0 -41
  661. data/test/regression/test_chart_legend05.rb +0 -41
  662. data/test/regression/test_chart_legend06.rb +0 -41
  663. data/test/regression/test_chart_legend07.rb +0 -38
  664. data/test/regression/test_chart_line01.rb +0 -39
  665. data/test/regression/test_chart_line02.rb +0 -44
  666. data/test/regression/test_chart_line03.rb +0 -39
  667. data/test/regression/test_chart_line04.rb +0 -39
  668. data/test/regression/test_chart_line05.rb +0 -43
  669. data/test/regression/test_chart_line06.rb +0 -43
  670. data/test/regression/test_chart_name01.rb +0 -43
  671. data/test/regression/test_chart_name02.rb +0 -55
  672. data/test/regression/test_chart_name03.rb +0 -55
  673. data/test/regression/test_chart_order01.rb +0 -54
  674. data/test/regression/test_chart_order02.rb +0 -54
  675. data/test/regression/test_chart_order03.rb +0 -60
  676. data/test/regression/test_chart_pattern01.rb +0 -49
  677. data/test/regression/test_chart_pattern02.rb +0 -106
  678. data/test/regression/test_chart_pattern03.rb +0 -105
  679. data/test/regression/test_chart_pattern04.rb +0 -105
  680. data/test/regression/test_chart_pattern05.rb +0 -105
  681. data/test/regression/test_chart_pattern06.rb +0 -105
  682. data/test/regression/test_chart_pattern07.rb +0 -105
  683. data/test/regression/test_chart_pattern08.rb +0 -105
  684. data/test/regression/test_chart_pattern09.rb +0 -57
  685. data/test/regression/test_chart_pattern10.rb +0 -57
  686. data/test/regression/test_chart_pie01.rb +0 -36
  687. data/test/regression/test_chart_pie02.rb +0 -38
  688. data/test/regression/test_chart_pie03.rb +0 -38
  689. data/test/regression/test_chart_pie04.rb +0 -38
  690. data/test/regression/test_chart_pie05.rb +0 -38
  691. data/test/regression/test_chart_points01.rb +0 -37
  692. data/test/regression/test_chart_points02.rb +0 -40
  693. data/test/regression/test_chart_points03.rb +0 -42
  694. data/test/regression/test_chart_points04.rb +0 -52
  695. data/test/regression/test_chart_points05.rb +0 -49
  696. data/test/regression/test_chart_points06.rb +0 -49
  697. data/test/regression/test_chart_radar01.rb +0 -39
  698. data/test/regression/test_chart_radar02.rb +0 -43
  699. data/test/regression/test_chart_radar03.rb +0 -43
  700. data/test/regression/test_chart_scatter01.rb +0 -45
  701. data/test/regression/test_chart_scatter02.rb +0 -49
  702. data/test/regression/test_chart_scatter03.rb +0 -49
  703. data/test/regression/test_chart_scatter04.rb +0 -49
  704. data/test/regression/test_chart_scatter05.rb +0 -49
  705. data/test/regression/test_chart_scatter06.rb +0 -51
  706. data/test/regression/test_chart_scatter07.rb +0 -59
  707. data/test/regression/test_chart_scatter08.rb +0 -57
  708. data/test/regression/test_chart_scatter09.rb +0 -59
  709. data/test/regression/test_chart_scatter10.rb +0 -59
  710. data/test/regression/test_chart_scatter11.rb +0 -59
  711. data/test/regression/test_chart_scatter12.rb +0 -51
  712. data/test/regression/test_chart_scatter13.rb +0 -51
  713. data/test/regression/test_chart_scatter14.rb +0 -52
  714. data/test/regression/test_chart_scatter15.rb +0 -44
  715. data/test/regression/test_chart_size01.rb +0 -41
  716. data/test/regression/test_chart_size02.rb +0 -41
  717. data/test/regression/test_chart_size03.rb +0 -42
  718. data/test/regression/test_chart_size04.rb +0 -41
  719. data/test/regression/test_chart_size05.rb +0 -39
  720. data/test/regression/test_chart_sparse01.rb +0 -51
  721. data/test/regression/test_chart_stock01.rb +0 -65
  722. data/test/regression/test_chart_stock02.rb +0 -71
  723. data/test/regression/test_chart_str01.rb +0 -43
  724. data/test/regression/test_chart_str02.rb +0 -47
  725. data/test/regression/test_chart_table01.rb +0 -42
  726. data/test/regression/test_chart_table02.rb +0 -47
  727. data/test/regression/test_chart_table03.rb +0 -56
  728. data/test/regression/test_chart_title01.rb +0 -39
  729. data/test/regression/test_chart_title02.rb +0 -39
  730. data/test/regression/test_chartsheet01.rb +0 -41
  731. data/test/regression/test_chartsheet02.rb +0 -48
  732. data/test/regression/test_chartsheet03.rb +0 -46
  733. data/test/regression/test_chartsheet04.rb +0 -46
  734. data/test/regression/test_chartsheet05.rb +0 -46
  735. data/test/regression/test_chartsheet06.rb +0 -42
  736. data/test/regression/test_chartsheet07.rb +0 -55
  737. data/test/regression/test_chartsheet08.rb +0 -59
  738. data/test/regression/test_chartsheet09.rb +0 -50
  739. data/test/regression/test_comment01.rb +0 -27
  740. data/test/regression/test_comment02.rb +0 -28
  741. data/test/regression/test_comment03.rb +0 -31
  742. data/test/regression/test_comment04.rb +0 -36
  743. data/test/regression/test_comment06.rb +0 -33
  744. data/test/regression/test_comment07.rb +0 -35
  745. data/test/regression/test_comment08.rb +0 -35
  746. data/test/regression/test_comment09.rb +0 -31
  747. data/test/regression/test_comment10.rb +0 -30
  748. data/test/regression/test_comment11.rb +0 -31
  749. data/test/regression/test_comment12.rb +0 -30
  750. data/test/regression/test_comment13.rb +0 -36
  751. data/test/regression/test_comment14.rb +0 -29
  752. data/test/regression/test_comment15.rb +0 -28
  753. data/test/regression/test_comment16.rb +0 -34
  754. data/test/regression/test_cond_format01.rb +0 -45
  755. data/test/regression/test_cond_format02.rb +0 -40
  756. data/test/regression/test_cond_format03.rb +0 -51
  757. data/test/regression/test_cond_format04.rb +0 -50
  758. data/test/regression/test_cond_format05.rb +0 -40
  759. data/test/regression/test_cond_format06.rb +0 -44
  760. data/test/regression/test_cond_format07.rb +0 -61
  761. data/test/regression/test_cond_format08.rb +0 -45
  762. data/test/regression/test_cond_format10.rb +0 -42
  763. data/test/regression/test_cond_format11.rb +0 -46
  764. data/test/regression/test_cond_format12.rb +0 -46
  765. data/test/regression/test_cond_format13.rb +0 -52
  766. data/test/regression/test_cond_format14.rb +0 -42
  767. data/test/regression/test_cond_format15.rb +0 -53
  768. data/test/regression/test_cond_format16.rb +0 -53
  769. data/test/regression/test_cond_format17.rb +0 -37
  770. data/test/regression/test_cond_format18.rb +0 -136
  771. data/test/regression/test_cond_format19.rb +0 -64
  772. data/test/regression/test_cond_format20.rb +0 -43
  773. data/test/regression/test_custom_colors01.rb +0 -33
  774. data/test/regression/test_data_validation01.rb +0 -22
  775. data/test/regression/test_data_validation02.rb +0 -27
  776. data/test/regression/test_data_validation03.rb +0 -44
  777. data/test/regression/test_data_validation04.rb +0 -37
  778. data/test/regression/test_data_validation05.rb +0 -36
  779. data/test/regression/test_data_validation08.rb +0 -24
  780. data/test/regression/test_date_1904_01.rb +0 -31
  781. data/test/regression/test_date_1904_02.rb +0 -34
  782. data/test/regression/test_date_examples01.rb +0 -48
  783. data/test/regression/test_default_format01.rb +0 -22
  784. data/test/regression/test_default_row01.rb +0 -26
  785. data/test/regression/test_default_row02.rb +0 -28
  786. data/test/regression/test_default_row03.rb +0 -28
  787. data/test/regression/test_default_row04.rb +0 -31
  788. data/test/regression/test_default_row05.rb +0 -32
  789. data/test/regression/test_defined_name01.rb +0 -45
  790. data/test/regression/test_defined_name02.rb +0 -30
  791. data/test/regression/test_defined_name03.rb +0 -30
  792. data/test/regression/test_defined_name04.rb +0 -50
  793. data/test/regression/test_dynamic_array01.rb +0 -25
  794. data/test/regression/test_escapes01.rb +0 -35
  795. data/test/regression/test_escapes02.rb +0 -32
  796. data/test/regression/test_escapes03.rb +0 -33
  797. data/test/regression/test_escapes04.rb +0 -31
  798. data/test/regression/test_escapes05.rb +0 -32
  799. data/test/regression/test_escapes06.rb +0 -26
  800. data/test/regression/test_escapes07.rb +0 -29
  801. data/test/regression/test_escapes08.rb +0 -30
  802. data/test/regression/test_excel2003_style01.rb +0 -21
  803. data/test/regression/test_excel2003_style02.rb +0 -37
  804. data/test/regression/test_excel2003_style03.rb +0 -40
  805. data/test/regression/test_excel2003_style04.rb +0 -24
  806. data/test/regression/test_excel2003_style05.rb +0 -31
  807. data/test/regression/test_excel2003_style06.rb +0 -31
  808. data/test/regression/test_excel2003_style07.rb +0 -31
  809. data/test/regression/test_excel2003_style08.rb +0 -26
  810. data/test/regression/test_firstsheet01.rb +0 -43
  811. data/test/regression/test_fit_to_pages01.rb +0 -35
  812. data/test/regression/test_fit_to_pages02.rb +0 -35
  813. data/test/regression/test_fit_to_pages03.rb +0 -35
  814. data/test/regression/test_fit_to_pages04.rb +0 -35
  815. data/test/regression/test_fit_to_pages05.rb +0 -35
  816. data/test/regression/test_format01.rb +0 -35
  817. data/test/regression/test_format02.rb +0 -47
  818. data/test/regression/test_format03.rb +0 -31
  819. data/test/regression/test_format04.rb +0 -41
  820. data/test/regression/test_format05.rb +0 -26
  821. data/test/regression/test_format11.rb +0 -28
  822. data/test/regression/test_format12.rb +0 -41
  823. data/test/regression/test_format13.rb +0 -31
  824. data/test/regression/test_format14.rb +0 -26
  825. data/test/regression/test_format15.rb +0 -26
  826. data/test/regression/test_format16.rb +0 -24
  827. data/test/regression/test_format17.rb +0 -24
  828. data/test/regression/test_formula_results01.rb +0 -37
  829. data/test/regression/test_gridlines01.rb +0 -34
  830. data/test/regression/test_header01.rb +0 -28
  831. data/test/regression/test_header02.rb +0 -28
  832. data/test/regression/test_header03.rb +0 -31
  833. data/test/regression/test_header04.rb +0 -30
  834. data/test/regression/test_header_image01.rb +0 -26
  835. data/test/regression/test_header_image02.rb +0 -33
  836. data/test/regression/test_header_image03.rb +0 -34
  837. data/test/regression/test_header_image04.rb +0 -34
  838. data/test/regression/test_header_image05.rb +0 -28
  839. data/test/regression/test_header_image06.rb +0 -32
  840. data/test/regression/test_header_image07.rb +0 -29
  841. data/test/regression/test_header_image08.rb +0 -33
  842. data/test/regression/test_header_image09.rb +0 -32
  843. data/test/regression/test_header_image10.rb +0 -36
  844. data/test/regression/test_header_image11.rb +0 -28
  845. data/test/regression/test_header_image12.rb +0 -28
  846. data/test/regression/test_header_image13.rb +0 -36
  847. data/test/regression/test_header_image14.rb +0 -36
  848. data/test/regression/test_header_image15.rb +0 -36
  849. data/test/regression/test_header_image16.rb +0 -42
  850. data/test/regression/test_header_image17.rb +0 -46
  851. data/test/regression/test_header_image18.rb +0 -48
  852. data/test/regression/test_header_image19.rb +0 -36
  853. data/test/regression/test_hide01.rb +0 -25
  854. data/test/regression/test_hyperlink01.rb +0 -26
  855. data/test/regression/test_hyperlink02.rb +0 -30
  856. data/test/regression/test_hyperlink03.rb +0 -36
  857. data/test/regression/test_hyperlink04.rb +0 -34
  858. data/test/regression/test_hyperlink05.rb +0 -29
  859. data/test/regression/test_hyperlink06.rb +0 -28
  860. data/test/regression/test_hyperlink07.rb +0 -23
  861. data/test/regression/test_hyperlink08.rb +0 -27
  862. data/test/regression/test_hyperlink09.rb +0 -28
  863. data/test/regression/test_hyperlink10.rb +0 -27
  864. data/test/regression/test_hyperlink11.rb +0 -27
  865. data/test/regression/test_hyperlink12.rb +0 -28
  866. data/test/regression/test_hyperlink13.rb +0 -27
  867. data/test/regression/test_hyperlink14.rb +0 -27
  868. data/test/regression/test_hyperlink15.rb +0 -29
  869. data/test/regression/test_hyperlink16.rb +0 -29
  870. data/test/regression/test_hyperlink17.rb +0 -30
  871. data/test/regression/test_hyperlink18.rb +0 -30
  872. data/test/regression/test_hyperlink20.rb +0 -32
  873. data/test/regression/test_hyperlink21.rb +0 -27
  874. data/test/regression/test_hyperlink22.rb +0 -27
  875. data/test/regression/test_hyperlink23.rb +0 -27
  876. data/test/regression/test_hyperlink24.rb +0 -27
  877. data/test/regression/test_hyperlink25.rb +0 -30
  878. data/test/regression/test_hyperlink26.rb +0 -30
  879. data/test/regression/test_hyperlink27.rb +0 -27
  880. data/test/regression/test_hyperlink28.rb +0 -50
  881. data/test/regression/test_hyperlink29.rb +0 -27
  882. data/test/regression/test_hyperlink30.rb +0 -36
  883. data/test/regression/test_hyperlink32.rb +0 -27
  884. data/test/regression/test_hyperlink33.rb +0 -28
  885. data/test/regression/test_hyperlink34.rb +0 -33
  886. data/test/regression/test_hyperlink35.rb +0 -39
  887. data/test/regression/test_hyperlink36.rb +0 -34
  888. data/test/regression/test_hyperlink37.rb +0 -33
  889. data/test/regression/test_hyperlink38.rb +0 -27
  890. data/test/regression/test_hyperlink39.rb +0 -27
  891. data/test/regression/test_hyperlink40.rb +0 -27
  892. data/test/regression/test_hyperlink41.rb +0 -27
  893. data/test/regression/test_hyperlink42.rb +0 -27
  894. data/test/regression/test_hyperlink43.rb +0 -27
  895. data/test/regression/test_hyperlink44.rb +0 -27
  896. data/test/regression/test_hyperlink45.rb +0 -27
  897. data/test/regression/test_hyperlink47.rb +0 -27
  898. data/test/regression/test_hyperlink48.rb +0 -31
  899. data/test/regression/test_hyperlink49.rb +0 -29
  900. data/test/regression/test_hyperlink50.rb +0 -27
  901. data/test/regression/test_hyperlink51.rb +0 -27
  902. data/test/regression/test_ignore_error01.rb +0 -23
  903. data/test/regression/test_ignore_error02.rb +0 -24
  904. data/test/regression/test_ignore_error03.rb +0 -26
  905. data/test/regression/test_ignore_error04.rb +0 -26
  906. data/test/regression/test_ignore_error05.rb +0 -32
  907. data/test/regression/test_ignore_error06.rb +0 -32
  908. data/test/regression/test_image01.rb +0 -23
  909. data/test/regression/test_image02.rb +0 -23
  910. data/test/regression/test_image03.rb +0 -23
  911. data/test/regression/test_image04.rb +0 -23
  912. data/test/regression/test_image05.rb +0 -26
  913. data/test/regression/test_image06.rb +0 -36
  914. data/test/regression/test_image07.rb +0 -25
  915. data/test/regression/test_image08.rb +0 -27
  916. data/test/regression/test_image09.rb +0 -24
  917. data/test/regression/test_image10.rb +0 -24
  918. data/test/regression/test_image11.rb +0 -24
  919. data/test/regression/test_image12.rb +0 -27
  920. data/test/regression/test_image13.rb +0 -27
  921. data/test/regression/test_image14.rb +0 -29
  922. data/test/regression/test_image15.rb +0 -31
  923. data/test/regression/test_image16.rb +0 -24
  924. data/test/regression/test_image17.rb +0 -23
  925. data/test/regression/test_image18.rb +0 -27
  926. data/test/regression/test_image19.rb +0 -24
  927. data/test/regression/test_image22.rb +0 -24
  928. data/test/regression/test_image23.rb +0 -30
  929. data/test/regression/test_image24.rb +0 -24
  930. data/test/regression/test_image25.rb +0 -24
  931. data/test/regression/test_image26.rb +0 -30
  932. data/test/regression/test_image27.rb +0 -24
  933. data/test/regression/test_image28.rb +0 -27
  934. data/test/regression/test_image29.rb +0 -27
  935. data/test/regression/test_image30.rb +0 -27
  936. data/test/regression/test_image31.rb +0 -30
  937. data/test/regression/test_image32.rb +0 -28
  938. data/test/regression/test_image33.rb +0 -32
  939. data/test/regression/test_image35.rb +0 -26
  940. data/test/regression/test_image36.rb +0 -26
  941. data/test/regression/test_image44.rb +0 -28
  942. data/test/regression/test_image45.rb +0 -29
  943. data/test/regression/test_image46.rb +0 -29
  944. data/test/regression/test_image47.rb +0 -28
  945. data/test/regression/test_image48.rb +0 -32
  946. data/test/regression/test_image49.rb +0 -38
  947. data/test/regression/test_image50.rb +0 -24
  948. data/test/regression/test_image51.rb +0 -30
  949. data/test/regression/test_image52.rb +0 -26
  950. data/test/regression/test_image53.rb +0 -26
  951. data/test/regression/test_image54.rb +0 -26
  952. data/test/regression/test_image55.rb +0 -27
  953. data/test/regression/test_image56.rb +0 -23
  954. data/test/regression/test_image57.rb +0 -23
  955. data/test/regression/test_landscape01.rb +0 -27
  956. data/test/regression/test_macro01.rb +0 -29
  957. data/test/regression/test_merge_cells01.rb +0 -25
  958. data/test/regression/test_merge_range01.rb +0 -24
  959. data/test/regression/test_merge_range02.rb +0 -24
  960. data/test/regression/test_merge_range03.rb +0 -26
  961. data/test/regression/test_merge_range04.rb +0 -24
  962. data/test/regression/test_merge_range05.rb +0 -24
  963. data/test/regression/test_object_position01.rb +0 -26
  964. data/test/regression/test_object_position02.rb +0 -26
  965. data/test/regression/test_object_position03.rb +0 -26
  966. data/test/regression/test_object_position04.rb +0 -44
  967. data/test/regression/test_object_position06.rb +0 -28
  968. data/test/regression/test_object_position07.rb +0 -28
  969. data/test/regression/test_object_position08.rb +0 -47
  970. data/test/regression/test_object_position09.rb +0 -50
  971. data/test/regression/test_object_position10.rb +0 -28
  972. data/test/regression/test_object_position12.rb +0 -25
  973. data/test/regression/test_object_position13.rb +0 -25
  974. data/test/regression/test_object_position14.rb +0 -25
  975. data/test/regression/test_object_position15.rb +0 -29
  976. data/test/regression/test_object_position16.rb +0 -29
  977. data/test/regression/test_object_position17.rb +0 -29
  978. data/test/regression/test_object_position18.rb +0 -29
  979. data/test/regression/test_object_position19.rb +0 -29
  980. data/test/regression/test_object_position20.rb +0 -29
  981. data/test/regression/test_outline01.rb +0 -84
  982. data/test/regression/test_outline02.rb +0 -87
  983. data/test/regression/test_outline03.rb +0 -57
  984. data/test/regression/test_outline04.rb +0 -53
  985. data/test/regression/test_outline05.rb +0 -88
  986. data/test/regression/test_outline06.rb +0 -87
  987. data/test/regression/test_page_breaks01.rb +0 -34
  988. data/test/regression/test_page_breaks02.rb +0 -34
  989. data/test/regression/test_page_breaks03.rb +0 -34
  990. data/test/regression/test_page_breaks04.rb +0 -34
  991. data/test/regression/test_page_breaks05.rb +0 -34
  992. data/test/regression/test_page_breaks06.rb +0 -35
  993. data/test/regression/test_page_view01.rb +0 -34
  994. data/test/regression/test_panes01.rb +0 -61
  995. data/test/regression/test_print_across01.rb +0 -35
  996. data/test/regression/test_print_area01.rb +0 -34
  997. data/test/regression/test_print_area02.rb +0 -34
  998. data/test/regression/test_print_area03.rb +0 -34
  999. data/test/regression/test_print_area04.rb +0 -34
  1000. data/test/regression/test_print_area05.rb +0 -34
  1001. data/test/regression/test_print_area06.rb +0 -34
  1002. data/test/regression/test_print_area07.rb +0 -35
  1003. data/test/regression/test_print_options01.rb +0 -34
  1004. data/test/regression/test_print_options02.rb +0 -34
  1005. data/test/regression/test_print_options03.rb +0 -34
  1006. data/test/regression/test_print_options04.rb +0 -34
  1007. data/test/regression/test_print_options05.rb +0 -37
  1008. data/test/regression/test_print_options06.rb +0 -35
  1009. data/test/regression/test_print_options07.rb +0 -31
  1010. data/test/regression/test_print_scale01.rb +0 -35
  1011. data/test/regression/test_print_scale02.rb +0 -35
  1012. data/test/regression/test_properties01.rb +0 -36
  1013. data/test/regression/test_properties02.rb +0 -25
  1014. data/test/regression/test_properties03.rb +0 -26
  1015. data/test/regression/test_properties04.rb +0 -61
  1016. data/test/regression/test_properties05.rb +0 -30
  1017. data/test/regression/test_protect01.rb +0 -28
  1018. data/test/regression/test_protect02.rb +0 -30
  1019. data/test/regression/test_protect03.rb +0 -30
  1020. data/test/regression/test_protect04.rb +0 -32
  1021. data/test/regression/test_protect05.rb +0 -35
  1022. data/test/regression/test_protect06.rb +0 -35
  1023. data/test/regression/test_protect07.rb +0 -23
  1024. data/test/regression/test_quote_name01.rb +0 -48
  1025. data/test/regression/test_quote_name03.rb +0 -41
  1026. data/test/regression/test_quote_name04.rb +0 -40
  1027. data/test/regression/test_repeat01.rb +0 -34
  1028. data/test/regression/test_repeat02.rb +0 -34
  1029. data/test/regression/test_repeat03.rb +0 -35
  1030. data/test/regression/test_repeat04.rb +0 -34
  1031. data/test/regression/test_repeat05.rb +0 -41
  1032. data/test/regression/test_rich_string01.rb +0 -28
  1033. data/test/regression/test_rich_string02.rb +0 -28
  1034. data/test/regression/test_rich_string03.rb +0 -28
  1035. data/test/regression/test_rich_string04.rb +0 -28
  1036. data/test/regression/test_rich_string05.rb +0 -30
  1037. data/test/regression/test_rich_string06.rb +0 -27
  1038. data/test/regression/test_rich_string07.rb +0 -33
  1039. data/test/regression/test_rich_string08.rb +0 -29
  1040. data/test/regression/test_rich_string09.rb +0 -31
  1041. data/test/regression/test_rich_string10.rb +0 -30
  1042. data/test/regression/test_rich_string11.rb +0 -29
  1043. data/test/regression/test_rich_string12.rb +0 -32
  1044. data/test/regression/test_row_col_format01.rb +0 -24
  1045. data/test/regression/test_row_col_format02.rb +0 -25
  1046. data/test/regression/test_row_col_format03.rb +0 -24
  1047. data/test/regression/test_row_col_format04.rb +0 -25
  1048. data/test/regression/test_row_col_format05.rb +0 -26
  1049. data/test/regression/test_row_col_format06.rb +0 -29
  1050. data/test/regression/test_row_col_format07.rb +0 -24
  1051. data/test/regression/test_row_col_format08.rb +0 -34
  1052. data/test/regression/test_row_col_format09.rb +0 -33
  1053. data/test/regression/test_row_col_format10.rb +0 -24
  1054. data/test/regression/test_row_col_format11.rb +0 -23
  1055. data/test/regression/test_row_col_format12.rb +0 -23
  1056. data/test/regression/test_row_col_format13.rb +0 -28
  1057. data/test/regression/test_row_col_format14.rb +0 -28
  1058. data/test/regression/test_selection01.rb +0 -23
  1059. data/test/regression/test_selection02.rb +0 -33
  1060. data/test/regression/test_set_column01.rb +0 -63
  1061. data/test/regression/test_set_column02.rb +0 -64
  1062. data/test/regression/test_set_column03.rb +0 -34
  1063. data/test/regression/test_set_column04.rb +0 -42
  1064. data/test/regression/test_set_column05.rb +0 -52
  1065. data/test/regression/test_set_column06.rb +0 -49
  1066. data/test/regression/test_set_column07.rb +0 -45
  1067. data/test/regression/test_set_column08.rb +0 -42
  1068. data/test/regression/test_set_column09.rb +0 -31
  1069. data/test/regression/test_set_column10.rb +0 -55
  1070. data/test/regression/test_set_column11.rb +0 -48
  1071. data/test/regression/test_set_print_scale01.rb +0 -36
  1072. data/test/regression/test_set_row01.rb +0 -35
  1073. data/test/regression/test_set_row02.rb +0 -35
  1074. data/test/regression/test_set_row03.rb +0 -35
  1075. data/test/regression/test_set_row04.rb +0 -35
  1076. data/test/regression/test_set_start_page01.rb +0 -33
  1077. data/test/regression/test_set_start_page02.rb +0 -33
  1078. data/test/regression/test_set_start_page03.rb +0 -33
  1079. data/test/regression/test_shape01.rb +0 -25
  1080. data/test/regression/test_shape02.rb +0 -42
  1081. data/test/regression/test_shape03.rb +0 -45
  1082. data/test/regression/test_shape04.rb +0 -43
  1083. data/test/regression/test_shape_connect01.rb +0 -48
  1084. data/test/regression/test_shape_connect02.rb +0 -42
  1085. data/test/regression/test_shape_connect03.rb +0 -78
  1086. data/test/regression/test_shape_connect04.rb +0 -75
  1087. data/test/regression/test_shape_scale01.rb +0 -45
  1088. data/test/regression/test_shape_stencil01.rb +0 -39
  1089. data/test/regression/test_shared_strings01.rb +0 -32
  1090. data/test/regression/test_shared_strings02.rb +0 -45
  1091. data/test/regression/test_shared_strings_encoding.rb +0 -0
  1092. data/test/regression/test_simple01.rb +0 -24
  1093. data/test/regression/test_simple02.rb +0 -32
  1094. data/test/regression/test_simple03.rb +0 -39
  1095. data/test/regression/test_simple04.rb +0 -29
  1096. data/test/regression/test_simple05.rb +0 -40
  1097. data/test/regression/test_tab_color01.rb +0 -20
  1098. data/test/regression/test_table01.rb +0 -27
  1099. data/test/regression/test_table02.rb +0 -37
  1100. data/test/regression/test_table03.rb +0 -33
  1101. data/test/regression/test_table04.rb +0 -37
  1102. data/test/regression/test_table05.rb +0 -41
  1103. data/test/regression/test_table06.rb +0 -44
  1104. data/test/regression/test_table07.rb +0 -29
  1105. data/test/regression/test_table08.rb +0 -48
  1106. data/test/regression/test_table09.rb +0 -65
  1107. data/test/regression/test_table10.rb +0 -68
  1108. data/test/regression/test_table11.rb +0 -37
  1109. data/test/regression/test_table12.rb +0 -36
  1110. data/test/regression/test_table13.rb +0 -51
  1111. data/test/regression/test_table14.rb +0 -51
  1112. data/test/regression/test_table15.rb +0 -37
  1113. data/test/regression/test_table16.rb +0 -37
  1114. data/test/regression/test_table17.rb +0 -70
  1115. data/test/regression/test_table20.rb +0 -34
  1116. data/test/regression/test_table21.rb +0 -36
  1117. data/test/regression/test_table22.rb +0 -32
  1118. data/test/regression/test_table23.rb +0 -56
  1119. data/test/regression/test_table24.rb +0 -27
  1120. data/test/regression/test_table25.rb +0 -27
  1121. data/test/regression/test_table26.rb +0 -38
  1122. data/test/regression/test_tutorial01.rb +0 -38
  1123. data/test/regression/test_tutorial02.rb +0 -44
  1124. data/test/regression/test_tutorial03.rb +0 -49
  1125. data/test/regression/test_types02.rb +0 -25
  1126. data/test/regression/test_types08.rb +0 -31
  1127. data/test/regression/test_update_range_format_with_params.rb +0 -42
  1128. data/test/regression/test_urls_as_strings.rb +0 -25
  1129. data/test/regression/test_utf8_01.rb +0 -23
  1130. data/test/regression/test_utf8_03.rb +0 -23
  1131. data/test/regression/test_utf8_04.rb +0 -23
  1132. data/test/regression/test_utf8_05.rb +0 -26
  1133. data/test/regression/test_utf8_06.rb +0 -28
  1134. data/test/regression/test_utf8_07.rb +0 -27
  1135. data/test/regression/test_utf8_08.rb +0 -38
  1136. data/test/regression/test_utf8_09.rb +0 -20
  1137. data/test/regression/test_utf8_10.rb +0 -42
  1138. data/test/regression/test_utf8_11.rb +0 -23
  1139. data/test/regression/test_vml01.rb +0 -29
  1140. data/test/regression/test_vml02.rb +0 -31
  1141. data/test/regression/test_vml03.rb +0 -40
  1142. data/test/regression/xlsx_files/array_formula01.xlsx +0 -0
  1143. data/test/regression/xlsx_files/array_formula02.xlsx +0 -0
  1144. data/test/regression/xlsx_files/array_formula03.xlsx +0 -0
  1145. data/test/regression/xlsx_files/array_formula04.xlsx +0 -0
  1146. data/test/regression/xlsx_files/autofilter00.xlsx +0 -0
  1147. data/test/regression/xlsx_files/autofilter01.xlsx +0 -0
  1148. data/test/regression/xlsx_files/autofilter02.xlsx +0 -0
  1149. data/test/regression/xlsx_files/autofilter03.xlsx +0 -0
  1150. data/test/regression/xlsx_files/autofilter04.xlsx +0 -0
  1151. data/test/regression/xlsx_files/autofilter05.xlsx +0 -0
  1152. data/test/regression/xlsx_files/autofilter06.xlsx +0 -0
  1153. data/test/regression/xlsx_files/autofilter07.xlsx +0 -0
  1154. data/test/regression/xlsx_files/autofilter08.xlsx +0 -0
  1155. data/test/regression/xlsx_files/autofilter09.xlsx +0 -0
  1156. data/test/regression/xlsx_files/autofilter10.xlsx +0 -0
  1157. data/test/regression/xlsx_files/background01.xlsx +0 -0
  1158. data/test/regression/xlsx_files/background02.xlsx +0 -0
  1159. data/test/regression/xlsx_files/background03.xlsx +0 -0
  1160. data/test/regression/xlsx_files/background04.xlsx +0 -0
  1161. data/test/regression/xlsx_files/background05.xlsx +0 -0
  1162. data/test/regression/xlsx_files/background06.xlsx +0 -0
  1163. data/test/regression/xlsx_files/background07.xlsx +0 -0
  1164. data/test/regression/xlsx_files/button01.xlsx +0 -0
  1165. data/test/regression/xlsx_files/button02.xlsx +0 -0
  1166. data/test/regression/xlsx_files/button03.xlsx +0 -0
  1167. data/test/regression/xlsx_files/button04.xlsx +0 -0
  1168. data/test/regression/xlsx_files/button05.xlsx +0 -0
  1169. data/test/regression/xlsx_files/button07.xlsm +0 -0
  1170. data/test/regression/xlsx_files/button08.xlsx +0 -0
  1171. data/test/regression/xlsx_files/button09.xlsx +0 -0
  1172. data/test/regression/xlsx_files/button10.xlsx +0 -0
  1173. data/test/regression/xlsx_files/button11.xlsx +0 -0
  1174. data/test/regression/xlsx_files/button12.xlsx +0 -0
  1175. data/test/regression/xlsx_files/chart_area01.xlsx +0 -0
  1176. data/test/regression/xlsx_files/chart_area02.xlsx +0 -0
  1177. data/test/regression/xlsx_files/chart_area03.xlsx +0 -0
  1178. data/test/regression/xlsx_files/chart_area04.xlsx +0 -0
  1179. data/test/regression/xlsx_files/chart_axis01.xlsx +0 -0
  1180. data/test/regression/xlsx_files/chart_axis02.xlsx +0 -0
  1181. data/test/regression/xlsx_files/chart_axis03.xlsx +0 -0
  1182. data/test/regression/xlsx_files/chart_axis04.xlsx +0 -0
  1183. data/test/regression/xlsx_files/chart_axis05.xlsx +0 -0
  1184. data/test/regression/xlsx_files/chart_axis06.xlsx +0 -0
  1185. data/test/regression/xlsx_files/chart_axis07.xlsx +0 -0
  1186. data/test/regression/xlsx_files/chart_axis08.xlsx +0 -0
  1187. data/test/regression/xlsx_files/chart_axis09.xlsx +0 -0
  1188. data/test/regression/xlsx_files/chart_axis10.xlsx +0 -0
  1189. data/test/regression/xlsx_files/chart_axis11.xlsx +0 -0
  1190. data/test/regression/xlsx_files/chart_axis12.xlsx +0 -0
  1191. data/test/regression/xlsx_files/chart_axis13.xlsx +0 -0
  1192. data/test/regression/xlsx_files/chart_axis14.xlsx +0 -0
  1193. data/test/regression/xlsx_files/chart_axis15.xlsx +0 -0
  1194. data/test/regression/xlsx_files/chart_axis16.xlsx +0 -0
  1195. data/test/regression/xlsx_files/chart_axis17.xlsx +0 -0
  1196. data/test/regression/xlsx_files/chart_axis18.xlsx +0 -0
  1197. data/test/regression/xlsx_files/chart_axis19.xlsx +0 -0
  1198. data/test/regression/xlsx_files/chart_axis20.xlsx +0 -0
  1199. data/test/regression/xlsx_files/chart_axis21.xlsx +0 -0
  1200. data/test/regression/xlsx_files/chart_axis22.xlsx +0 -0
  1201. data/test/regression/xlsx_files/chart_axis23.xlsx +0 -0
  1202. data/test/regression/xlsx_files/chart_axis24.xlsx +0 -0
  1203. data/test/regression/xlsx_files/chart_axis25.xlsx +0 -0
  1204. data/test/regression/xlsx_files/chart_axis26.xlsx +0 -0
  1205. data/test/regression/xlsx_files/chart_axis27.xlsx +0 -0
  1206. data/test/regression/xlsx_files/chart_axis28.xlsx +0 -0
  1207. data/test/regression/xlsx_files/chart_axis29.xlsx +0 -0
  1208. data/test/regression/xlsx_files/chart_axis30.xlsx +0 -0
  1209. data/test/regression/xlsx_files/chart_axis31.xlsx +0 -0
  1210. data/test/regression/xlsx_files/chart_axis32.xlsx +0 -0
  1211. data/test/regression/xlsx_files/chart_axis33.xlsx +0 -0
  1212. data/test/regression/xlsx_files/chart_axis34.xlsx +0 -0
  1213. data/test/regression/xlsx_files/chart_axis35.xlsx +0 -0
  1214. data/test/regression/xlsx_files/chart_axis36.xlsx +0 -0
  1215. data/test/regression/xlsx_files/chart_axis37.xlsx +0 -0
  1216. data/test/regression/xlsx_files/chart_axis38.xlsx +0 -0
  1217. data/test/regression/xlsx_files/chart_axis39.xlsx +0 -0
  1218. data/test/regression/xlsx_files/chart_axis40.xlsx +0 -0
  1219. data/test/regression/xlsx_files/chart_axis41.xlsx +0 -0
  1220. data/test/regression/xlsx_files/chart_axis42.xlsx +0 -0
  1221. data/test/regression/xlsx_files/chart_axis43.xlsx +0 -0
  1222. data/test/regression/xlsx_files/chart_axis44.xlsx +0 -0
  1223. data/test/regression/xlsx_files/chart_axis45.xlsx +0 -0
  1224. data/test/regression/xlsx_files/chart_axis46.xlsx +0 -0
  1225. data/test/regression/xlsx_files/chart_axis47.xlsx +0 -0
  1226. data/test/regression/xlsx_files/chart_axis48.xlsx +0 -0
  1227. data/test/regression/xlsx_files/chart_bar01.xlsx +0 -0
  1228. data/test/regression/xlsx_files/chart_bar02.xlsx +0 -0
  1229. data/test/regression/xlsx_files/chart_bar03.xlsx +0 -0
  1230. data/test/regression/xlsx_files/chart_bar04.xlsx +0 -0
  1231. data/test/regression/xlsx_files/chart_bar05.xlsx +0 -0
  1232. data/test/regression/xlsx_files/chart_bar06.xlsx +0 -0
  1233. data/test/regression/xlsx_files/chart_bar07.xlsx +0 -0
  1234. data/test/regression/xlsx_files/chart_bar08.xlsx +0 -0
  1235. data/test/regression/xlsx_files/chart_bar09.xlsx +0 -0
  1236. data/test/regression/xlsx_files/chart_bar10.xlsx +0 -0
  1237. data/test/regression/xlsx_files/chart_bar11.xlsx +0 -0
  1238. data/test/regression/xlsx_files/chart_bar12.xlsx +0 -0
  1239. data/test/regression/xlsx_files/chart_bar13.xlsx +0 -0
  1240. data/test/regression/xlsx_files/chart_bar14.xlsx +0 -0
  1241. data/test/regression/xlsx_files/chart_bar15.xlsx +0 -0
  1242. data/test/regression/xlsx_files/chart_bar16.xlsx +0 -0
  1243. data/test/regression/xlsx_files/chart_bar17.xlsx +0 -0
  1244. data/test/regression/xlsx_files/chart_bar18.xlsx +0 -0
  1245. data/test/regression/xlsx_files/chart_bar19.xlsx +0 -0
  1246. data/test/regression/xlsx_files/chart_bar20.xlsx +0 -0
  1247. data/test/regression/xlsx_files/chart_bar21.xlsx +0 -0
  1248. data/test/regression/xlsx_files/chart_bar22.xlsx +0 -0
  1249. data/test/regression/xlsx_files/chart_bar23.xlsx +0 -0
  1250. data/test/regression/xlsx_files/chart_bar24.xlsx +0 -0
  1251. data/test/regression/xlsx_files/chart_blank01.xlsx +0 -0
  1252. data/test/regression/xlsx_files/chart_blank02.xlsx +0 -0
  1253. data/test/regression/xlsx_files/chart_blank03.xlsx +0 -0
  1254. data/test/regression/xlsx_files/chart_blank04.xlsx +0 -0
  1255. data/test/regression/xlsx_files/chart_blank05.xlsx +0 -0
  1256. data/test/regression/xlsx_files/chart_blank06.xlsx +0 -0
  1257. data/test/regression/xlsx_files/chart_chartarea01.xlsx +0 -0
  1258. data/test/regression/xlsx_files/chart_chartarea03.xlsx +0 -0
  1259. data/test/regression/xlsx_files/chart_chartarea04.xlsx +0 -0
  1260. data/test/regression/xlsx_files/chart_chartarea05.xlsx +0 -0
  1261. data/test/regression/xlsx_files/chart_chartarea06.xlsx +0 -0
  1262. data/test/regression/xlsx_files/chart_clustered01.xlsx +0 -0
  1263. data/test/regression/xlsx_files/chart_column01.xlsx +0 -0
  1264. data/test/regression/xlsx_files/chart_column02.xlsx +0 -0
  1265. data/test/regression/xlsx_files/chart_column03.xlsx +0 -0
  1266. data/test/regression/xlsx_files/chart_column04.xlsx +0 -0
  1267. data/test/regression/xlsx_files/chart_column05.xlsx +0 -0
  1268. data/test/regression/xlsx_files/chart_column06.xlsx +0 -0
  1269. data/test/regression/xlsx_files/chart_column07.xlsx +0 -0
  1270. data/test/regression/xlsx_files/chart_column08.xlsx +0 -0
  1271. data/test/regression/xlsx_files/chart_column09.xlsx +0 -0
  1272. data/test/regression/xlsx_files/chart_column10.xlsx +0 -0
  1273. data/test/regression/xlsx_files/chart_column11.xlsx +0 -0
  1274. data/test/regression/xlsx_files/chart_column12.xlsx +0 -0
  1275. data/test/regression/xlsx_files/chart_combined01.xlsx +0 -0
  1276. data/test/regression/xlsx_files/chart_combined02.xlsx +0 -0
  1277. data/test/regression/xlsx_files/chart_combined03.xlsx +0 -0
  1278. data/test/regression/xlsx_files/chart_combined04.xlsx +0 -0
  1279. data/test/regression/xlsx_files/chart_combined05.xlsx +0 -0
  1280. data/test/regression/xlsx_files/chart_combined06.xlsx +0 -0
  1281. data/test/regression/xlsx_files/chart_combined07.xlsx +0 -0
  1282. data/test/regression/xlsx_files/chart_combined08.xlsx +0 -0
  1283. data/test/regression/xlsx_files/chart_combined09.xlsx +0 -0
  1284. data/test/regression/xlsx_files/chart_combined10.xlsx +0 -0
  1285. data/test/regression/xlsx_files/chart_combined11.xlsx +0 -0
  1286. data/test/regression/xlsx_files/chart_crossing01.xlsx +0 -0
  1287. data/test/regression/xlsx_files/chart_crossing02.xlsx +0 -0
  1288. data/test/regression/xlsx_files/chart_crossing03.xlsx +0 -0
  1289. data/test/regression/xlsx_files/chart_crossing04.xlsx +0 -0
  1290. data/test/regression/xlsx_files/chart_crossing05.xlsx +0 -0
  1291. data/test/regression/xlsx_files/chart_crossing06.xlsx +0 -0
  1292. data/test/regression/xlsx_files/chart_data_labels01.xlsx +0 -0
  1293. data/test/regression/xlsx_files/chart_data_labels02.xlsx +0 -0
  1294. data/test/regression/xlsx_files/chart_data_labels03.xlsx +0 -0
  1295. data/test/regression/xlsx_files/chart_data_labels04.xlsx +0 -0
  1296. data/test/regression/xlsx_files/chart_data_labels05.xlsx +0 -0
  1297. data/test/regression/xlsx_files/chart_data_labels06.xlsx +0 -0
  1298. data/test/regression/xlsx_files/chart_data_labels07.xlsx +0 -0
  1299. data/test/regression/xlsx_files/chart_data_labels08.xlsx +0 -0
  1300. data/test/regression/xlsx_files/chart_data_labels09.xlsx +0 -0
  1301. data/test/regression/xlsx_files/chart_data_labels10.xlsx +0 -0
  1302. data/test/regression/xlsx_files/chart_data_labels11.xlsx +0 -0
  1303. data/test/regression/xlsx_files/chart_data_labels12.xlsx +0 -0
  1304. data/test/regression/xlsx_files/chart_data_labels13.xlsx +0 -0
  1305. data/test/regression/xlsx_files/chart_data_labels14.xlsx +0 -0
  1306. data/test/regression/xlsx_files/chart_data_labels15.xlsx +0 -0
  1307. data/test/regression/xlsx_files/chart_data_labels16.xlsx +0 -0
  1308. data/test/regression/xlsx_files/chart_data_labels17.xlsx +0 -0
  1309. data/test/regression/xlsx_files/chart_data_labels18.xlsx +0 -0
  1310. data/test/regression/xlsx_files/chart_data_labels19.xlsx +0 -0
  1311. data/test/regression/xlsx_files/chart_data_labels20.xlsx +0 -0
  1312. data/test/regression/xlsx_files/chart_data_labels21.xlsx +0 -0
  1313. data/test/regression/xlsx_files/chart_data_labels22.xlsx +0 -0
  1314. data/test/regression/xlsx_files/chart_data_labels23.xlsx +0 -0
  1315. data/test/regression/xlsx_files/chart_data_labels24.xlsx +0 -0
  1316. data/test/regression/xlsx_files/chart_data_labels25.xlsx +0 -0
  1317. data/test/regression/xlsx_files/chart_data_labels26.xlsx +0 -0
  1318. data/test/regression/xlsx_files/chart_data_labels27.xlsx +0 -0
  1319. data/test/regression/xlsx_files/chart_data_labels28.xlsx +0 -0
  1320. data/test/regression/xlsx_files/chart_data_labels29.xlsx +0 -0
  1321. data/test/regression/xlsx_files/chart_data_labels30.xlsx +0 -0
  1322. data/test/regression/xlsx_files/chart_data_labels31.xlsx +0 -0
  1323. data/test/regression/xlsx_files/chart_data_labels32.xlsx +0 -0
  1324. data/test/regression/xlsx_files/chart_data_labels33.xlsx +0 -0
  1325. data/test/regression/xlsx_files/chart_data_labels34.xlsx +0 -0
  1326. data/test/regression/xlsx_files/chart_data_labels35.xlsx +0 -0
  1327. data/test/regression/xlsx_files/chart_data_labels36.xlsx +0 -0
  1328. data/test/regression/xlsx_files/chart_data_labels37.xlsx +0 -0
  1329. data/test/regression/xlsx_files/chart_data_labels38.xlsx +0 -0
  1330. data/test/regression/xlsx_files/chart_data_labels39.xlsx +0 -0
  1331. data/test/regression/xlsx_files/chart_data_labels40.xlsx +0 -0
  1332. data/test/regression/xlsx_files/chart_data_labels41.xlsx +0 -0
  1333. data/test/regression/xlsx_files/chart_data_labels42.xlsx +0 -0
  1334. data/test/regression/xlsx_files/chart_data_labels43.xlsx +0 -0
  1335. data/test/regression/xlsx_files/chart_data_labels44.xlsx +0 -0
  1336. data/test/regression/xlsx_files/chart_data_labels45.xlsx +0 -0
  1337. data/test/regression/xlsx_files/chart_data_labels46.xlsx +0 -0
  1338. data/test/regression/xlsx_files/chart_data_labels47.xlsx +0 -0
  1339. data/test/regression/xlsx_files/chart_data_labels48.xlsx +0 -0
  1340. data/test/regression/xlsx_files/chart_data_labels49.xlsx +0 -0
  1341. data/test/regression/xlsx_files/chart_data_labels50.xlsx +0 -0
  1342. data/test/regression/xlsx_files/chart_date01.xlsx +0 -0
  1343. data/test/regression/xlsx_files/chart_date02.xlsx +0 -0
  1344. data/test/regression/xlsx_files/chart_date03.xlsx +0 -0
  1345. data/test/regression/xlsx_files/chart_date04.xlsx +0 -0
  1346. data/test/regression/xlsx_files/chart_date05.xlsx +0 -0
  1347. data/test/regression/xlsx_files/chart_display_units01.xlsx +0 -0
  1348. data/test/regression/xlsx_files/chart_display_units02.xlsx +0 -0
  1349. data/test/regression/xlsx_files/chart_display_units03.xlsx +0 -0
  1350. data/test/regression/xlsx_files/chart_display_units04.xlsx +0 -0
  1351. data/test/regression/xlsx_files/chart_display_units05.xlsx +0 -0
  1352. data/test/regression/xlsx_files/chart_display_units06.xlsx +0 -0
  1353. data/test/regression/xlsx_files/chart_display_units07.xlsx +0 -0
  1354. data/test/regression/xlsx_files/chart_display_units08.xlsx +0 -0
  1355. data/test/regression/xlsx_files/chart_display_units09.xlsx +0 -0
  1356. data/test/regression/xlsx_files/chart_display_units10.xlsx +0 -0
  1357. data/test/regression/xlsx_files/chart_display_units11.xlsx +0 -0
  1358. data/test/regression/xlsx_files/chart_display_units12.xlsx +0 -0
  1359. data/test/regression/xlsx_files/chart_doughnut01.xlsx +0 -0
  1360. data/test/regression/xlsx_files/chart_doughnut02.xlsx +0 -0
  1361. data/test/regression/xlsx_files/chart_doughnut03.xlsx +0 -0
  1362. data/test/regression/xlsx_files/chart_doughnut04.xlsx +0 -0
  1363. data/test/regression/xlsx_files/chart_doughnut05.xlsx +0 -0
  1364. data/test/regression/xlsx_files/chart_doughnut06.xlsx +0 -0
  1365. data/test/regression/xlsx_files/chart_doughnut07.xlsx +0 -0
  1366. data/test/regression/xlsx_files/chart_drop_lines01.xlsx +0 -0
  1367. data/test/regression/xlsx_files/chart_drop_lines02.xlsx +0 -0
  1368. data/test/regression/xlsx_files/chart_drop_lines03.xlsx +0 -0
  1369. data/test/regression/xlsx_files/chart_drop_lines04.xlsx +0 -0
  1370. data/test/regression/xlsx_files/chart_errorbars01.xlsx +0 -0
  1371. data/test/regression/xlsx_files/chart_errorbars02.xlsx +0 -0
  1372. data/test/regression/xlsx_files/chart_errorbars03.xlsx +0 -0
  1373. data/test/regression/xlsx_files/chart_errorbars04.xlsx +0 -0
  1374. data/test/regression/xlsx_files/chart_errorbars05.xlsx +0 -0
  1375. data/test/regression/xlsx_files/chart_errorbars06.xlsx +0 -0
  1376. data/test/regression/xlsx_files/chart_errorbars07.xlsx +0 -0
  1377. data/test/regression/xlsx_files/chart_errorbars08.xlsx +0 -0
  1378. data/test/regression/xlsx_files/chart_errorbars09.xlsx +0 -0
  1379. data/test/regression/xlsx_files/chart_errorbars10.xlsx +0 -0
  1380. data/test/regression/xlsx_files/chart_font01.xlsx +0 -0
  1381. data/test/regression/xlsx_files/chart_font02.xlsx +0 -0
  1382. data/test/regression/xlsx_files/chart_font03.xlsx +0 -0
  1383. data/test/regression/xlsx_files/chart_font04.xlsx +0 -0
  1384. data/test/regression/xlsx_files/chart_font05.xlsx +0 -0
  1385. data/test/regression/xlsx_files/chart_font06.xlsx +0 -0
  1386. data/test/regression/xlsx_files/chart_font07.xlsx +0 -0
  1387. data/test/regression/xlsx_files/chart_font08.xlsx +0 -0
  1388. data/test/regression/xlsx_files/chart_font09.xlsx +0 -0
  1389. data/test/regression/xlsx_files/chart_format01.xlsx +0 -0
  1390. data/test/regression/xlsx_files/chart_format02.xlsx +0 -0
  1391. data/test/regression/xlsx_files/chart_format03.xlsx +0 -0
  1392. data/test/regression/xlsx_files/chart_format04.xlsx +0 -0
  1393. data/test/regression/xlsx_files/chart_format05.xlsx +0 -0
  1394. data/test/regression/xlsx_files/chart_format06.xlsx +0 -0
  1395. data/test/regression/xlsx_files/chart_format07.xlsx +0 -0
  1396. data/test/regression/xlsx_files/chart_format08.xlsx +0 -0
  1397. data/test/regression/xlsx_files/chart_format09.xlsx +0 -0
  1398. data/test/regression/xlsx_files/chart_format10.xlsx +0 -0
  1399. data/test/regression/xlsx_files/chart_format11.xlsx +0 -0
  1400. data/test/regression/xlsx_files/chart_format12.xlsx +0 -0
  1401. data/test/regression/xlsx_files/chart_format13.xlsx +0 -0
  1402. data/test/regression/xlsx_files/chart_format14.xlsx +0 -0
  1403. data/test/regression/xlsx_files/chart_format15.xlsx +0 -0
  1404. data/test/regression/xlsx_files/chart_format16.xlsx +0 -0
  1405. data/test/regression/xlsx_files/chart_format17.xlsx +0 -0
  1406. data/test/regression/xlsx_files/chart_format18.xlsx +0 -0
  1407. data/test/regression/xlsx_files/chart_format19.xlsx +0 -0
  1408. data/test/regression/xlsx_files/chart_format20.xlsx +0 -0
  1409. data/test/regression/xlsx_files/chart_format21.xlsx +0 -0
  1410. data/test/regression/xlsx_files/chart_format22.xlsx +0 -0
  1411. data/test/regression/xlsx_files/chart_format23.xlsx +0 -0
  1412. data/test/regression/xlsx_files/chart_format24.xlsx +0 -0
  1413. data/test/regression/xlsx_files/chart_format25.xlsx +0 -0
  1414. data/test/regression/xlsx_files/chart_format26.xlsx +0 -0
  1415. data/test/regression/xlsx_files/chart_format27.xlsx +0 -0
  1416. data/test/regression/xlsx_files/chart_format28.xlsx +0 -0
  1417. data/test/regression/xlsx_files/chart_format29.xlsx +0 -0
  1418. data/test/regression/xlsx_files/chart_format30.xlsx +0 -0
  1419. data/test/regression/xlsx_files/chart_format31.xlsx +0 -0
  1420. data/test/regression/xlsx_files/chart_gap01.xlsx +0 -0
  1421. data/test/regression/xlsx_files/chart_gap02.xlsx +0 -0
  1422. data/test/regression/xlsx_files/chart_gap03.xlsx +0 -0
  1423. data/test/regression/xlsx_files/chart_gap04.xlsx +0 -0
  1424. data/test/regression/xlsx_files/chart_gap05.xlsx +0 -0
  1425. data/test/regression/xlsx_files/chart_gradient01.xlsx +0 -0
  1426. data/test/regression/xlsx_files/chart_gradient02.xlsx +0 -0
  1427. data/test/regression/xlsx_files/chart_gradient03.xlsx +0 -0
  1428. data/test/regression/xlsx_files/chart_gradient04.xlsx +0 -0
  1429. data/test/regression/xlsx_files/chart_gradient05.xlsx +0 -0
  1430. data/test/regression/xlsx_files/chart_gradient06.xlsx +0 -0
  1431. data/test/regression/xlsx_files/chart_gradient07.xlsx +0 -0
  1432. data/test/regression/xlsx_files/chart_gradient08.xlsx +0 -0
  1433. data/test/regression/xlsx_files/chart_gradient09.xlsx +0 -0
  1434. data/test/regression/xlsx_files/chart_gradient10.xlsx +0 -0
  1435. data/test/regression/xlsx_files/chart_gradient11.xlsx +0 -0
  1436. data/test/regression/xlsx_files/chart_gradient12.xlsx +0 -0
  1437. data/test/regression/xlsx_files/chart_gradient13.xlsx +0 -0
  1438. data/test/regression/xlsx_files/chart_gridlines01.xlsx +0 -0
  1439. data/test/regression/xlsx_files/chart_gridlines02.xlsx +0 -0
  1440. data/test/regression/xlsx_files/chart_gridlines03.xlsx +0 -0
  1441. data/test/regression/xlsx_files/chart_gridlines04.xlsx +0 -0
  1442. data/test/regression/xlsx_files/chart_gridlines05.xlsx +0 -0
  1443. data/test/regression/xlsx_files/chart_gridlines06.xlsx +0 -0
  1444. data/test/regression/xlsx_files/chart_gridlines07.xlsx +0 -0
  1445. data/test/regression/xlsx_files/chart_gridlines08.xlsx +0 -0
  1446. data/test/regression/xlsx_files/chart_gridlines09.xlsx +0 -0
  1447. data/test/regression/xlsx_files/chart_layout01.xlsx +0 -0
  1448. data/test/regression/xlsx_files/chart_layout02.xlsx +0 -0
  1449. data/test/regression/xlsx_files/chart_layout03.xlsx +0 -0
  1450. data/test/regression/xlsx_files/chart_layout04.xlsx +0 -0
  1451. data/test/regression/xlsx_files/chart_layout05.xlsx +0 -0
  1452. data/test/regression/xlsx_files/chart_layout06.xlsx +0 -0
  1453. data/test/regression/xlsx_files/chart_layout07.xlsx +0 -0
  1454. data/test/regression/xlsx_files/chart_layout08.xlsx +0 -0
  1455. data/test/regression/xlsx_files/chart_legend01.xlsx +0 -0
  1456. data/test/regression/xlsx_files/chart_legend03.xlsx +0 -0
  1457. data/test/regression/xlsx_files/chart_legend04.xlsx +0 -0
  1458. data/test/regression/xlsx_files/chart_legend05.xlsx +0 -0
  1459. data/test/regression/xlsx_files/chart_legend06.xlsx +0 -0
  1460. data/test/regression/xlsx_files/chart_legend07.xlsx +0 -0
  1461. data/test/regression/xlsx_files/chart_line01.xlsx +0 -0
  1462. data/test/regression/xlsx_files/chart_line02.xlsx +0 -0
  1463. data/test/regression/xlsx_files/chart_line03.xlsx +0 -0
  1464. data/test/regression/xlsx_files/chart_line04.xlsx +0 -0
  1465. data/test/regression/xlsx_files/chart_line05.xlsx +0 -0
  1466. data/test/regression/xlsx_files/chart_line06.xlsx +0 -0
  1467. data/test/regression/xlsx_files/chart_name01.xlsx +0 -0
  1468. data/test/regression/xlsx_files/chart_name02.xlsx +0 -0
  1469. data/test/regression/xlsx_files/chart_name03.xlsx +0 -0
  1470. data/test/regression/xlsx_files/chart_order01.xlsx +0 -0
  1471. data/test/regression/xlsx_files/chart_order03.xlsx +0 -0
  1472. data/test/regression/xlsx_files/chart_pattern01.xlsx +0 -0
  1473. data/test/regression/xlsx_files/chart_pattern02.xlsx +0 -0
  1474. data/test/regression/xlsx_files/chart_pattern03.xlsx +0 -0
  1475. data/test/regression/xlsx_files/chart_pattern04.xlsx +0 -0
  1476. data/test/regression/xlsx_files/chart_pattern05.xlsx +0 -0
  1477. data/test/regression/xlsx_files/chart_pattern06.xlsx +0 -0
  1478. data/test/regression/xlsx_files/chart_pattern07.xlsx +0 -0
  1479. data/test/regression/xlsx_files/chart_pattern08.xlsx +0 -0
  1480. data/test/regression/xlsx_files/chart_pattern09.xlsx +0 -0
  1481. data/test/regression/xlsx_files/chart_pattern10.xlsx +0 -0
  1482. data/test/regression/xlsx_files/chart_pie01.xlsx +0 -0
  1483. data/test/regression/xlsx_files/chart_pie02.xlsx +0 -0
  1484. data/test/regression/xlsx_files/chart_pie03.xlsx +0 -0
  1485. data/test/regression/xlsx_files/chart_pie04.xlsx +0 -0
  1486. data/test/regression/xlsx_files/chart_pie05.xlsx +0 -0
  1487. data/test/regression/xlsx_files/chart_points01.xlsx +0 -0
  1488. data/test/regression/xlsx_files/chart_points02.xlsx +0 -0
  1489. data/test/regression/xlsx_files/chart_points03.xlsx +0 -0
  1490. data/test/regression/xlsx_files/chart_points04.xlsx +0 -0
  1491. data/test/regression/xlsx_files/chart_points05.xlsx +0 -0
  1492. data/test/regression/xlsx_files/chart_points06.xlsx +0 -0
  1493. data/test/regression/xlsx_files/chart_radar01.xlsx +0 -0
  1494. data/test/regression/xlsx_files/chart_radar02.xlsx +0 -0
  1495. data/test/regression/xlsx_files/chart_radar03.xlsx +0 -0
  1496. data/test/regression/xlsx_files/chart_scatter01.xlsx +0 -0
  1497. data/test/regression/xlsx_files/chart_scatter02.xlsx +0 -0
  1498. data/test/regression/xlsx_files/chart_scatter03.xlsx +0 -0
  1499. data/test/regression/xlsx_files/chart_scatter04.xlsx +0 -0
  1500. data/test/regression/xlsx_files/chart_scatter05.xlsx +0 -0
  1501. data/test/regression/xlsx_files/chart_scatter06.xlsx +0 -0
  1502. data/test/regression/xlsx_files/chart_scatter07.xlsx +0 -0
  1503. data/test/regression/xlsx_files/chart_scatter08.xlsx +0 -0
  1504. data/test/regression/xlsx_files/chart_scatter09.xlsx +0 -0
  1505. data/test/regression/xlsx_files/chart_scatter10.xlsx +0 -0
  1506. data/test/regression/xlsx_files/chart_scatter11.xlsx +0 -0
  1507. data/test/regression/xlsx_files/chart_scatter12.xlsx +0 -0
  1508. data/test/regression/xlsx_files/chart_scatter14.xlsx +0 -0
  1509. data/test/regression/xlsx_files/chart_scatter15.xlsx +0 -0
  1510. data/test/regression/xlsx_files/chart_size01.xlsx +0 -0
  1511. data/test/regression/xlsx_files/chart_size04.xlsx +0 -0
  1512. data/test/regression/xlsx_files/chart_sparse01.xlsx +0 -0
  1513. data/test/regression/xlsx_files/chart_stock01.xlsx +0 -0
  1514. data/test/regression/xlsx_files/chart_stock02.xlsx +0 -0
  1515. data/test/regression/xlsx_files/chart_str01.xlsx +0 -0
  1516. data/test/regression/xlsx_files/chart_str02.xlsx +0 -0
  1517. data/test/regression/xlsx_files/chart_table01.xlsx +0 -0
  1518. data/test/regression/xlsx_files/chart_table02.xlsx +0 -0
  1519. data/test/regression/xlsx_files/chart_table03.xlsx +0 -0
  1520. data/test/regression/xlsx_files/chart_title01.xlsx +0 -0
  1521. data/test/regression/xlsx_files/chart_title02.xlsx +0 -0
  1522. data/test/regression/xlsx_files/chartsheet01.xlsx +0 -0
  1523. data/test/regression/xlsx_files/chartsheet02.xlsx +0 -0
  1524. data/test/regression/xlsx_files/chartsheet03.xlsx +0 -0
  1525. data/test/regression/xlsx_files/chartsheet04.xlsx +0 -0
  1526. data/test/regression/xlsx_files/chartsheet05.xlsx +0 -0
  1527. data/test/regression/xlsx_files/chartsheet06.xlsx +0 -0
  1528. data/test/regression/xlsx_files/chartsheet07.xlsx +0 -0
  1529. data/test/regression/xlsx_files/chartsheet08.xlsx +0 -0
  1530. data/test/regression/xlsx_files/chartsheet09.xlsx +0 -0
  1531. data/test/regression/xlsx_files/comment01.xlsx +0 -0
  1532. data/test/regression/xlsx_files/comment02.xlsx +0 -0
  1533. data/test/regression/xlsx_files/comment03.xlsx +0 -0
  1534. data/test/regression/xlsx_files/comment04.xlsx +0 -0
  1535. data/test/regression/xlsx_files/comment05.xlsx +0 -0
  1536. data/test/regression/xlsx_files/comment06.xlsx +0 -0
  1537. data/test/regression/xlsx_files/comment07.xlsx +0 -0
  1538. data/test/regression/xlsx_files/comment08.xlsx +0 -0
  1539. data/test/regression/xlsx_files/comment09.xlsx +0 -0
  1540. data/test/regression/xlsx_files/comment10.xlsx +0 -0
  1541. data/test/regression/xlsx_files/comment11.xlsx +0 -0
  1542. data/test/regression/xlsx_files/comment12.xlsx +0 -0
  1543. data/test/regression/xlsx_files/comment13.xlsx +0 -0
  1544. data/test/regression/xlsx_files/comment14.xlsx +0 -0
  1545. data/test/regression/xlsx_files/comment15.xlsx +0 -0
  1546. data/test/regression/xlsx_files/comment16.xlsx +0 -0
  1547. data/test/regression/xlsx_files/cond_format01.xlsx +0 -0
  1548. data/test/regression/xlsx_files/cond_format02.xlsx +0 -0
  1549. data/test/regression/xlsx_files/cond_format03.xlsx +0 -0
  1550. data/test/regression/xlsx_files/cond_format04.xlsx +0 -0
  1551. data/test/regression/xlsx_files/cond_format05.xlsx +0 -0
  1552. data/test/regression/xlsx_files/cond_format06.xlsx +0 -0
  1553. data/test/regression/xlsx_files/cond_format07.xlsx +0 -0
  1554. data/test/regression/xlsx_files/cond_format08.xlsx +0 -0
  1555. data/test/regression/xlsx_files/cond_format10.xlsx +0 -0
  1556. data/test/regression/xlsx_files/cond_format11.xlsx +0 -0
  1557. data/test/regression/xlsx_files/cond_format12.xlsx +0 -0
  1558. data/test/regression/xlsx_files/cond_format14.xlsx +0 -0
  1559. data/test/regression/xlsx_files/cond_format15.xlsx +0 -0
  1560. data/test/regression/xlsx_files/cond_format16.xlsx +0 -0
  1561. data/test/regression/xlsx_files/cond_format17.xlsx +0 -0
  1562. data/test/regression/xlsx_files/cond_format18.xlsx +0 -0
  1563. data/test/regression/xlsx_files/cond_format19.xlsx +0 -0
  1564. data/test/regression/xlsx_files/cond_format20.xlsx +0 -0
  1565. data/test/regression/xlsx_files/custom_colors01.xlsx +0 -0
  1566. data/test/regression/xlsx_files/data_validation01.xlsx +0 -0
  1567. data/test/regression/xlsx_files/data_validation02.xlsx +0 -0
  1568. data/test/regression/xlsx_files/data_validation03.xlsx +0 -0
  1569. data/test/regression/xlsx_files/data_validation08.xlsx +0 -0
  1570. data/test/regression/xlsx_files/date_1904_01.xlsx +0 -0
  1571. data/test/regression/xlsx_files/date_1904_02.xlsx +0 -0
  1572. data/test/regression/xlsx_files/date_examples01.xlsx +0 -0
  1573. data/test/regression/xlsx_files/default_format01.xlsx +0 -0
  1574. data/test/regression/xlsx_files/default_row01.xlsx +0 -0
  1575. data/test/regression/xlsx_files/default_row02.xlsx +0 -0
  1576. data/test/regression/xlsx_files/default_row03.xlsx +0 -0
  1577. data/test/regression/xlsx_files/default_row04.xlsx +0 -0
  1578. data/test/regression/xlsx_files/default_row05.xlsx +0 -0
  1579. data/test/regression/xlsx_files/defined_name01.xlsx +0 -0
  1580. data/test/regression/xlsx_files/defined_name02.xlsx +0 -0
  1581. data/test/regression/xlsx_files/defined_name03.xlsx +0 -0
  1582. data/test/regression/xlsx_files/defined_name04.xlsx +0 -0
  1583. data/test/regression/xlsx_files/dynamic_array01.xlsx +0 -0
  1584. data/test/regression/xlsx_files/escapes01.xlsx +0 -0
  1585. data/test/regression/xlsx_files/escapes02.xlsx +0 -0
  1586. data/test/regression/xlsx_files/escapes03.xlsx +0 -0
  1587. data/test/regression/xlsx_files/escapes04.xlsx +0 -0
  1588. data/test/regression/xlsx_files/escapes05.xlsx +0 -0
  1589. data/test/regression/xlsx_files/escapes06.xlsx +0 -0
  1590. data/test/regression/xlsx_files/escapes07.xlsx +0 -0
  1591. data/test/regression/xlsx_files/escapes08.xlsx +0 -0
  1592. data/test/regression/xlsx_files/excel2003_style01.xlsx +0 -0
  1593. data/test/regression/xlsx_files/excel2003_style02.xlsx +0 -0
  1594. data/test/regression/xlsx_files/excel2003_style03.xlsx +0 -0
  1595. data/test/regression/xlsx_files/excel2003_style04.xlsx +0 -0
  1596. data/test/regression/xlsx_files/excel2003_style05.xlsx +0 -0
  1597. data/test/regression/xlsx_files/excel2003_style06.xlsx +0 -0
  1598. data/test/regression/xlsx_files/excel2003_style07.xlsx +0 -0
  1599. data/test/regression/xlsx_files/excel2003_style08.xlsx +0 -0
  1600. data/test/regression/xlsx_files/filehandle01.xlsx +0 -0
  1601. data/test/regression/xlsx_files/firstsheet01.xlsx +0 -0
  1602. data/test/regression/xlsx_files/fit_to_pages01.xlsx +0 -0
  1603. data/test/regression/xlsx_files/fit_to_pages02.xlsx +0 -0
  1604. data/test/regression/xlsx_files/fit_to_pages03.xlsx +0 -0
  1605. data/test/regression/xlsx_files/fit_to_pages04.xlsx +0 -0
  1606. data/test/regression/xlsx_files/fit_to_pages05.xlsx +0 -0
  1607. data/test/regression/xlsx_files/format01.xlsx +0 -0
  1608. data/test/regression/xlsx_files/format02.xlsx +0 -0
  1609. data/test/regression/xlsx_files/format03.xlsx +0 -0
  1610. data/test/regression/xlsx_files/format04.xlsx +0 -0
  1611. data/test/regression/xlsx_files/format05.xlsx +0 -0
  1612. data/test/regression/xlsx_files/format11.xlsx +0 -0
  1613. data/test/regression/xlsx_files/format12.xlsx +0 -0
  1614. data/test/regression/xlsx_files/format13.xlsx +0 -0
  1615. data/test/regression/xlsx_files/format14.xlsx +0 -0
  1616. data/test/regression/xlsx_files/format15.xlsx +0 -0
  1617. data/test/regression/xlsx_files/format16.xlsx +0 -0
  1618. data/test/regression/xlsx_files/format17.xlsx +0 -0
  1619. data/test/regression/xlsx_files/formula_results01.xlsx +0 -0
  1620. data/test/regression/xlsx_files/gridlines01.xlsx +0 -0
  1621. data/test/regression/xlsx_files/header01.xlsx +0 -0
  1622. data/test/regression/xlsx_files/header02.xlsx +0 -0
  1623. data/test/regression/xlsx_files/header03.xlsx +0 -0
  1624. data/test/regression/xlsx_files/header04.xlsx +0 -0
  1625. data/test/regression/xlsx_files/header_image01.xlsx +0 -0
  1626. data/test/regression/xlsx_files/header_image02.xlsx +0 -0
  1627. data/test/regression/xlsx_files/header_image03.xlsx +0 -0
  1628. data/test/regression/xlsx_files/header_image04.xlsx +0 -0
  1629. data/test/regression/xlsx_files/header_image05.xlsx +0 -0
  1630. data/test/regression/xlsx_files/header_image06.xlsx +0 -0
  1631. data/test/regression/xlsx_files/header_image07.xlsx +0 -0
  1632. data/test/regression/xlsx_files/header_image08.xlsx +0 -0
  1633. data/test/regression/xlsx_files/header_image09.xlsx +0 -0
  1634. data/test/regression/xlsx_files/header_image10.xlsx +0 -0
  1635. data/test/regression/xlsx_files/header_image11.xlsx +0 -0
  1636. data/test/regression/xlsx_files/header_image12.xlsx +0 -0
  1637. data/test/regression/xlsx_files/header_image13.xlsx +0 -0
  1638. data/test/regression/xlsx_files/header_image14.xlsx +0 -0
  1639. data/test/regression/xlsx_files/header_image15.xlsx +0 -0
  1640. data/test/regression/xlsx_files/header_image16.xlsx +0 -0
  1641. data/test/regression/xlsx_files/header_image17.xlsx +0 -0
  1642. data/test/regression/xlsx_files/header_image18.xlsx +0 -0
  1643. data/test/regression/xlsx_files/header_image19.xlsx +0 -0
  1644. data/test/regression/xlsx_files/hide01.xlsx +0 -0
  1645. data/test/regression/xlsx_files/hyperlink01.xlsx +0 -0
  1646. data/test/regression/xlsx_files/hyperlink02.xlsx +0 -0
  1647. data/test/regression/xlsx_files/hyperlink03.xlsx +0 -0
  1648. data/test/regression/xlsx_files/hyperlink04.xlsx +0 -0
  1649. data/test/regression/xlsx_files/hyperlink05.xlsx +0 -0
  1650. data/test/regression/xlsx_files/hyperlink06.xlsx +0 -0
  1651. data/test/regression/xlsx_files/hyperlink07.xlsx +0 -0
  1652. data/test/regression/xlsx_files/hyperlink08.xlsx +0 -0
  1653. data/test/regression/xlsx_files/hyperlink09.xlsx +0 -0
  1654. data/test/regression/xlsx_files/hyperlink10.xlsx +0 -0
  1655. data/test/regression/xlsx_files/hyperlink11.xlsx +0 -0
  1656. data/test/regression/xlsx_files/hyperlink12.xlsx +0 -0
  1657. data/test/regression/xlsx_files/hyperlink13.xlsx +0 -0
  1658. data/test/regression/xlsx_files/hyperlink14.xlsx +0 -0
  1659. data/test/regression/xlsx_files/hyperlink15.xlsx +0 -0
  1660. data/test/regression/xlsx_files/hyperlink16.xlsx +0 -0
  1661. data/test/regression/xlsx_files/hyperlink17.xlsx +0 -0
  1662. data/test/regression/xlsx_files/hyperlink18.xlsx +0 -0
  1663. data/test/regression/xlsx_files/hyperlink20.xlsx +0 -0
  1664. data/test/regression/xlsx_files/hyperlink21.xlsx +0 -0
  1665. data/test/regression/xlsx_files/hyperlink22.xlsx +0 -0
  1666. data/test/regression/xlsx_files/hyperlink23.xlsx +0 -0
  1667. data/test/regression/xlsx_files/hyperlink24.xlsx +0 -0
  1668. data/test/regression/xlsx_files/hyperlink25.xlsx +0 -0
  1669. data/test/regression/xlsx_files/hyperlink26.xlsx +0 -0
  1670. data/test/regression/xlsx_files/hyperlink27.xlsx +0 -0
  1671. data/test/regression/xlsx_files/hyperlink28.xlsx +0 -0
  1672. data/test/regression/xlsx_files/hyperlink29.xlsx +0 -0
  1673. data/test/regression/xlsx_files/hyperlink30.xlsx +0 -0
  1674. data/test/regression/xlsx_files/hyperlink31.xlsx +0 -0
  1675. data/test/regression/xlsx_files/hyperlink32.xlsx +0 -0
  1676. data/test/regression/xlsx_files/hyperlink33.xlsx +0 -0
  1677. data/test/regression/xlsx_files/hyperlink34.xlsx +0 -0
  1678. data/test/regression/xlsx_files/hyperlink35.xlsx +0 -0
  1679. data/test/regression/xlsx_files/hyperlink36.xlsx +0 -0
  1680. data/test/regression/xlsx_files/hyperlink37.xlsx +0 -0
  1681. data/test/regression/xlsx_files/hyperlink38.xlsx +0 -0
  1682. data/test/regression/xlsx_files/hyperlink39.xlsx +0 -0
  1683. data/test/regression/xlsx_files/hyperlink40.xlsx +0 -0
  1684. data/test/regression/xlsx_files/hyperlink41.xlsx +0 -0
  1685. data/test/regression/xlsx_files/hyperlink42.xlsx +0 -0
  1686. data/test/regression/xlsx_files/hyperlink43.xlsx +0 -0
  1687. data/test/regression/xlsx_files/hyperlink44.xlsx +0 -0
  1688. data/test/regression/xlsx_files/hyperlink45.xlsx +0 -0
  1689. data/test/regression/xlsx_files/hyperlink46.xlsx +0 -0
  1690. data/test/regression/xlsx_files/hyperlink47.xlsx +0 -0
  1691. data/test/regression/xlsx_files/hyperlink48.xlsx +0 -0
  1692. data/test/regression/xlsx_files/hyperlink49.xlsx +0 -0
  1693. data/test/regression/xlsx_files/hyperlink50.xlsx +0 -0
  1694. data/test/regression/xlsx_files/hyperlink51.xlsx +0 -0
  1695. data/test/regression/xlsx_files/ignore_error01.xlsx +0 -0
  1696. data/test/regression/xlsx_files/ignore_error02.xlsx +0 -0
  1697. data/test/regression/xlsx_files/ignore_error03.xlsx +0 -0
  1698. data/test/regression/xlsx_files/ignore_error04.xlsx +0 -0
  1699. data/test/regression/xlsx_files/ignore_error05.xlsx +0 -0
  1700. data/test/regression/xlsx_files/ignore_error06.xlsx +0 -0
  1701. data/test/regression/xlsx_files/image01.xlsx +0 -0
  1702. data/test/regression/xlsx_files/image02.xlsx +0 -0
  1703. data/test/regression/xlsx_files/image03.xlsx +0 -0
  1704. data/test/regression/xlsx_files/image04.xlsx +0 -0
  1705. data/test/regression/xlsx_files/image05.xlsx +0 -0
  1706. data/test/regression/xlsx_files/image06.xlsx +0 -0
  1707. data/test/regression/xlsx_files/image07.xlsx +0 -0
  1708. data/test/regression/xlsx_files/image08.xlsx +0 -0
  1709. data/test/regression/xlsx_files/image09.xlsx +0 -0
  1710. data/test/regression/xlsx_files/image10.xlsx +0 -0
  1711. data/test/regression/xlsx_files/image11.xlsx +0 -0
  1712. data/test/regression/xlsx_files/image12.xlsx +0 -0
  1713. data/test/regression/xlsx_files/image13.xlsx +0 -0
  1714. data/test/regression/xlsx_files/image14.xlsx +0 -0
  1715. data/test/regression/xlsx_files/image15.xlsx +0 -0
  1716. data/test/regression/xlsx_files/image16.xlsx +0 -0
  1717. data/test/regression/xlsx_files/image17.xlsx +0 -0
  1718. data/test/regression/xlsx_files/image18.xlsx +0 -0
  1719. data/test/regression/xlsx_files/image19.xlsx +0 -0
  1720. data/test/regression/xlsx_files/image22.xlsx +0 -0
  1721. data/test/regression/xlsx_files/image23.xlsx +0 -0
  1722. data/test/regression/xlsx_files/image24.xlsx +0 -0
  1723. data/test/regression/xlsx_files/image25.xlsx +0 -0
  1724. data/test/regression/xlsx_files/image26.xlsx +0 -0
  1725. data/test/regression/xlsx_files/image27.xlsx +0 -0
  1726. data/test/regression/xlsx_files/image28.xlsx +0 -0
  1727. data/test/regression/xlsx_files/image29.xlsx +0 -0
  1728. data/test/regression/xlsx_files/image30.xlsx +0 -0
  1729. data/test/regression/xlsx_files/image31.xlsx +0 -0
  1730. data/test/regression/xlsx_files/image32.xlsx +0 -0
  1731. data/test/regression/xlsx_files/image33.xlsx +0 -0
  1732. data/test/regression/xlsx_files/image35.xlsx +0 -0
  1733. data/test/regression/xlsx_files/image36.xlsx +0 -0
  1734. data/test/regression/xlsx_files/image44.xlsx +0 -0
  1735. data/test/regression/xlsx_files/image45.xlsx +0 -0
  1736. data/test/regression/xlsx_files/image46.xlsx +0 -0
  1737. data/test/regression/xlsx_files/image47.xlsx +0 -0
  1738. data/test/regression/xlsx_files/image48.xlsx +0 -0
  1739. data/test/regression/xlsx_files/image49.xlsx +0 -0
  1740. data/test/regression/xlsx_files/image50.xlsx +0 -0
  1741. data/test/regression/xlsx_files/image51.xlsx +0 -0
  1742. data/test/regression/xlsx_files/image52.xlsx +0 -0
  1743. data/test/regression/xlsx_files/image53.xlsx +0 -0
  1744. data/test/regression/xlsx_files/image54.xlsx +0 -0
  1745. data/test/regression/xlsx_files/image55.xlsx +0 -0
  1746. data/test/regression/xlsx_files/image56.xlsx +0 -0
  1747. data/test/regression/xlsx_files/image57.xlsx +0 -0
  1748. data/test/regression/xlsx_files/landscape01.xlsx +0 -0
  1749. data/test/regression/xlsx_files/macro01.xlsm +0 -0
  1750. data/test/regression/xlsx_files/merge_cells01.xlsx +0 -0
  1751. data/test/regression/xlsx_files/merge_range01.xlsx +0 -0
  1752. data/test/regression/xlsx_files/merge_range02.xlsx +0 -0
  1753. data/test/regression/xlsx_files/merge_range03.xlsx +0 -0
  1754. data/test/regression/xlsx_files/merge_range04.xlsx +0 -0
  1755. data/test/regression/xlsx_files/merge_range05.xlsx +0 -0
  1756. data/test/regression/xlsx_files/object_position01.xlsx +0 -0
  1757. data/test/regression/xlsx_files/object_position02.xlsx +0 -0
  1758. data/test/regression/xlsx_files/object_position03.xlsx +0 -0
  1759. data/test/regression/xlsx_files/object_position04.xlsx +0 -0
  1760. data/test/regression/xlsx_files/object_position06.xlsx +0 -0
  1761. data/test/regression/xlsx_files/object_position07.xlsx +0 -0
  1762. data/test/regression/xlsx_files/object_position08.xlsx +0 -0
  1763. data/test/regression/xlsx_files/object_position09.xlsx +0 -0
  1764. data/test/regression/xlsx_files/object_position10.xlsx +0 -0
  1765. data/test/regression/xlsx_files/object_position12.xlsx +0 -0
  1766. data/test/regression/xlsx_files/object_position13.xlsx +0 -0
  1767. data/test/regression/xlsx_files/object_position14.xlsx +0 -0
  1768. data/test/regression/xlsx_files/object_position15.xlsx +0 -0
  1769. data/test/regression/xlsx_files/object_position16.xlsx +0 -0
  1770. data/test/regression/xlsx_files/object_position17.xlsx +0 -0
  1771. data/test/regression/xlsx_files/object_position18.xlsx +0 -0
  1772. data/test/regression/xlsx_files/object_position19.xlsx +0 -0
  1773. data/test/regression/xlsx_files/object_position20.xlsx +0 -0
  1774. data/test/regression/xlsx_files/outline01.xlsx +0 -0
  1775. data/test/regression/xlsx_files/outline02.xlsx +0 -0
  1776. data/test/regression/xlsx_files/outline03.xlsx +0 -0
  1777. data/test/regression/xlsx_files/outline04.xlsx +0 -0
  1778. data/test/regression/xlsx_files/outline05.xlsx +0 -0
  1779. data/test/regression/xlsx_files/outline06.xlsx +0 -0
  1780. data/test/regression/xlsx_files/page_breaks01.xlsx +0 -0
  1781. data/test/regression/xlsx_files/page_breaks02.xlsx +0 -0
  1782. data/test/regression/xlsx_files/page_breaks03.xlsx +0 -0
  1783. data/test/regression/xlsx_files/page_breaks04.xlsx +0 -0
  1784. data/test/regression/xlsx_files/page_breaks05.xlsx +0 -0
  1785. data/test/regression/xlsx_files/page_breaks06.xlsx +0 -0
  1786. data/test/regression/xlsx_files/page_view01.xlsx +0 -0
  1787. data/test/regression/xlsx_files/panes01.xlsx +0 -0
  1788. data/test/regression/xlsx_files/print_across01.xlsx +0 -0
  1789. data/test/regression/xlsx_files/print_area01.xlsx +0 -0
  1790. data/test/regression/xlsx_files/print_area02.xlsx +0 -0
  1791. data/test/regression/xlsx_files/print_area03.xlsx +0 -0
  1792. data/test/regression/xlsx_files/print_area04.xlsx +0 -0
  1793. data/test/regression/xlsx_files/print_area05.xlsx +0 -0
  1794. data/test/regression/xlsx_files/print_area06.xlsx +0 -0
  1795. data/test/regression/xlsx_files/print_area07.xlsx +0 -0
  1796. data/test/regression/xlsx_files/print_options01.xlsx +0 -0
  1797. data/test/regression/xlsx_files/print_options02.xlsx +0 -0
  1798. data/test/regression/xlsx_files/print_options03.xlsx +0 -0
  1799. data/test/regression/xlsx_files/print_options04.xlsx +0 -0
  1800. data/test/regression/xlsx_files/print_options05.xlsx +0 -0
  1801. data/test/regression/xlsx_files/print_options06.xlsx +0 -0
  1802. data/test/regression/xlsx_files/print_options07.xlsx +0 -0
  1803. data/test/regression/xlsx_files/print_scale01.xlsx +0 -0
  1804. data/test/regression/xlsx_files/print_scale02.xlsx +0 -0
  1805. data/test/regression/xlsx_files/properties01.xlsx +0 -0
  1806. data/test/regression/xlsx_files/properties02.xlsx +0 -0
  1807. data/test/regression/xlsx_files/properties03.xlsx +0 -0
  1808. data/test/regression/xlsx_files/properties04.xlsx +0 -0
  1809. data/test/regression/xlsx_files/properties05.xlsx +0 -0
  1810. data/test/regression/xlsx_files/protect01.xlsx +0 -0
  1811. data/test/regression/xlsx_files/protect02.xlsx +0 -0
  1812. data/test/regression/xlsx_files/protect03.xlsx +0 -0
  1813. data/test/regression/xlsx_files/protect04.xlsx +0 -0
  1814. data/test/regression/xlsx_files/protect05.xlsx +0 -0
  1815. data/test/regression/xlsx_files/protect06.xlsx +0 -0
  1816. data/test/regression/xlsx_files/protect07.xlsx +0 -0
  1817. data/test/regression/xlsx_files/quote_name01.xlsx +0 -0
  1818. data/test/regression/xlsx_files/quote_name02.xlsx +0 -0
  1819. data/test/regression/xlsx_files/quote_name03.xlsx +0 -0
  1820. data/test/regression/xlsx_files/quote_name04.xlsx +0 -0
  1821. data/test/regression/xlsx_files/repeat01.xlsx +0 -0
  1822. data/test/regression/xlsx_files/repeat02.xlsx +0 -0
  1823. data/test/regression/xlsx_files/repeat03.xlsx +0 -0
  1824. data/test/regression/xlsx_files/repeat04.xlsx +0 -0
  1825. data/test/regression/xlsx_files/repeat05.xlsx +0 -0
  1826. data/test/regression/xlsx_files/rich_string01.xlsx +0 -0
  1827. data/test/regression/xlsx_files/rich_string02.xlsx +0 -0
  1828. data/test/regression/xlsx_files/rich_string03.xlsx +0 -0
  1829. data/test/regression/xlsx_files/rich_string04.xlsx +0 -0
  1830. data/test/regression/xlsx_files/rich_string05.xlsx +0 -0
  1831. data/test/regression/xlsx_files/rich_string06.xlsx +0 -0
  1832. data/test/regression/xlsx_files/rich_string07.xlsx +0 -0
  1833. data/test/regression/xlsx_files/rich_string08.xlsx +0 -0
  1834. data/test/regression/xlsx_files/rich_string09.xlsx +0 -0
  1835. data/test/regression/xlsx_files/rich_string10.xlsx +0 -0
  1836. data/test/regression/xlsx_files/rich_string11.xlsx +0 -0
  1837. data/test/regression/xlsx_files/rich_string12.xlsx +0 -0
  1838. data/test/regression/xlsx_files/row_col_format01.xlsx +0 -0
  1839. data/test/regression/xlsx_files/row_col_format02.xlsx +0 -0
  1840. data/test/regression/xlsx_files/row_col_format03.xlsx +0 -0
  1841. data/test/regression/xlsx_files/row_col_format04.xlsx +0 -0
  1842. data/test/regression/xlsx_files/row_col_format05.xlsx +0 -0
  1843. data/test/regression/xlsx_files/row_col_format06.xlsx +0 -0
  1844. data/test/regression/xlsx_files/row_col_format07.xlsx +0 -0
  1845. data/test/regression/xlsx_files/row_col_format08.xlsx +0 -0
  1846. data/test/regression/xlsx_files/row_col_format09.xlsx +0 -0
  1847. data/test/regression/xlsx_files/row_col_format10.xlsx +0 -0
  1848. data/test/regression/xlsx_files/row_col_format11.xlsx +0 -0
  1849. data/test/regression/xlsx_files/row_col_format12.xlsx +0 -0
  1850. data/test/regression/xlsx_files/row_col_format13.xlsx +0 -0
  1851. data/test/regression/xlsx_files/row_col_format14.xlsx +0 -0
  1852. data/test/regression/xlsx_files/selection01.xlsx +0 -0
  1853. data/test/regression/xlsx_files/selection02.xlsx +0 -0
  1854. data/test/regression/xlsx_files/set_column01.xlsx +0 -0
  1855. data/test/regression/xlsx_files/set_column03.xlsx +0 -0
  1856. data/test/regression/xlsx_files/set_column04.xlsx +0 -0
  1857. data/test/regression/xlsx_files/set_column05.xlsx +0 -0
  1858. data/test/regression/xlsx_files/set_column06.xlsx +0 -0
  1859. data/test/regression/xlsx_files/set_column07.xlsx +0 -0
  1860. data/test/regression/xlsx_files/set_column08.xlsx +0 -0
  1861. data/test/regression/xlsx_files/set_column09.xlsx +0 -0
  1862. data/test/regression/xlsx_files/set_print_scale01.xlsx +0 -0
  1863. data/test/regression/xlsx_files/set_row01.xlsx +0 -0
  1864. data/test/regression/xlsx_files/set_row03.xlsx +0 -0
  1865. data/test/regression/xlsx_files/set_start_page01.xlsx +0 -0
  1866. data/test/regression/xlsx_files/set_start_page02.xlsx +0 -0
  1867. data/test/regression/xlsx_files/set_start_page03.xlsx +0 -0
  1868. data/test/regression/xlsx_files/shape01.xlsx +0 -0
  1869. data/test/regression/xlsx_files/shape02.xlsx +0 -0
  1870. data/test/regression/xlsx_files/shape03.xlsx +0 -0
  1871. data/test/regression/xlsx_files/shape04.xlsx +0 -0
  1872. data/test/regression/xlsx_files/shape_connect01.xlsx +0 -0
  1873. data/test/regression/xlsx_files/shape_connect02.xlsx +0 -0
  1874. data/test/regression/xlsx_files/shape_connect03.xlsx +0 -0
  1875. data/test/regression/xlsx_files/shape_connect04.xlsx +0 -0
  1876. data/test/regression/xlsx_files/shape_scale01.xlsx +0 -0
  1877. data/test/regression/xlsx_files/shape_stencil01.xlsx +0 -0
  1878. data/test/regression/xlsx_files/shared_strings01.xlsx +0 -0
  1879. data/test/regression/xlsx_files/shared_strings02.xlsx +0 -0
  1880. data/test/regression/xlsx_files/shared_strings_encoding.xlsx +0 -0
  1881. data/test/regression/xlsx_files/simple01.xlsx +0 -0
  1882. data/test/regression/xlsx_files/simple02.xlsx +0 -0
  1883. data/test/regression/xlsx_files/simple03.xlsx +0 -0
  1884. data/test/regression/xlsx_files/simple04.xlsx +0 -0
  1885. data/test/regression/xlsx_files/simple05.xlsx +0 -0
  1886. data/test/regression/xlsx_files/tab_color01.xlsx +0 -0
  1887. data/test/regression/xlsx_files/table01.xlsx +0 -0
  1888. data/test/regression/xlsx_files/table02.xlsx +0 -0
  1889. data/test/regression/xlsx_files/table03.xlsx +0 -0
  1890. data/test/regression/xlsx_files/table04.xlsx +0 -0
  1891. data/test/regression/xlsx_files/table05.xlsx +0 -0
  1892. data/test/regression/xlsx_files/table06.xlsx +0 -0
  1893. data/test/regression/xlsx_files/table07.xlsx +0 -0
  1894. data/test/regression/xlsx_files/table08.xlsx +0 -0
  1895. data/test/regression/xlsx_files/table09.xlsx +0 -0
  1896. data/test/regression/xlsx_files/table10.xlsx +0 -0
  1897. data/test/regression/xlsx_files/table11.xlsx +0 -0
  1898. data/test/regression/xlsx_files/table12.xlsx +0 -0
  1899. data/test/regression/xlsx_files/table13.xlsx +0 -0
  1900. data/test/regression/xlsx_files/table14.xlsx +0 -0
  1901. data/test/regression/xlsx_files/table15.xlsx +0 -0
  1902. data/test/regression/xlsx_files/table17.xlsx +0 -0
  1903. data/test/regression/xlsx_files/table18.xlsx +0 -0
  1904. data/test/regression/xlsx_files/table19.xlsx +0 -0
  1905. data/test/regression/xlsx_files/table21.xlsx +0 -0
  1906. data/test/regression/xlsx_files/table22.xlsx +0 -0
  1907. data/test/regression/xlsx_files/table23.xlsx +0 -0
  1908. data/test/regression/xlsx_files/table24.xlsx +0 -0
  1909. data/test/regression/xlsx_files/table25.xlsx +0 -0
  1910. data/test/regression/xlsx_files/table26.xlsx +0 -0
  1911. data/test/regression/xlsx_files/tutorial01.xlsx +0 -0
  1912. data/test/regression/xlsx_files/tutorial02.xlsx +0 -0
  1913. data/test/regression/xlsx_files/tutorial03.xlsx +0 -0
  1914. data/test/regression/xlsx_files/types02.xlsx +0 -0
  1915. data/test/regression/xlsx_files/types08.xlsx +0 -0
  1916. data/test/regression/xlsx_files/update_range_format_with_params.xlsx +0 -0
  1917. data/test/regression/xlsx_files/urls_as_strings.xlsx +0 -0
  1918. data/test/regression/xlsx_files/utf8_01.xlsx +0 -0
  1919. data/test/regression/xlsx_files/utf8_03.xlsx +0 -0
  1920. data/test/regression/xlsx_files/utf8_04.xlsx +0 -0
  1921. data/test/regression/xlsx_files/utf8_05.xlsx +0 -0
  1922. data/test/regression/xlsx_files/utf8_06.xlsx +0 -0
  1923. data/test/regression/xlsx_files/utf8_07.xlsx +0 -0
  1924. data/test/regression/xlsx_files/utf8_08.xlsx +0 -0
  1925. data/test/regression/xlsx_files/utf8_09.xlsx +0 -0
  1926. data/test/regression/xlsx_files/utf8_10.xlsx +0 -0
  1927. data/test/regression/xlsx_files/utf8_11.xlsx +0 -0
  1928. data/test/regression/xlsx_files/vbaProject01.bin +0 -0
  1929. data/test/regression/xlsx_files/vbaProject02.bin +0 -0
  1930. data/test/regression/xlsx_files/vml01.xlsx +0 -0
  1931. data/test/regression/xlsx_files/vml02.xlsx +0 -0
  1932. data/test/regression/xlsx_files/vml03.xlsx +0 -0
  1933. data/test/regression/xlsx_files/vml04.xlsx +0 -0
  1934. data/test/republic.png +0 -0
  1935. data/test/run_test.rb +0 -9
  1936. data/test/test_delete_files.rb +0 -37
  1937. data/test/test_example_match.rb +0 -6348
  1938. data/test/test_option_hash_for_workbook.rb +0 -72
  1939. data/test/test_xml_writer_simple.rb +0 -64
  1940. data/test/utility/test_range.rb +0 -20
  1941. data/test/vbaProject.bin +0 -0
  1942. data/test/workbook/test_check_sheetname.rb +0 -51
  1943. data/test/workbook/test_define_name.rb +0 -16
  1944. data/test/workbook/test_get_chart_range.rb +0 -57
  1945. data/test/workbook/test_sort_defined_names.rb +0 -77
  1946. data/test/workbook/test_workbook_01.rb +0 -29
  1947. data/test/workbook/test_workbook_02.rb +0 -31
  1948. data/test/workbook/test_workbook_03.rb +0 -31
  1949. data/test/workbook/test_worksheet_by_name.rb +0 -35
  1950. data/test/workbook/test_write_calc_pr.rb +0 -41
  1951. data/test/workbook/test_write_defined_name.rb +0 -17
  1952. data/test/workbook/test_write_defined_names.rb +0 -41
  1953. data/test/workbook/test_write_workbook_view.rb +0 -117
  1954. data/test/worksheet/test_calculate_spans.rb +0 -58
  1955. data/test/worksheet/test_cond_format_01.rb +0 -82
  1956. data/test/worksheet/test_cond_format_02.rb +0 -87
  1957. data/test/worksheet/test_cond_format_03.rb +0 -97
  1958. data/test/worksheet/test_cond_format_04.rb +0 -85
  1959. data/test/worksheet/test_cond_format_05.rb +0 -96
  1960. data/test/worksheet/test_cond_format_06.rb +0 -106
  1961. data/test/worksheet/test_cond_format_07.rb +0 -116
  1962. data/test/worksheet/test_cond_format_08.rb +0 -115
  1963. data/test/worksheet/test_cond_format_09.rb +0 -108
  1964. data/test/worksheet/test_cond_format_10.rb +0 -83
  1965. data/test/worksheet/test_cond_format_11.rb +0 -85
  1966. data/test/worksheet/test_cond_format_12.rb +0 -133
  1967. data/test/worksheet/test_cond_format_13.rb +0 -135
  1968. data/test/worksheet/test_cond_format_14.rb +0 -132
  1969. data/test/worksheet/test_cond_format_15.rb +0 -93
  1970. data/test/worksheet/test_cond_format_16.rb +0 -138
  1971. data/test/worksheet/test_cond_format_17.rb +0 -141
  1972. data/test/worksheet/test_cond_format_18.rb +0 -135
  1973. data/test/worksheet/test_cond_format_19.rb +0 -139
  1974. data/test/worksheet/test_cond_format_20.rb +0 -119
  1975. data/test/worksheet/test_cond_format_21.rb +0 -90
  1976. data/test/worksheet/test_cond_format_22.rb +0 -266
  1977. data/test/worksheet/test_cond_format_23.rb +0 -242
  1978. data/test/worksheet/test_cond_format_24.rb +0 -303
  1979. data/test/worksheet/test_convert_date_time_01.rb +0 -439
  1980. data/test/worksheet/test_convert_date_time_02.rb +0 -472
  1981. data/test/worksheet/test_convert_date_time_03.rb +0 -435
  1982. data/test/worksheet/test_convert_date_time_04.rb +0 -19
  1983. data/test/worksheet/test_data_bar_01.rb +0 -53
  1984. data/test/worksheet/test_data_bar_02.rb +0 -79
  1985. data/test/worksheet/test_data_bar_03.rb +0 -147
  1986. data/test/worksheet/test_data_bar_04.rb +0 -145
  1987. data/test/worksheet/test_data_bar_05.rb +0 -147
  1988. data/test/worksheet/test_data_bar_06.rb +0 -145
  1989. data/test/worksheet/test_data_bar_07.rb +0 -146
  1990. data/test/worksheet/test_data_bar_08.rb +0 -54
  1991. data/test/worksheet/test_data_bar_09.rb +0 -80
  1992. data/test/worksheet/test_data_bar_10.rb +0 -165
  1993. data/test/worksheet/test_data_bar_11.rb +0 -167
  1994. data/test/worksheet/test_data_bar_12.rb +0 -104
  1995. data/test/worksheet/test_extract_filter_tokens.rb +0 -109
  1996. data/test/worksheet/test_parse_filter_expression.rb +0 -143
  1997. data/test/worksheet/test_pixels_to_row_col.rb +0 -46
  1998. data/test/worksheet/test_position_object.rb +0 -50
  1999. data/test/worksheet/test_repeat_formula.rb +0 -55
  2000. data/test/worksheet/test_sparkline_01.rb +0 -65
  2001. data/test/worksheet/test_sparkline_02.rb +0 -92
  2002. data/test/worksheet/test_sparkline_03.rb +0 -133
  2003. data/test/worksheet/test_sparkline_04.rb +0 -93
  2004. data/test/worksheet/test_sparkline_05.rb +0 -93
  2005. data/test/worksheet/test_sparkline_06.rb +0 -114
  2006. data/test/worksheet/test_sparkline_07.rb +0 -357
  2007. data/test/worksheet/test_sparkline_08.rb +0 -177
  2008. data/test/worksheet/test_sparkline_09.rb +0 -1250
  2009. data/test/worksheet/test_sparkline_10.rb +0 -107
  2010. data/test/worksheet/test_sparkline_11.rb +0 -218
  2011. data/test/worksheet/test_sparkline_12.rb +0 -94
  2012. data/test/worksheet/test_update_format_methods.rb +0 -91
  2013. data/test/worksheet/test_worksheet_01.rb +0 -32
  2014. data/test/worksheet/test_worksheet_02.rb +0 -38
  2015. data/test/worksheet/test_worksheet_03.rb +0 -44
  2016. data/test/worksheet/test_worksheet_04.rb +0 -45
  2017. data/test/worksheet/test_write_array_formula_01.rb +0 -98
  2018. data/test/worksheet/test_write_autofilter.rb +0 -260
  2019. data/test/worksheet/test_write_brk.rb +0 -18
  2020. data/test/worksheet/test_write_cell.rb +0 -54
  2021. data/test/worksheet/test_write_cell_value.rb +0 -33
  2022. data/test/worksheet/test_write_col_breaks.rb +0 -27
  2023. data/test/worksheet/test_write_col_info.rb +0 -95
  2024. data/test/worksheet/test_write_conditional_formatting.rb +0 -72
  2025. data/test/worksheet/test_write_custom_filter.rb +0 -18
  2026. data/test/worksheet/test_write_custom_filters.rb +0 -25
  2027. data/test/worksheet/test_write_data_validation_01.rb +0 -113
  2028. data/test/worksheet/test_write_data_validation_02.rb +0 -585
  2029. data/test/worksheet/test_write_dimension.rb +0 -94
  2030. data/test/worksheet/test_write_filter.rb +0 -18
  2031. data/test/worksheet/test_write_filter_column.rb +0 -18
  2032. data/test/worksheet/test_write_filters.rb +0 -32
  2033. data/test/worksheet/test_write_formula_does_not_change_formula_string.rb +0 -18
  2034. data/test/worksheet/test_write_header_footer.rb +0 -58
  2035. data/test/worksheet/test_write_hyperlink.rb +0 -32
  2036. data/test/worksheet/test_write_legacy_drawing.rb +0 -19
  2037. data/test/worksheet/test_write_merge_cell.rb +0 -18
  2038. data/test/worksheet/test_write_merge_cells.rb +0 -192
  2039. data/test/worksheet/test_write_methods.rb +0 -248
  2040. data/test/worksheet/test_write_page_margins.rb +0 -98
  2041. data/test/worksheet/test_write_page_set_up_pr.rb +0 -19
  2042. data/test/worksheet/test_write_page_setup.rb +0 -54
  2043. data/test/worksheet/test_write_pane.rb +0 -123
  2044. data/test/worksheet/test_write_phonetic_pr.rb +0 -19
  2045. data/test/worksheet/test_write_print_options.rb +0 -77
  2046. data/test/worksheet/test_write_row_breaks.rb +0 -27
  2047. data/test/worksheet/test_write_row_element.rb +0 -69
  2048. data/test/worksheet/test_write_selection.rb +0 -18
  2049. data/test/worksheet/test_write_sheet_calc_pr.rb +0 -18
  2050. data/test/worksheet/test_write_sheet_data.rb +0 -18
  2051. data/test/worksheet/test_write_sheet_format_pr.rb +0 -18
  2052. data/test/worksheet/test_write_sheet_pr.rb +0 -36
  2053. data/test/worksheet/test_write_sheet_protection.rb +0 -174
  2054. data/test/worksheet/test_write_sheet_view.rb +0 -71
  2055. data/test/worksheet/test_write_sheet_view1.rb +0 -64
  2056. data/test/worksheet/test_write_sheet_view2.rb +0 -56
  2057. data/test/worksheet/test_write_sheet_view3.rb +0 -83
  2058. data/test/worksheet/test_write_sheet_view4.rb +0 -83
  2059. data/test/worksheet/test_write_sheet_view5.rb +0 -74
  2060. data/test/worksheet/test_write_sheet_view6.rb +0 -51
  2061. data/test/worksheet/test_write_sheet_view7.rb +0 -71
  2062. data/test/worksheet/test_write_sheet_view8.rb +0 -51
  2063. data/test/worksheet/test_write_sheet_view9.rb +0 -51
  2064. data/test/worksheet/test_write_tab_color.rb +0 -23
  2065. data/test/worksheet/test_write_worksheet_attributes.rb +0 -21
@@ -1,4 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
+ # frozen_string_literal: true
3
+
2
4
  require 'write_xlsx/package/xml_writer_simple'
3
5
  require 'write_xlsx/gradient'
4
6
  require 'write_xlsx/chart/legend'
@@ -14,7 +16,10 @@ module Writexlsx
14
16
  attr_reader :horizontal, :vertical, :outline, :show_keys, :font
15
17
 
16
18
  def initialize(params = {})
17
- @horizontal, @vertical, @outline, @show_keys = true, true, true, false
19
+ @horizontal = true
20
+ @vertical = true
21
+ @outline = true
22
+ @show_keys = false
18
23
  @horizontal = params[:horizontal] if params.has_key?(:horizontal)
19
24
  @vertical = params[:vertical] if params.has_key?(:vertical)
20
25
  @outline = params[:outline] if params.has_key?(:outline)
@@ -22,9 +27,7 @@ module Writexlsx
22
27
  @font = convert_font_args(params[:font])
23
28
  end
24
29
 
25
- def palette=(palette)
26
- @palette = palette
27
- end
30
+ attr_writer :palette
28
31
 
29
32
  def write_d_table(writer)
30
33
  @writer = writer
@@ -41,7 +44,7 @@ module Writexlsx
41
44
  private
42
45
 
43
46
  def attributes
44
- [ ['val', 1] ]
47
+ [['val', 1]]
45
48
  end
46
49
  end
47
50
 
@@ -58,7 +61,7 @@ module Writexlsx
58
61
  border = params_to_border(params)
59
62
 
60
63
  # Set the line properties for the chartarea.
61
- @line = border ? line_properties(border) : line_properties(params[:line])
64
+ @line = line_properties(border || params[:line])
62
65
 
63
66
  # Set the pattern properties for the series.
64
67
  @pattern = pattern_properties(params[:pattern])
@@ -67,13 +70,11 @@ module Writexlsx
67
70
  @gradient = gradient_properties(params[:gradient])
68
71
 
69
72
  # Map deprecated Spreadsheet::WriteExcel fill colour.
70
- fill = params[:color] ? { :color => params[:color] } : params[:fill]
73
+ fill = params[:color] ? { color: params[:color] } : params[:fill]
71
74
  @fill = fill_properties(fill)
72
75
 
73
76
  # Pattern fill overrides solid fill.
74
- if ptrue?(@pattern)
75
- @fill = nil
76
- end
77
+ @fill = nil if ptrue?(@pattern)
77
78
 
78
79
  # Gradient fill overrides solid and pattern fills.
79
80
  if ptrue?(@gradient)
@@ -88,14 +89,14 @@ module Writexlsx
88
89
  line_weight = params[:line_weight]
89
90
 
90
91
  # Map deprecated Spreadsheet::WriteExcel line_weight.
91
- border = params[:border]
92
- border = { :width => swe_line_weight(line_weight) } if line_weight
92
+ border = params[:border]
93
+ border = { width: swe_line_weight(line_weight) } if line_weight
93
94
 
94
95
  # Map deprecated Spreadsheet::WriteExcel line_pattern.
95
96
  if params[:line_pattern]
96
97
  pattern = swe_line_pattern(params[:line_pattern])
97
98
  if pattern == 'none'
98
- border = { :none => 1 }
99
+ border = { none: 1 }
99
100
  else
100
101
  border[:dash_type] = pattern
101
102
  end
@@ -266,17 +267,11 @@ module Writexlsx
266
267
  #
267
268
  def add_series(params)
268
269
  # Check that the required input has been specified.
269
- unless params.has_key?(:values)
270
- raise "Must specify ':values' in add_series"
271
- end
270
+ raise "Must specify ':values' in add_series" unless params.has_key?(:values)
272
271
 
273
- if @requires_category != 0 && !params.has_key?(:categories)
274
- raise "Must specify ':categories' in add_series for this chart type"
275
- end
272
+ raise "Must specify ':categories' in add_series for this chart type" if @requires_category != 0 && !params.has_key?(:categories)
276
273
 
277
- if @series.size == 255
278
- raise "The maximum number of series that can be added to an Excel Chart is 255."
279
- end
274
+ raise "The maximum number of series that can be added to an Excel Chart is 255." if @series.size == 255
280
275
 
281
276
  @series << Series.new(self, params)
282
277
 
@@ -285,9 +280,7 @@ module Writexlsx
285
280
  y2_axis = params[:y2_axis]
286
281
 
287
282
  # Store secondary status for combined charts.
288
- if ptrue?(x2_axis) || ptrue?(y2_axis)
289
- @is_secondary = true
290
- end
283
+ @is_secondary = true if ptrue?(x2_axis) || ptrue?(y2_axis)
291
284
 
292
285
  # Set the gap and overlap for Bar/Column charts.
293
286
  if params[:gap]
@@ -378,7 +371,7 @@ module Writexlsx
378
371
  # Set on of the 42 built-in Excel chart styles. The default style is 2.
379
372
  #
380
373
  def set_style(style_id = 2)
381
- style_id = 2 if style_id < 0 || style_id > 48
374
+ style_id = 2 if style_id < 1 || style_id > 48
382
375
  @style_id = style_id
383
376
  end
384
377
 
@@ -388,9 +381,7 @@ module Writexlsx
388
381
  def show_blanks_as(option)
389
382
  return unless option
390
383
 
391
- unless [:gap, :zero, :span].include?(option.to_sym)
392
- raise "Unknown show_blanks_as() option '#{option}'\n"
393
- end
384
+ raise "Unknown show_blanks_as() option '#{option}'\n" unless %i[gap zero span].include?(option.to_sym)
394
385
 
395
386
  @show_blanks = option
396
387
  end
@@ -415,7 +406,7 @@ module Writexlsx
415
406
  end
416
407
 
417
408
  # Backward compatibility with poorly chosen method name.
418
- alias :size :set_size
409
+ alias size set_size
419
410
 
420
411
  #
421
412
  # The set_table method adds a data table below the horizontal axis with the
@@ -431,7 +422,7 @@ module Writexlsx
431
422
  #
432
423
  def set_up_down_bars(params = {})
433
424
  # Map border to line.
434
- [:up, :down].each do |up_down|
425
+ %i[up down].each do |up_down|
435
426
  if params[up_down]
436
427
  params[up_down][:line] = params[up_down][:border] if params[up_down][:border]
437
428
  else
@@ -441,8 +432,8 @@ module Writexlsx
441
432
 
442
433
  # Set the up and down bar properties.
443
434
  @up_down_bars = {
444
- :_up => Chartline.new(params[:up]),
445
- :_down => Chartline.new(params[:down])
435
+ _up: Chartline.new(params[:up]),
436
+ _down: Chartline.new(params[:down])
446
437
  }
447
438
  end
448
439
 
@@ -478,20 +469,18 @@ module Writexlsx
478
469
  # Write the <c:barChart> element.
479
470
  #
480
471
  def write_bar_chart(params) # :nodoc:
481
- if ptrue?(params[:primary_axes])
482
- series = get_primary_axes_series
483
- else
484
- series = get_secondary_axes_series
485
- end
472
+ series = if ptrue?(params[:primary_axes])
473
+ get_primary_axes_series
474
+ else
475
+ get_secondary_axes_series
476
+ end
486
477
  return if series.empty?
487
478
 
488
479
  subtype = @subtype
489
480
  subtype = 'percentStacked' if subtype == 'percent_stacked'
490
481
 
491
482
  # Set a default overlap for stacked charts.
492
- if @subtype =~ /stacked/
493
- @series_overlap_1 = 100 unless @series_overlap_1
494
- end
483
+ @series_overlap_1 = 100 if @subtype =~ (/stacked/) && !@series_overlap_1
495
484
 
496
485
  @writer.tag_elements('c:barChart') do
497
486
  # Write the c:barDir element.
@@ -499,7 +488,7 @@ module Writexlsx
499
488
  # Write the c:grouping element.
500
489
  write_grouping(subtype)
501
490
  # Write the c:ser elements.
502
- series.each {|s| write_ser(s)}
491
+ series.each { |s| write_ser(s) }
503
492
 
504
493
  # write the c:marker element.
505
494
  write_marker_value
@@ -533,8 +522,7 @@ module Writexlsx
533
522
  cell = xl_rowcol_to_cell(name[1], name[2], 1, 1)
534
523
  name_formula = "#{quote_sheetname(name[0])}!#{cell}"
535
524
  name = ''
536
- elsif
537
- name && name =~ /^=[^!]+!\$/
525
+ elsif name && name =~ /^=[^!]+!\$/
538
526
  name_formula = name
539
527
  name = ''
540
528
  end
@@ -580,6 +568,13 @@ module Writexlsx
580
568
  @is_secondary
581
569
  end
582
570
 
571
+ #
572
+ # Set the option for displaying #N/A as an empty cell in a chart.
573
+ #
574
+ def show_na_as_empty_cell
575
+ @show_na_as_empty = true
576
+ end
577
+
583
578
  private
584
579
 
585
580
  def axis_setup
@@ -610,6 +605,7 @@ module Writexlsx
610
605
  @cross_between = 'between'
611
606
  @date_category = false
612
607
  @show_blanks = 'gap'
608
+ @show_na_as_empty = false
613
609
  @show_hidden_data = false
614
610
  @show_crosses = true
615
611
  end
@@ -618,10 +614,10 @@ module Writexlsx
618
614
  # retun primary/secondary series by :primary_axes flag
619
615
  #
620
616
  def axes_series(params)
621
- if params[:primary_axes] != 0
622
- primary_axes_series
623
- else
617
+ if params[:primary_axes] == 0
624
618
  secondary_axes_series
619
+ else
620
+ primary_axes_series
625
621
  end
626
622
  end
627
623
 
@@ -634,12 +630,12 @@ module Writexlsx
634
630
  # Check for no data in the series.
635
631
  return 'none' unless data
636
632
  return 'none' if data.empty?
637
- return 'multi_str' if data.first.kind_of?(Array)
633
+ return 'multi_str' if data.first.is_a?(Array)
638
634
 
639
635
  # If the token isn't a number assume it is a string.
640
636
  data.each do |token|
641
637
  next unless token
642
- return 'str' unless token.kind_of?(Numeric)
638
+ return 'str' unless token.is_a?(Numeric)
643
639
  end
644
640
 
645
641
  # The series data was all numeric.
@@ -650,17 +646,17 @@ module Writexlsx
650
646
  # Returns series which use the primary axes.
651
647
  #
652
648
  def get_primary_axes_series
653
- @series.reject {|s| s.y2_axis}
649
+ @series.reject { |s| s.y2_axis }
654
650
  end
655
- alias :primary_axes_series :get_primary_axes_series
651
+ alias primary_axes_series get_primary_axes_series
656
652
 
657
653
  #
658
654
  # Returns series which use the secondary axes.
659
655
  #
660
656
  def get_secondary_axes_series
661
- @series.select {|s| s.y2_axis}
657
+ @series.select { |s| s.y2_axis }
662
658
  end
663
- alias :secondary_axes_series :get_secondary_axes_series
659
+ alias secondary_axes_series get_secondary_axes_series
664
660
 
665
661
  #
666
662
  # Add a unique ids for primary or secondary axis.
@@ -707,51 +703,50 @@ module Writexlsx
707
703
 
708
704
  def x_axis_defaults
709
705
  {
710
- :num_format => 'General',
711
- :major_gridlines => { :visible => 0 }
706
+ num_format: 'General',
707
+ major_gridlines: { visible: 0 }
712
708
  }
713
709
  end
714
710
 
715
711
  def y_axis_defaults
716
712
  {
717
- :num_format => 'General',
718
- :major_gridlines => { :visible => 1 }
713
+ num_format: 'General',
714
+ major_gridlines: { visible: 1 }
719
715
  }
720
716
  end
721
717
 
722
718
  def x2_axis_defaults
723
719
  {
724
- :num_format => 'General',
725
- :label_position => 'none',
726
- :crossing => 'max',
727
- :visible => 0
720
+ num_format: 'General',
721
+ label_position: 'none',
722
+ crossing: 'max',
723
+ visible: 0
728
724
  }
729
725
  end
730
726
 
731
727
  def y2_axis_defaults
732
728
  {
733
- :num_format => 'General',
734
- :major_gridlines => { :visible => 0 },
735
- :position => 'right',
736
- :visible => 1
729
+ num_format: 'General',
730
+ major_gridlines: { visible: 0 },
731
+ position: 'right',
732
+ visible: 1
737
733
  }
738
734
  end
735
+
739
736
  #
740
737
  # Write the <c:chartSpace> element.
741
738
  #
742
- def write_chart_space # :nodoc:
743
- @writer.tag_elements('c:chartSpace', chart_space_attributes) do
744
- yield
745
- end
739
+ def write_chart_space(&block) # :nodoc:
740
+ @writer.tag_elements('c:chartSpace', chart_space_attributes, &block)
746
741
  end
747
742
 
748
743
  # for <c:chartSpace> element.
749
744
  def chart_space_attributes # :nodoc:
750
745
  schema = 'http://schemas.openxmlformats.org/'
751
746
  [
752
- ['xmlns:c', "#{schema}drawingml/2006/chart"],
753
- ['xmlns:a', "#{schema}drawingml/2006/main"],
754
- ['xmlns:r', "#{schema}officeDocument/2006/relationships"]
747
+ ['xmlns:c', "#{schema}drawingml/2006/chart"],
748
+ ['xmlns:a', "#{schema}drawingml/2006/main"],
749
+ ['xmlns:r', "#{schema}officeDocument/2006/relationships"]
755
750
  ]
756
751
  end
757
752
 
@@ -759,7 +754,7 @@ module Writexlsx
759
754
  # Write the <c:lang> element.
760
755
  #
761
756
  def write_lang # :nodoc:
762
- @writer.empty_tag('c:lang', [ ['val', 'en-US'] ])
757
+ @writer.empty_tag('c:lang', [%w[val en-US]])
763
758
  end
764
759
 
765
760
  #
@@ -768,7 +763,7 @@ module Writexlsx
768
763
  def write_style # :nodoc:
769
764
  return if @style_id == 2
770
765
 
771
- @writer.empty_tag('c:style', [ ['val', @style_id] ])
766
+ @writer.empty_tag('c:style', [['val', @style_id]])
772
767
  end
773
768
 
774
769
  #
@@ -795,6 +790,9 @@ module Writexlsx
795
790
 
796
791
  # Write the c:dispBlanksAs element.
797
792
  write_disp_blanks_as
793
+
794
+ # Write the c:extLst element.
795
+ write_ext_lst_display_na if @show_na_as_empty
798
796
  end
799
797
  end
800
798
 
@@ -804,7 +802,7 @@ module Writexlsx
804
802
  def write_disp_blanks_as
805
803
  return if @show_blanks == 'gap'
806
804
 
807
- @writer.empty_tag('c:dispBlanksAs', [ ['val', @show_blanks] ])
805
+ @writer.empty_tag('c:dispBlanksAs', [['val', @show_blanks]])
808
806
  end
809
807
 
810
808
  #
@@ -816,18 +814,18 @@ module Writexlsx
816
814
  # Write the c:layout element.
817
815
  write_layout(@plotarea.layout, 'plot')
818
816
  # Write the subclass chart type elements for primary and secondary axes.
819
- write_chart_type(:primary_axes => 1)
820
- write_chart_type(:primary_axes => 0)
817
+ write_chart_type(primary_axes: 1)
818
+ write_chart_type(primary_axes: 0)
821
819
 
822
820
  # Configure a combined chart if present.
823
821
  if second_chart
824
822
 
825
823
  # Secondary axis has unique id otherwise use same as primary.
826
- if second_chart.is_secondary?
827
- second_chart.id = 1000 + @id
828
- else
829
- second_chart.id = @id
830
- end
824
+ second_chart.id = if second_chart.is_secondary?
825
+ 1000 + @id
826
+ else
827
+ @id
828
+ end
831
829
 
832
830
  # Share the same writer for writing.
833
831
  second_chart.writer = @writer
@@ -836,15 +834,15 @@ module Writexlsx
836
834
  second_chart.series_index = @series_index
837
835
 
838
836
  # Write the subclass chart type elements for combined chart.
839
- second_chart.write_chart_type(:primary_axes => 1)
840
- second_chart.write_chart_type(:primary_axes => 0)
837
+ second_chart.write_chart_type(primary_axes: 1)
838
+ second_chart.write_chart_type(primary_axes: 0)
841
839
  end
842
840
 
843
841
  # Write the category and value elements for the primary axes.
844
842
  params = {
845
- :x_axis => @x_axis,
846
- :y_axis => @y_axis,
847
- :axis_ids => @axis_ids
843
+ x_axis: @x_axis,
844
+ y_axis: @y_axis,
845
+ axis_ids: @axis_ids
848
846
  }
849
847
 
850
848
  if @date_category
@@ -857,9 +855,9 @@ module Writexlsx
857
855
 
858
856
  # Write the category and value elements for the secondary axes.
859
857
  params = {
860
- :x_axis => @x2_axis,
861
- :y_axis => @y2_axis,
862
- :axis_ids => @axis2_ids
858
+ x_axis: @x2_axis,
859
+ y_axis: @y2_axis,
860
+ axis_ids: @axis2_ids
863
861
  }
864
862
 
865
863
  write_val_axis(@x2_axis, @y2_axis, @axis2_ids)
@@ -868,9 +866,9 @@ module Writexlsx
868
866
  if second_chart && second_chart.is_secondary?
869
867
 
870
868
  params = {
871
- :x_axis => second_chart.x2_axis,
872
- :y_axis => second_chart.y2_axis,
873
- :axis_ids => second_chart.axis2_ids
869
+ x_axis: second_chart.x2_axis,
870
+ y_axis: second_chart.y2_axis,
871
+ axis_ids: second_chart.axis2_ids
874
872
  }
875
873
 
876
874
  second_chart.write_val_axis(
@@ -913,18 +911,18 @@ module Writexlsx
913
911
  def write_manual_layout(layout, type)
914
912
  @writer.tag_elements('c:manualLayout') do
915
913
  # Plotarea has a layoutTarget element.
916
- @writer.empty_tag('c:layoutTarget', [ ['val', 'inner'] ]) if type == 'plot'
914
+ @writer.empty_tag('c:layoutTarget', [%w[val inner]]) if type == 'plot'
917
915
 
918
916
  # Set the x, y positions.
919
- @writer.empty_tag('c:xMode', [ ['val', 'edge'] ])
920
- @writer.empty_tag('c:yMode', [ ['val', 'edge'] ])
921
- @writer.empty_tag('c:x', [ ['val', layout[:x]] ])
922
- @writer.empty_tag('c:y', [ ['val', layout[:y]] ])
917
+ @writer.empty_tag('c:xMode', [%w[val edge]])
918
+ @writer.empty_tag('c:yMode', [%w[val edge]])
919
+ @writer.empty_tag('c:x', [['val', layout[:x]]])
920
+ @writer.empty_tag('c:y', [['val', layout[:y]]])
923
921
 
924
922
  # For plotarea and legend set the width and height.
925
923
  if type != 'text'
926
- @writer.empty_tag('c:w', [ ['val', layout[:width]] ])
927
- @writer.empty_tag('c:h', [ ['val', layout[:height]] ])
924
+ @writer.empty_tag('c:w', [['val', layout[:width]]])
925
+ @writer.empty_tag('c:h', [['val', layout[:height]]])
928
926
  end
929
927
  end
930
928
  end
@@ -933,14 +931,13 @@ module Writexlsx
933
931
  # Write the chart type element. This method should be overridden by the
934
932
  # subclasses.
935
933
  #
936
- def write_chart_type # :nodoc:
937
- end
934
+ def write_chart_type; end
938
935
 
939
936
  #
940
937
  # Write the <c:grouping> element.
941
938
  #
942
939
  def write_grouping(val) # :nodoc:
943
- @writer.empty_tag('c:grouping', [ ['val', val] ])
940
+ @writer.empty_tag('c:grouping', [['val', val]])
944
941
  end
945
942
 
946
943
  #
@@ -964,10 +961,62 @@ module Writexlsx
964
961
  write_val(series)
965
962
  # Write the c:smooth element.
966
963
  write_c_smooth(series.smooth) if ptrue?(@smooth_allowed)
964
+ # Write the c:extLst element.
965
+ write_ext_lst_inverted_fill(series.inverted_color) if series.inverted_color
967
966
  end
968
967
  @series_index += 1
969
968
  end
970
969
 
970
+ def write_ext_lst_inverted_fill(color)
971
+ uri = '{6F2FDCE9-48DA-4B69-8628-5D25D57E5C99}'
972
+ xmlns_c_14 =
973
+ 'http://schemas.microsoft.com/office/drawing/2007/8/2/chart'
974
+
975
+ attributes_1 = [
976
+ ['uri', uri],
977
+ ['xmlns:c14', xmlns_c_14]
978
+ ]
979
+
980
+ attributes_2 = [
981
+ ['xmlns:c14', xmlns_c_14]
982
+ ]
983
+
984
+ @writer.tag_elements('c:extLst') do
985
+ @writer.tag_elements('c:ext', attributes_1) do
986
+ @writer.tag_elements('c14:invertSolidFillFmt') do
987
+ @writer.tag_elements('c14:spPr', attributes_2) do
988
+ write_a_solid_fill(color: color)
989
+ end
990
+ end
991
+ end
992
+ end
993
+ end
994
+
995
+ #
996
+ # Write the <c:extLst> element for the display N/A as empty cell option.
997
+ #
998
+ def write_ext_lst_display_na
999
+ uri = '{56B9EC1D-385E-4148-901F-78D8002777C0}'
1000
+ xmlns_c_16 = 'http://schemas.microsoft.com/office/drawing/2017/03/chart'
1001
+
1002
+ attributes1 = [
1003
+ ['uri', uri],
1004
+ ['xmlns:c16r3', xmlns_c_16]
1005
+ ]
1006
+
1007
+ attributes2 = [
1008
+ ['val', 1]
1009
+ ]
1010
+
1011
+ @writer.tag_elements('c:extLst') do
1012
+ @writer.tag_elements('c:ext', attributes1) do
1013
+ @writer.tag_elements('c16r3:dataDisplayOptions16') do
1014
+ @writer.empty_tag('c16r3:dispNaAsBlank', attributes2)
1015
+ end
1016
+ end
1017
+ end
1018
+ end
1019
+
971
1020
  def write_ser_base(series)
972
1021
  # Write the c:idx element.
973
1022
  write_idx(@series_index)
@@ -996,14 +1045,14 @@ module Writexlsx
996
1045
  # Write the <c:idx> element.
997
1046
  #
998
1047
  def write_idx(val) # :nodoc:
999
- @writer.empty_tag('c:idx', [ ['val', val] ])
1048
+ @writer.empty_tag('c:idx', [['val', val]])
1000
1049
  end
1001
1050
 
1002
1051
  #
1003
1052
  # Write the <c:order> element.
1004
1053
  #
1005
1054
  def write_order(val) # :nodoc:
1006
- @writer.empty_tag('c:order', [ ['val', val] ])
1055
+ @writer.empty_tag('c:order', [['val', val]])
1007
1056
  end
1008
1057
 
1009
1058
  #
@@ -1021,7 +1070,6 @@ module Writexlsx
1021
1070
  # Write the <c:cat> element.
1022
1071
  #
1023
1072
  def write_cat(series) # :nodoc:
1024
-
1025
1073
  formula = series.categories
1026
1074
  data_id = series.cat_data_id
1027
1075
 
@@ -1109,7 +1157,6 @@ module Writexlsx
1109
1157
  write_series_formula(formula)
1110
1158
 
1111
1159
  @writer.tag_elements('c:multiLvlStrCache') do
1112
-
1113
1160
  # Write the c:ptCount element.
1114
1161
  write_pt_count(data.last.size)
1115
1162
 
@@ -1117,7 +1164,7 @@ module Writexlsx
1117
1164
  data.reverse.each do |arr|
1118
1165
  @writer.tag_elements('c:lvl') do
1119
1166
  # Write the c:pt element.
1120
- arr.each_with_index {|a, i| write_pt(i, a)}
1167
+ arr.each_with_index { |a, i| write_pt(i, a) }
1121
1168
  end
1122
1169
  end
1123
1170
  end
@@ -1148,14 +1195,14 @@ module Writexlsx
1148
1195
  # Generate the axis ids.
1149
1196
  add_axis_ids(params)
1150
1197
 
1151
- if params[:primary_axes] != 0
1152
- # Write the axis ids for the primary axes.
1153
- write_axis_id(@axis_ids[0])
1154
- write_axis_id(@axis_ids[1])
1155
- else
1198
+ if params[:primary_axes] == 0
1156
1199
  # Write the axis ids for the secondary axes.
1157
1200
  write_axis_id(@axis2_ids[0])
1158
1201
  write_axis_id(@axis2_ids[1])
1202
+ else
1203
+ # Write the axis ids for the primary axes.
1204
+ write_axis_id(@axis_ids[0])
1205
+ write_axis_id(@axis_ids[1])
1159
1206
  end
1160
1207
  end
1161
1208
 
@@ -1163,7 +1210,7 @@ module Writexlsx
1163
1210
  # Write the <c:axId> element.
1164
1211
  #
1165
1212
  def write_axis_id(val) # :nodoc:
1166
- @writer.empty_tag('c:axId', [ ['val', val] ])
1213
+ @writer.empty_tag('c:axId', [['val', val]])
1167
1214
  end
1168
1215
 
1169
1216
  #
@@ -1228,9 +1275,7 @@ module Writexlsx
1228
1275
  # Write the c:crossAx element.
1229
1276
  write_cross_axis(axis_ids[1])
1230
1277
 
1231
- if @show_crosses || ptrue?(x_axis.visible)
1232
- write_crossing(y_axis.crossing)
1233
- end
1278
+ write_crossing(y_axis.crossing) if @show_crosses || ptrue?(x_axis.visible)
1234
1279
  # Write the c:auto element.
1235
1280
  write_auto(1) unless x_axis.text_axis
1236
1281
  # Write the c:labelAlign element.
@@ -1372,9 +1417,7 @@ module Writexlsx
1372
1417
  # Write the c:crossAx element.
1373
1418
  write_cross_axis(axis_ids[1])
1374
1419
 
1375
- if @show_crosses || ptrue?(x_axis.visible)
1376
- write_crossing(y_axis.crossing)
1377
- end
1420
+ write_crossing(y_axis.crossing) if @show_crosses || ptrue?(x_axis.visible)
1378
1421
 
1379
1422
  # Write the c:auto element.
1380
1423
  write_auto(1)
@@ -1414,6 +1457,7 @@ module Writexlsx
1414
1457
  param.log_base
1415
1458
  )
1416
1459
  end
1460
+
1417
1461
  #
1418
1462
  # Write the <c:scaling> element.
1419
1463
  #
@@ -1436,7 +1480,7 @@ module Writexlsx
1436
1480
  def write_c_log_base(val) # :nodoc:
1437
1481
  return unless ptrue?(val)
1438
1482
 
1439
- @writer.empty_tag('c:logBase', [ ['val', val] ])
1483
+ @writer.empty_tag('c:logBase', [['val', val]])
1440
1484
  end
1441
1485
 
1442
1486
  #
@@ -1445,21 +1489,21 @@ module Writexlsx
1445
1489
  def write_orientation(reverse = nil) # :nodoc:
1446
1490
  val = ptrue?(reverse) ? 'maxMin' : 'minMax'
1447
1491
 
1448
- @writer.empty_tag('c:orientation', [ ['val', val] ])
1492
+ @writer.empty_tag('c:orientation', [['val', val]])
1449
1493
  end
1450
1494
 
1451
1495
  #
1452
1496
  # Write the <c:max> element.
1453
1497
  #
1454
1498
  def write_c_max(max = nil) # :nodoc:
1455
- @writer.empty_tag('c:max', [ ['val', max] ]) if max
1499
+ @writer.empty_tag('c:max', [['val', max]]) if max
1456
1500
  end
1457
1501
 
1458
1502
  #
1459
1503
  # Write the <c:min> element.
1460
1504
  #
1461
1505
  def write_c_min(min = nil) # :nodoc:
1462
- @writer.empty_tag('c:min', [ ['val', min] ]) if min
1506
+ @writer.empty_tag('c:min', [['val', min]]) if min
1463
1507
  end
1464
1508
 
1465
1509
  #
@@ -1471,7 +1515,7 @@ module Writexlsx
1471
1515
  val = 't' if val == 'b'
1472
1516
  end
1473
1517
 
1474
- @writer.empty_tag('c:axPos', [ ['val', val] ])
1518
+ @writer.empty_tag('c:axPos', [['val', val]])
1475
1519
  end
1476
1520
 
1477
1521
  #
@@ -1512,7 +1556,7 @@ module Writexlsx
1512
1556
  def write_major_tick_mark(val)
1513
1557
  return unless ptrue?(val)
1514
1558
 
1515
- @writer.empty_tag('c:majorTickMark', [ ['val', val] ])
1559
+ @writer.empty_tag('c:majorTickMark', [['val', val]])
1516
1560
  end
1517
1561
 
1518
1562
  #
@@ -1521,7 +1565,7 @@ module Writexlsx
1521
1565
  def write_minor_tick_mark(val)
1522
1566
  return unless ptrue?(val)
1523
1567
 
1524
- @writer.empty_tag('c:minorTickMark', [ ['val', val] ])
1568
+ @writer.empty_tag('c:minorTickMark', [['val', val]])
1525
1569
  end
1526
1570
 
1527
1571
  #
@@ -1531,14 +1575,14 @@ module Writexlsx
1531
1575
  val ||= 'nextTo'
1532
1576
  val = 'nextTo' if val == 'next_to'
1533
1577
 
1534
- @writer.empty_tag('c:tickLblPos', [ ['val', val] ])
1578
+ @writer.empty_tag('c:tickLblPos', [['val', val]])
1535
1579
  end
1536
1580
 
1537
1581
  #
1538
1582
  # Write the <c:crossAx> element.
1539
1583
  #
1540
1584
  def write_cross_axis(val = 'autoZero') # :nodoc:
1541
- @writer.empty_tag('c:crossAx', [ ['val', val] ])
1585
+ @writer.empty_tag('c:crossAx', [['val', val]])
1542
1586
  end
1543
1587
 
1544
1588
  #
@@ -1547,21 +1591,21 @@ module Writexlsx
1547
1591
  def write_crosses(val) # :nodoc:
1548
1592
  val ||= 'autoZero'
1549
1593
 
1550
- @writer.empty_tag('c:crosses', [ ['val', val] ])
1594
+ @writer.empty_tag('c:crosses', [['val', val]])
1551
1595
  end
1552
1596
 
1553
1597
  #
1554
1598
  # Write the <c:crossesAt> element.
1555
1599
  #
1556
1600
  def write_c_crosses_at(val) # :nodoc:
1557
- @writer.empty_tag('c:crossesAt', [ ['val', val] ])
1601
+ @writer.empty_tag('c:crossesAt', [['val', val]])
1558
1602
  end
1559
1603
 
1560
1604
  #
1561
1605
  # Write the <c:auto> element.
1562
1606
  #
1563
1607
  def write_auto(val) # :nodoc:
1564
- @writer.empty_tag('c:auto', [ ['val', val] ])
1608
+ @writer.empty_tag('c:auto', [['val', val]])
1565
1609
  end
1566
1610
 
1567
1611
  #
@@ -1574,14 +1618,14 @@ module Writexlsx
1574
1618
  elsif val == 'left'
1575
1619
  val = 'l'
1576
1620
  end
1577
- @writer.empty_tag('c:lblAlgn', [ ['val', val] ])
1621
+ @writer.empty_tag('c:lblAlgn', [['val', val]])
1578
1622
  end
1579
1623
 
1580
1624
  #
1581
1625
  # Write the <c:labelOffset> element.
1582
1626
  #
1583
1627
  def write_label_offset(val) # :nodoc:
1584
- @writer.empty_tag('c:lblOffset', [ ['val', val] ])
1628
+ @writer.empty_tag('c:lblOffset', [['val', val]])
1585
1629
  end
1586
1630
 
1587
1631
  #
@@ -1590,7 +1634,7 @@ module Writexlsx
1590
1634
  def write_tick_lbl_skip(val) # :nodoc:
1591
1635
  return unless val
1592
1636
 
1593
- @writer.empty_tag('c:tickLblSkip', [ ['val', val] ])
1637
+ @writer.empty_tag('c:tickLblSkip', [['val', val]])
1594
1638
  end
1595
1639
 
1596
1640
  #
@@ -1599,7 +1643,7 @@ module Writexlsx
1599
1643
  def write_tick_mark_skip(val) # :nodoc:
1600
1644
  return unless val
1601
1645
 
1602
- @writer.empty_tag( 'c:tickMarkSkip', [ ['val', val] ])
1646
+ @writer.empty_tag('c:tickMarkSkip', [['val', val]])
1603
1647
  end
1604
1648
 
1605
1649
  #
@@ -1633,7 +1677,7 @@ module Writexlsx
1633
1677
  def write_cross_between(val = nil) # :nodoc:
1634
1678
  val ||= @cross_between
1635
1679
 
1636
- @writer.empty_tag('c:crossBetween', [ ['val', val] ])
1680
+ @writer.empty_tag('c:crossBetween', [['val', val]])
1637
1681
  end
1638
1682
 
1639
1683
  #
@@ -1642,7 +1686,7 @@ module Writexlsx
1642
1686
  def write_c_major_unit(val = nil) # :nodoc:
1643
1687
  return unless val
1644
1688
 
1645
- @writer.empty_tag('c:majorUnit', [ ['val', val] ])
1689
+ @writer.empty_tag('c:majorUnit', [['val', val]])
1646
1690
  end
1647
1691
 
1648
1692
  #
@@ -1651,7 +1695,7 @@ module Writexlsx
1651
1695
  def write_c_minor_unit(val = nil) # :nodoc:
1652
1696
  return unless val
1653
1697
 
1654
- @writer.empty_tag('c:minorUnit', [ ['val', val] ])
1698
+ @writer.empty_tag('c:minorUnit', [['val', val]])
1655
1699
  end
1656
1700
 
1657
1701
  #
@@ -1660,7 +1704,7 @@ module Writexlsx
1660
1704
  def write_c_major_time_unit(val) # :nodoc:
1661
1705
  val ||= 'days'
1662
1706
 
1663
- @writer.empty_tag('c:majorTimeUnit', [ ['val', val] ])
1707
+ @writer.empty_tag('c:majorTimeUnit', [['val', val]])
1664
1708
  end
1665
1709
 
1666
1710
  #
@@ -1669,7 +1713,7 @@ module Writexlsx
1669
1713
  def write_c_minor_time_unit(val) # :nodoc:
1670
1714
  val ||= 'days'
1671
1715
 
1672
- @writer.empty_tag('c:minorTimeUnit', [ ['val', val] ])
1716
+ @writer.empty_tag('c:minorTimeUnit', [['val', val]])
1673
1717
  end
1674
1718
 
1675
1719
  #
@@ -1677,9 +1721,9 @@ module Writexlsx
1677
1721
  #
1678
1722
  def write_legend # :nodoc:
1679
1723
  position = @legend.position.sub(/^overlay_/, '')
1680
- return if position == 'none' || (not position_allowed.has_key?(position))
1724
+ return if position == 'none' || !position_allowed.has_key?(position)
1681
1725
 
1682
- @delete_series = @legend.delete_series if @legend.delete_series.kind_of?(Array)
1726
+ @delete_series = @legend.delete_series if @legend.delete_series.is_a?(Array)
1683
1727
  @writer.tag_elements('c:legend') do
1684
1728
  # Write the c:legendPos element.
1685
1729
  write_legend_pos(position_allowed[position])
@@ -1711,7 +1755,7 @@ module Writexlsx
1711
1755
  # Write the <c:legendPos> element.
1712
1756
  #
1713
1757
  def write_legend_pos(val) # :nodoc:
1714
- @writer.empty_tag('c:legendPos', [ ['val', val] ])
1758
+ @writer.empty_tag('c:legendPos', [['val', val]])
1715
1759
  end
1716
1760
 
1717
1761
  #
@@ -1730,7 +1774,7 @@ module Writexlsx
1730
1774
  # Write the <c:overlay> element.
1731
1775
  #
1732
1776
  def write_overlay # :nodoc:
1733
- @writer.empty_tag('c:overlay', [ ['val', 1] ])
1777
+ @writer.empty_tag('c:overlay', [['val', 1]])
1734
1778
  end
1735
1779
 
1736
1780
  #
@@ -1742,7 +1786,7 @@ module Writexlsx
1742
1786
  # Ignore this element if we are plotting hidden data.
1743
1787
  return if @show_hidden_data
1744
1788
 
1745
- @writer.empty_tag('c:plotVisOnly', [ ['val', val] ])
1789
+ @writer.empty_tag('c:plotVisOnly', [['val', val]])
1746
1790
  end
1747
1791
 
1748
1792
  #
@@ -1800,7 +1844,7 @@ module Writexlsx
1800
1844
  # Write the <c:autoTitleDeleted> element.
1801
1845
  #
1802
1846
  def write_auto_title_deleted
1803
- attributes = [ ['val', 1] ]
1847
+ attributes = [['val', 1]]
1804
1848
 
1805
1849
  @writer.empty_tag('c:autoTitleDeleted', attributes)
1806
1850
  end
@@ -1866,9 +1910,7 @@ module Writexlsx
1866
1910
  def write_rich(title, font, is_y_axis, ignore_rich_pr = false) # :nodoc:
1867
1911
  rotation = nil
1868
1912
 
1869
- if font && font[:_rotation]
1870
- rotation = font[:_rotation]
1871
- end
1913
+ rotation = font[:_rotation] if font && font[:_rotation]
1872
1914
  @writer.tag_elements('c:rich') do
1873
1915
  # Write the a:bodyPr element.
1874
1916
  write_a_body_pr(rotation, is_y_axis)
@@ -1878,13 +1920,14 @@ module Writexlsx
1878
1920
  write_a_p_rich(title, font, ignore_rich_pr)
1879
1921
  end
1880
1922
  end
1923
+
1881
1924
  #
1882
1925
  # Write the <a:p> element for rich string titles.
1883
1926
  #
1884
1927
  def write_a_p_rich(title, font, ignore_rich_pr) # :nodoc:
1885
1928
  @writer.tag_elements('a:p') do
1886
1929
  # Write the a:pPr element.
1887
- write_a_p_pr_rich(font) if !ignore_rich_pr
1930
+ write_a_p_pr_rich(font) unless ignore_rich_pr
1888
1931
  # Write the a:r element.
1889
1932
  write_a_r(title, font)
1890
1933
  end
@@ -1913,7 +1956,7 @@ module Writexlsx
1913
1956
  # Write the <a:rPr> element.
1914
1957
  #
1915
1958
  def write_a_r_pr(font) # :nodoc:
1916
- attributes = [ ['lang', 'en-US'] ]
1959
+ attributes = [%w[lang en-US]]
1917
1960
  attr_font = get_font_style_attributes(font)
1918
1961
  attributes += attr_font unless attr_font.empty?
1919
1962
 
@@ -1953,21 +1996,21 @@ module Writexlsx
1953
1996
  def write_marker_value # :nodoc:
1954
1997
  return unless @default_marker
1955
1998
 
1956
- @writer.empty_tag('c:marker', [ ['val', 1] ])
1999
+ @writer.empty_tag('c:marker', [['val', 1]])
1957
2000
  end
1958
2001
 
1959
2002
  #
1960
2003
  # Write the <c:size> element.
1961
2004
  #
1962
2005
  def write_marker_size(val) # :nodoc:
1963
- @writer.empty_tag('c:size', [ ['val', val] ])
2006
+ @writer.empty_tag('c:size', [['val', val]])
1964
2007
  end
1965
2008
 
1966
2009
  #
1967
2010
  # Write the <c:symbol> element.
1968
2011
  #
1969
2012
  def write_symbol(val) # :nodoc:
1970
- @writer.empty_tag('c:symbol', [ ['val', val] ])
2013
+ @writer.empty_tag('c:symbol', [['val', val]])
1971
2014
  end
1972
2015
 
1973
2016
  def has_fill_formatting(element)
@@ -1980,12 +2023,11 @@ module Writexlsx
1980
2023
  (fill && ptrue?(fill[:_defined])) || pattern || gradient
1981
2024
  end
1982
2025
 
1983
-
1984
2026
  #
1985
2027
  # Write the <c:spPr> element.
1986
2028
  #
1987
2029
  def write_sp_pr(series) # :nodoc:
1988
- return if !has_fill_formatting(series)
2030
+ return unless has_fill_formatting(series)
1989
2031
 
1990
2032
  line = series_property(series, :line)
1991
2033
  fill = series_property(series, :fill)
@@ -2003,9 +2045,7 @@ module Writexlsx
2003
2045
  write_a_solid_fill(fill)
2004
2046
  end
2005
2047
  end
2006
- if ptrue?(pattern)
2007
- write_a_patt_fill(pattern)
2008
- end
2048
+ write_a_patt_fill(pattern) if ptrue?(pattern)
2009
2049
  if ptrue?(gradient)
2010
2050
  # Write the a:gradFill element.
2011
2051
  write_a_grad_fill(gradient)
@@ -2041,20 +2081,25 @@ module Writexlsx
2041
2081
  attributes << ['w', width]
2042
2082
  end
2043
2083
 
2044
- @writer.tag_elements('a:ln', attributes) do
2045
- # Write the line fill.
2046
- if ptrue?(line[:none])
2047
- # Write the a:noFill element.
2048
- write_a_no_fill
2049
- elsif ptrue?(line[:color])
2050
- # Write the a:solidFill element.
2051
- write_a_solid_fill(line)
2052
- end
2053
- # Write the line/dash type.
2054
- if line[:dash_type]
2055
- # Write the a:prstDash element.
2056
- write_a_prst_dash(line[:dash_type])
2084
+ if ptrue?(line[:none]) || ptrue?(line[:color]) || line[:dash_type]
2085
+ @writer.tag_elements('a:ln', attributes) do
2086
+ # Write the line fill.
2087
+ if ptrue?(line[:none])
2088
+ # Write the a:noFill element.
2089
+ write_a_no_fill
2090
+ elsif ptrue?(line[:color])
2091
+ # Write the a:solidFill element.
2092
+ write_a_solid_fill(line)
2093
+ end
2094
+
2095
+ # Write the line/dash type.
2096
+ if line[:dash_type]
2097
+ # Write the a:prstDash element.
2098
+ write_a_prst_dash(line[:dash_type])
2099
+ end
2057
2100
  end
2101
+ else
2102
+ @writer.empty_tag('a:ln', attributes)
2058
2103
  end
2059
2104
  end
2060
2105
 
@@ -2071,14 +2116,14 @@ module Writexlsx
2071
2116
  def write_a_alpha(val)
2072
2117
  val = (100 - val.to_i) * 1000
2073
2118
 
2074
- @writer.empty_tag('a:alpha', [ ['val', val] ])
2119
+ @writer.empty_tag('a:alpha', [['val', val]])
2075
2120
  end
2076
2121
 
2077
2122
  #
2078
2123
  # Write the <a:prstDash> element.
2079
2124
  #
2080
2125
  def write_a_prst_dash(val) # :nodoc:
2081
- @writer.empty_tag('a:prstDash', [ ['val', val] ])
2126
+ @writer.empty_tag('a:prstDash', [['val', val]])
2082
2127
  end
2083
2128
 
2084
2129
  #
@@ -2114,7 +2159,7 @@ module Writexlsx
2114
2159
  # Write the c:dispEq element.
2115
2160
  write_disp_eq
2116
2161
  # Write the c:trendlineLbl element.
2117
- write_trendline_lbl
2162
+ write_trendline_lbl(trendline)
2118
2163
  end
2119
2164
  end
2120
2165
  end
@@ -2123,7 +2168,7 @@ module Writexlsx
2123
2168
  # Write the <c:trendlineType> element.
2124
2169
  #
2125
2170
  def write_trendline_type(val) # :nodoc:
2126
- @writer.empty_tag('c:trendlineType', [ ['val', val] ])
2171
+ @writer.empty_tag('c:trendlineType', [['val', val]])
2127
2172
  end
2128
2173
 
2129
2174
  #
@@ -2139,14 +2184,14 @@ module Writexlsx
2139
2184
  # Write the <c:order> element.
2140
2185
  #
2141
2186
  def write_trendline_order(val = 2) # :nodoc:
2142
- @writer.empty_tag('c:order', [ ['val', val] ])
2187
+ @writer.empty_tag('c:order', [['val', val]])
2143
2188
  end
2144
2189
 
2145
2190
  #
2146
2191
  # Write the <c:period> element.
2147
2192
  #
2148
2193
  def write_period(val = 2) # :nodoc:
2149
- @writer.empty_tag('c:period', [ ['val', val] ])
2194
+ @writer.empty_tag('c:period', [['val', val]])
2150
2195
  end
2151
2196
 
2152
2197
  #
@@ -2155,7 +2200,7 @@ module Writexlsx
2155
2200
  def write_forward(val) # :nodoc:
2156
2201
  return unless val
2157
2202
 
2158
- @writer.empty_tag('c:forward', [ ['val', val] ])
2203
+ @writer.empty_tag('c:forward', [['val', val]])
2159
2204
  end
2160
2205
 
2161
2206
  #
@@ -2164,39 +2209,45 @@ module Writexlsx
2164
2209
  def write_backward(val) # :nodoc:
2165
2210
  return unless val
2166
2211
 
2167
- @writer.empty_tag('c:backward', [ ['val', val] ])
2212
+ @writer.empty_tag('c:backward', [['val', val]])
2168
2213
  end
2169
2214
 
2170
2215
  #
2171
2216
  # Write the <c:intercept> element.
2172
2217
  #
2173
2218
  def write_intercept(val)
2174
- @writer.empty_tag('c:intercept', [ ['val', val] ])
2219
+ @writer.empty_tag('c:intercept', [['val', val]])
2175
2220
  end
2176
2221
 
2177
2222
  #
2178
2223
  # Write the <c:dispEq> element.
2179
2224
  #
2180
2225
  def write_disp_eq
2181
- @writer.empty_tag('c:dispEq', [ ['val', 1] ])
2226
+ @writer.empty_tag('c:dispEq', [['val', 1]])
2182
2227
  end
2183
2228
 
2184
2229
  #
2185
2230
  # Write the <c:dispRSqr> element.
2186
2231
  #
2187
2232
  def write_disp_rsqr
2188
- @writer.empty_tag('c:dispRSqr', [ ['val', 1] ])
2233
+ @writer.empty_tag('c:dispRSqr', [['val', 1]])
2189
2234
  end
2190
2235
 
2191
2236
  #
2192
2237
  # Write the <c:trendlineLbl> element.
2193
2238
  #
2194
- def write_trendline_lbl
2239
+ def write_trendline_lbl(trendline)
2195
2240
  @writer.tag_elements('c:trendlineLbl') do
2196
2241
  # Write the c:layout element.
2197
2242
  write_layout
2198
2243
  # Write the c:numFmt element.
2199
2244
  write_trendline_num_fmt
2245
+ # Write the c:spPr element for the label formatting.
2246
+ write_sp_pr(trendline.label)
2247
+ # Write the data label font elements.
2248
+ if trendline.label && ptrue?(trendline.label[:font])
2249
+ write_axis_font(trendline.label[:font])
2250
+ end
2200
2251
  end
2201
2252
  end
2202
2253
 
@@ -2245,7 +2296,7 @@ module Writexlsx
2245
2296
  def write_overlap(val = nil) # :nodoc:
2246
2297
  return unless val
2247
2298
 
2248
- @writer.empty_tag('c:overlap', [ ['val', val] ])
2299
+ @writer.empty_tag('c:overlap', [['val', val]])
2249
2300
  end
2250
2301
 
2251
2302
  #
@@ -2257,16 +2308,15 @@ module Writexlsx
2257
2308
 
2258
2309
  def write_num_base(tag, data)
2259
2310
  @writer.tag_elements(tag) do
2260
-
2261
2311
  # Write the c:formatCode element.
2262
2312
  write_format_code('General')
2263
2313
 
2264
2314
  # Write the c:ptCount element.
2265
- if data
2266
- count = data.size
2267
- else
2268
- count = 0
2269
- end
2315
+ count = if data
2316
+ data.size
2317
+ else
2318
+ 0
2319
+ end
2270
2320
  write_pt_count(count)
2271
2321
 
2272
2322
  data.each_with_index do |token, i|
@@ -2293,7 +2343,7 @@ module Writexlsx
2293
2343
  end
2294
2344
 
2295
2345
  def write_pts(data)
2296
- data.each_index { |i| write_pt(i, data[i])}
2346
+ data.each_index { |i| write_pt(i, data[i]) }
2297
2347
  end
2298
2348
 
2299
2349
  #
@@ -2307,7 +2357,7 @@ module Writexlsx
2307
2357
  # Write the <c:ptCount> element.
2308
2358
  #
2309
2359
  def write_pt_count(val) # :nodoc:
2310
- @writer.empty_tag('c:ptCount', [ ['val', val] ])
2360
+ @writer.empty_tag('c:ptCount', [['val', val]])
2311
2361
  end
2312
2362
 
2313
2363
  #
@@ -2316,7 +2366,7 @@ module Writexlsx
2316
2366
  def write_pt(idx, value) # :nodoc:
2317
2367
  return unless value
2318
2368
 
2319
- attributes = [ ['idx', idx] ]
2369
+ attributes = [['idx', idx]]
2320
2370
 
2321
2371
  @writer.tag_elements('c:pt', attributes) { write_v(value) }
2322
2372
  end
@@ -2363,6 +2413,7 @@ module Writexlsx
2363
2413
  write_sp_pr(point)
2364
2414
  end
2365
2415
  end
2416
+
2366
2417
  #
2367
2418
  # Write the <c:dLbls> element.
2368
2419
  #
@@ -2371,9 +2422,7 @@ module Writexlsx
2371
2422
 
2372
2423
  @writer.tag_elements('c:dLbls') do
2373
2424
  # Write the custom c:dLbl elements.
2374
- if labels[:custom]
2375
- write_custom_labels(labels, labels[:custom])
2376
- end
2425
+ write_custom_labels(labels, labels[:custom]) if labels[:custom]
2377
2426
  # Write the c:numFmt element.
2378
2427
  write_data_label_number_format(labels[:num_format]) if labels[:num_format]
2379
2428
  # Write the c:spPr element.
@@ -2407,13 +2456,13 @@ module Writexlsx
2407
2456
 
2408
2457
  labels.each do |label|
2409
2458
  index += 1
2410
- next if !ptrue?(label)
2459
+ next unless ptrue?(label)
2411
2460
 
2412
2461
  @writer.tag_elements('c:dLbl') do
2413
2462
  # Write the c:idx element.
2414
2463
  write_idx(index - 1)
2415
2464
 
2416
- if label[:delete] && label[:delete]
2465
+ if label[:delete]
2417
2466
  write_delete(1)
2418
2467
  elsif label[:formula]
2419
2468
  write_custom_label_formula(label)
@@ -2446,7 +2495,7 @@ module Writexlsx
2446
2495
  has_formatting = has_fill_formatting(label)
2447
2496
 
2448
2497
  # Write the c:layout element.
2449
- write_layout()
2498
+ write_layout
2450
2499
 
2451
2500
  @writer.tag_elements('c:tx') do
2452
2501
  # Write the c:rich element.
@@ -2464,9 +2513,7 @@ module Writexlsx
2464
2513
  formula = label[:formula]
2465
2514
  data_id = label[:data_id]
2466
2515
 
2467
- if data_id
2468
- data = @formula_data[data_id]
2469
- end
2516
+ data = @formula_data[data_id] if data_id
2470
2517
 
2471
2518
  # Write the c:layout element.
2472
2519
  write_layout
@@ -2502,35 +2549,35 @@ module Writexlsx
2502
2549
  # Write the <c:showLegendKey> element.
2503
2550
  #
2504
2551
  def write_show_legend_key
2505
- @writer.empty_tag('c:showLegendKey', [ ['val', 1] ])
2552
+ @writer.empty_tag('c:showLegendKey', [['val', 1]])
2506
2553
  end
2507
2554
 
2508
2555
  #
2509
2556
  # Write the <c:showVal> element.
2510
2557
  #
2511
2558
  def write_show_val # :nodoc:
2512
- @writer.empty_tag('c:showVal', [ ['val', 1] ])
2559
+ @writer.empty_tag('c:showVal', [['val', 1]])
2513
2560
  end
2514
2561
 
2515
2562
  #
2516
2563
  # Write the <c:showCatName> element.
2517
2564
  #
2518
2565
  def write_show_cat_name # :nodoc:
2519
- @writer.empty_tag('c:showCatName', [ ['val', 1] ])
2566
+ @writer.empty_tag('c:showCatName', [['val', 1]])
2520
2567
  end
2521
2568
 
2522
2569
  #
2523
2570
  # Write the <c:showSerName> element.
2524
2571
  #
2525
2572
  def write_show_ser_name # :nodoc:
2526
- @writer.empty_tag('c:showSerName', [ ['val', 1] ])
2573
+ @writer.empty_tag('c:showSerName', [['val', 1]])
2527
2574
  end
2528
2575
 
2529
2576
  #
2530
2577
  # Write the <c:showPercent> element.
2531
2578
  #
2532
2579
  def write_show_percent
2533
- @writer.empty_tag('c:showPercent', [ ['val', 1] ])
2580
+ @writer.empty_tag('c:showPercent', [['val', 1]])
2534
2581
  end
2535
2582
 
2536
2583
  #
@@ -2540,25 +2587,39 @@ module Writexlsx
2540
2587
  @writer.data_element('c:separator', data)
2541
2588
  end
2542
2589
 
2543
- #
2544
- # Write the <c:showLeaderLines> element.
2545
- #
2590
+ # Write the <c:showLeaderLines> element. This is different for Pie/Doughnut
2591
+ # charts. Other chart types only supported leader lines after Excel 2015 via
2592
+ # an extension element.
2546
2593
  def write_show_leader_lines
2547
- @writer.empty_tag('c:showLeaderLines', [ ['val', 1] ])
2594
+ uri = '{CE6537A1-D6FC-4f65-9D91-7224C49458BB}'
2595
+ xmlns_c_15 = 'http://schemas.microsoft.com/office/drawing/2012/chart'
2596
+
2597
+ attributes1 = [
2598
+ ['uri', uri],
2599
+ ['xmlns:c15', xmlns_c_15]
2600
+ ]
2601
+
2602
+ attributes2 = [['val', 1]]
2603
+
2604
+ @writer.tag_elements('c:extLst') do
2605
+ @writer.tag_elements('c:ext', attributes1) do
2606
+ @writer.empty_tag('c15:showLeaderLines', attributes2)
2607
+ end
2608
+ end
2548
2609
  end
2549
2610
 
2550
2611
  #
2551
2612
  # Write the <c:dLblPos> element.
2552
2613
  #
2553
2614
  def write_d_lbl_pos(val)
2554
- @writer.empty_tag('c:dLblPos', [ ['val', val] ])
2615
+ @writer.empty_tag('c:dLblPos', [['val', val]])
2555
2616
  end
2556
2617
 
2557
2618
  #
2558
2619
  # Write the <c:delete> element.
2559
2620
  #
2560
2621
  def write_delete(val) # :nodoc:
2561
- @writer.empty_tag('c:delete', [ ['val', val] ])
2622
+ @writer.empty_tag('c:delete', [['val', val]])
2562
2623
  end
2563
2624
 
2564
2625
  #
@@ -2567,7 +2628,7 @@ module Writexlsx
2567
2628
  def write_c_invert_if_negative(invert = nil) # :nodoc:
2568
2629
  return unless ptrue?(invert)
2569
2630
 
2570
- @writer.empty_tag('c:invertIfNegative', [ ['val', 1] ])
2631
+ @writer.empty_tag('c:invertIfNegative', [['val', 1]])
2571
2632
  end
2572
2633
 
2573
2634
  #
@@ -2606,12 +2667,8 @@ module Writexlsx
2606
2667
  def write_error_bars(error_bars)
2607
2668
  return unless ptrue?(error_bars)
2608
2669
 
2609
- if error_bars[:_x_error_bars]
2610
- write_err_bars('x', error_bars[:_x_error_bars])
2611
- end
2612
- if error_bars[:_y_error_bars]
2613
- write_err_bars('y', error_bars[:_y_error_bars])
2614
- end
2670
+ write_err_bars('x', error_bars[:_x_error_bars]) if error_bars[:_x_error_bars]
2671
+ write_err_bars('y', error_bars[:_y_error_bars]) if error_bars[:_y_error_bars]
2615
2672
  end
2616
2673
 
2617
2674
  #
@@ -2655,35 +2712,35 @@ module Writexlsx
2655
2712
  # Write the <c:errDir> element.
2656
2713
  #
2657
2714
  def write_err_dir(val)
2658
- @writer.empty_tag('c:errDir', [ ['val', val] ])
2715
+ @writer.empty_tag('c:errDir', [['val', val]])
2659
2716
  end
2660
2717
 
2661
2718
  #
2662
2719
  # Write the <c:errBarType> element.
2663
2720
  #
2664
2721
  def write_err_bar_type(val)
2665
- @writer.empty_tag('c:errBarType', [ ['val', val] ])
2722
+ @writer.empty_tag('c:errBarType', [['val', val]])
2666
2723
  end
2667
2724
 
2668
2725
  #
2669
2726
  # Write the <c:errValType> element.
2670
2727
  #
2671
2728
  def write_err_val_type(val)
2672
- @writer.empty_tag('c:errValType', [ ['val', val] ])
2729
+ @writer.empty_tag('c:errValType', [['val', val]])
2673
2730
  end
2674
2731
 
2675
2732
  #
2676
2733
  # Write the <c:noEndCap> element.
2677
2734
  #
2678
2735
  def write_no_end_cap
2679
- @writer.empty_tag('c:noEndCap', [ ['val', 1] ])
2736
+ @writer.empty_tag('c:noEndCap', [['val', 1]])
2680
2737
  end
2681
2738
 
2682
2739
  #
2683
2740
  # Write the <c:val> element.
2684
2741
  #
2685
2742
  def write_error_val(val)
2686
- @writer.empty_tag('c:val', [ ['val', val] ])
2743
+ @writer.empty_tag('c:val', [['val', val]])
2687
2744
  end
2688
2745
 
2689
2746
  #
@@ -2734,7 +2791,7 @@ module Writexlsx
2734
2791
  def write_gap_width(val = nil)
2735
2792
  return unless val
2736
2793
 
2737
- @writer.empty_tag('c:gapWidth', [ ['val', val] ])
2794
+ @writer.empty_tag('c:gapWidth', [['val', val]])
2738
2795
  end
2739
2796
 
2740
2797
  #
@@ -2757,7 +2814,7 @@ module Writexlsx
2757
2814
  def write_c_smooth(smooth)
2758
2815
  return unless ptrue?(smooth)
2759
2816
 
2760
- attributes = [ ['val', 1] ]
2817
+ attributes = [['val', 1]]
2761
2818
 
2762
2819
  @writer.empty_tag('c:smooth', attributes)
2763
2820
  end
@@ -2768,7 +2825,7 @@ module Writexlsx
2768
2825
  def write_disp_units(units, display)
2769
2826
  return unless ptrue?(units)
2770
2827
 
2771
- attributes = [ ['val', units] ]
2828
+ attributes = [['val', units]]
2772
2829
 
2773
2830
  @writer.tag_elements('c:dispUnits') do
2774
2831
  @writer.empty_tag('c:builtInUnit', attributes)
@@ -2777,7 +2834,7 @@ module Writexlsx
2777
2834
  @writer.empty_tag('c:layout')
2778
2835
  end
2779
2836
  end
2780
- end
2837
+ end
2781
2838
  end
2782
2839
 
2783
2840
  #
@@ -2785,13 +2842,12 @@ module Writexlsx
2785
2842
  #
2786
2843
  def write_a_grad_fill(gradient)
2787
2844
  attributes = [
2788
- ['flip', 'none'],
2845
+ %w[flip none],
2789
2846
  ['rotWithShape', 1]
2790
2847
  ]
2791
2848
  attributes = [] if gradient[:type] == 'linear'
2792
2849
 
2793
2850
  @writer.tag_elements('a:gradFill', attributes) do
2794
-
2795
2851
  # Write the a:gsLst element.
2796
2852
  write_a_gs_lst(gradient)
2797
2853
 
@@ -2816,17 +2872,16 @@ module Writexlsx
2816
2872
  colors = gradient[:colors]
2817
2873
 
2818
2874
  @writer.tag_elements('a:gsLst') do
2819
- (0..colors.size-1).each do |i|
2875
+ (0..colors.size - 1).each do |i|
2820
2876
  pos = (positions[i] * 1000).to_i
2821
2877
 
2822
- attributes = [ ['pos', pos] ]
2878
+ attributes = [['pos', pos]]
2823
2879
  @writer.tag_elements('a:gs', attributes) do
2824
-
2825
2880
  color = color(colors[i])
2826
2881
 
2827
2882
  # Write the a:srgbClr element.
2828
2883
  # TODO: Wait for a feature request to support transparency.
2829
- write_a_srgb_clr( color )
2884
+ write_a_srgb_clr(color)
2830
2885
  end
2831
2886
  end
2832
2887
  end
@@ -2836,13 +2891,13 @@ module Writexlsx
2836
2891
  # Write the <a:lin> element.
2837
2892
  #
2838
2893
  def write_a_lin(angle)
2839
- scaled = 0
2894
+ scaled = 0
2840
2895
 
2841
- angle = (60000 * angle).to_i
2896
+ angle = (60000 * angle).to_i
2842
2897
 
2843
- attributes = [
2844
- ['ang', angle],
2845
- ['scaled', scaled]
2898
+ attributes = [
2899
+ ['ang', angle],
2900
+ ['scaled', scaled]
2846
2901
  ]
2847
2902
 
2848
2903
  @writer.empty_tag('a:lin', attributes)
@@ -2852,7 +2907,7 @@ module Writexlsx
2852
2907
  # Write the <a:path> element.
2853
2908
  #
2854
2909
  def write_a_path(type)
2855
- attributes = [ ['path', type] ]
2910
+ attributes = [['path', type]]
2856
2911
 
2857
2912
  @writer.tag_elements('a:path', attributes) do
2858
2913
  # Write the a:fillToRect element.
@@ -2864,21 +2919,19 @@ module Writexlsx
2864
2919
  # Write the <a:fillToRect> element.
2865
2920
  #
2866
2921
  def write_a_fill_to_rect(type)
2867
- attributes = []
2868
-
2869
- if type == 'shape'
2870
- attributes = [
2871
- ['l' , 50000],
2872
- ['t' , 50000],
2873
- ['r' , 50000],
2874
- ['b' , 50000]
2875
- ]
2876
- else
2877
- attributes = [
2878
- ['l', 100000],
2879
- ['t', 100000]
2880
- ]
2881
- end
2922
+ attributes = if type == 'shape'
2923
+ [
2924
+ ['l', 50000],
2925
+ ['t', 50000],
2926
+ ['r', 50000],
2927
+ ['b', 50000]
2928
+ ]
2929
+ else
2930
+ [
2931
+ ['l', 100000],
2932
+ ['t', 100000]
2933
+ ]
2934
+ end
2882
2935
 
2883
2936
  @writer.empty_tag('a:fillToRect', attributes)
2884
2937
  end
@@ -2887,16 +2940,14 @@ module Writexlsx
2887
2940
  # Write the <a:tileRect> element.
2888
2941
  #
2889
2942
  def write_a_tile_rect(type)
2890
- attributes = []
2891
-
2892
- if type == 'shape'
2893
- attributes = []
2894
- else
2895
- attributes = [
2896
- ['r', -100000],
2897
- ['b', -100000]
2898
- ]
2899
- end
2943
+ attributes = if type == 'shape'
2944
+ []
2945
+ else
2946
+ [
2947
+ ['r', -100000],
2948
+ ['b', -100000]
2949
+ ]
2950
+ end
2900
2951
 
2901
2952
  @writer.empty_tag('a:tileRect', attributes)
2902
2953
  end
@@ -2905,7 +2956,7 @@ module Writexlsx
2905
2956
  # Write the <a:pattFill> element.
2906
2957
  #
2907
2958
  def write_a_patt_fill(pattern)
2908
- attributes = [ ['prst', pattern[:pattern]] ]
2959
+ attributes = [['prst', pattern[:pattern]]]
2909
2960
 
2910
2961
  @writer.tag_elements('a:pattFill', attributes) do
2911
2962
  write_a_fg_clr(pattern[:fg_color])