rubyXL 1.2.10 → 3.4.33

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 (518) hide show
  1. checksums.yaml +7 -0
  2. data/.circleci/config.yml +60 -0
  3. data/.codeclimate.yml +3 -0
  4. data/.rubocop.yml +124 -0
  5. data/CHANGELOG.md +12 -0
  6. data/Gemfile +18 -14
  7. data/LICENSE.txt +1 -1
  8. data/README.rdoc +170 -100
  9. data/Rakefile +76 -26
  10. data/VERSION +1 -1
  11. data/lib/rubyXL/cell.rb +13 -447
  12. data/lib/rubyXL/convenience_methods/cell.rb +276 -0
  13. data/lib/rubyXL/convenience_methods/color.rb +156 -0
  14. data/lib/rubyXL/convenience_methods/font.rb +63 -0
  15. data/lib/rubyXL/convenience_methods/workbook.rb +137 -0
  16. data/lib/rubyXL/convenience_methods/worksheet.rb +734 -0
  17. data/lib/rubyXL/convenience_methods.rb +5 -0
  18. data/lib/rubyXL/objects/border.rb +71 -0
  19. data/lib/rubyXL/objects/calculation_chain.rb +31 -0
  20. data/lib/rubyXL/objects/cell_style.rb +63 -0
  21. data/lib/rubyXL/objects/chartsheet.rb +88 -0
  22. data/lib/rubyXL/objects/color.rb +25 -0
  23. data/lib/rubyXL/objects/column_range.rb +93 -0
  24. data/lib/rubyXL/objects/comments.rb +44 -0
  25. data/lib/rubyXL/objects/connection.rb +175 -0
  26. data/lib/rubyXL/objects/container_nodes.rb +131 -0
  27. data/lib/rubyXL/objects/content_types.rb +74 -0
  28. data/lib/rubyXL/objects/data_validation.rb +37 -0
  29. data/lib/rubyXL/objects/document_properties.rb +156 -0
  30. data/lib/rubyXL/objects/extensions.rb +51 -0
  31. data/lib/rubyXL/objects/external_links.rb +115 -0
  32. data/lib/rubyXL/objects/fill.rb +52 -0
  33. data/lib/rubyXL/objects/filters.rb +118 -0
  34. data/lib/rubyXL/objects/font.rb +43 -0
  35. data/lib/rubyXL/objects/formula.rb +22 -0
  36. data/lib/rubyXL/objects/ooxml_object.rb +469 -0
  37. data/lib/rubyXL/objects/query_table.rb +106 -0
  38. data/lib/rubyXL/objects/reference.rb +119 -0
  39. data/lib/rubyXL/objects/relationships.rb +213 -0
  40. data/lib/rubyXL/objects/root.rb +84 -0
  41. data/lib/rubyXL/objects/shared_strings.rb +67 -0
  42. data/lib/rubyXL/objects/sheet_common.rb +49 -0
  43. data/lib/rubyXL/objects/sheet_data.rb +219 -0
  44. data/lib/rubyXL/objects/simple_types.rb +249 -0
  45. data/lib/rubyXL/objects/storage.rb +193 -0
  46. data/lib/rubyXL/objects/stylesheet.rb +224 -0
  47. data/lib/rubyXL/objects/text.rb +92 -0
  48. data/lib/rubyXL/objects/theme.rb +1730 -0
  49. data/lib/rubyXL/objects/workbook.rb +572 -0
  50. data/lib/rubyXL/objects/worksheet.rb +762 -0
  51. data/lib/rubyXL/parser.rb +18 -459
  52. data/lib/rubyXL/worksheet.rb +73 -1461
  53. data/lib/rubyXL.rb +9 -7
  54. data/rdoc/README_rdoc.html +534 -0
  55. data/rdoc/RubyXL/AExtension.html +187 -0
  56. data/rdoc/RubyXL/AExtensionStorageArea.html +97 -0
  57. data/rdoc/RubyXL/ActiveX.html +156 -0
  58. data/rdoc/RubyXL/ActiveXBinary.html +106 -0
  59. data/rdoc/RubyXL/AdjustHandleList.html +99 -0
  60. data/rdoc/RubyXL/Alignment.html +99 -0
  61. data/rdoc/RubyXL/AlternateContent.html +97 -0
  62. data/rdoc/RubyXL/AlternateUrls.html +99 -0
  63. data/rdoc/RubyXL/Authors.html +99 -0
  64. data/rdoc/RubyXL/AutoFilter.html +99 -0
  65. data/rdoc/RubyXL/AutoFilterColumn.html +99 -0
  66. data/rdoc/RubyXL/BinaryImageFile.html +108 -0
  67. data/rdoc/RubyXL/BodyProperties.html +99 -0
  68. data/rdoc/RubyXL/BooleanNode.html +97 -0
  69. data/rdoc/RubyXL/BooleanValue.html +97 -0
  70. data/rdoc/RubyXL/Border.html +223 -0
  71. data/rdoc/RubyXL/BorderEdge.html +160 -0
  72. data/rdoc/RubyXL/Borders.html +138 -0
  73. data/rdoc/RubyXL/Break.html +99 -0
  74. data/rdoc/RubyXL/BreakList.html +99 -0
  75. data/rdoc/RubyXL/CT_AdjPoint2D.html +99 -0
  76. data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +99 -0
  77. data/rdoc/RubyXL/CT_AlphaModulateEffect.html +99 -0
  78. data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +99 -0
  79. data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +99 -0
  80. data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +99 -0
  81. data/rdoc/RubyXL/CT_Backdrop.html +99 -0
  82. data/rdoc/RubyXL/CT_Bevel.html +99 -0
  83. data/rdoc/RubyXL/CT_BiLevelEffect.html +99 -0
  84. data/rdoc/RubyXL/CT_BlendEffect.html +99 -0
  85. data/rdoc/RubyXL/CT_Blip.html +99 -0
  86. data/rdoc/RubyXL/CT_BlipFillProperties.html +99 -0
  87. data/rdoc/RubyXL/CT_BlurEffect.html +99 -0
  88. data/rdoc/RubyXL/CT_Camera.html +99 -0
  89. data/rdoc/RubyXL/CT_Color.html +99 -0
  90. data/rdoc/RubyXL/CT_ColorChangeEffect.html +99 -0
  91. data/rdoc/RubyXL/CT_ColorMapping.html +99 -0
  92. data/rdoc/RubyXL/CT_ColorScheme.html +99 -0
  93. data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +99 -0
  94. data/rdoc/RubyXL/CT_ConnectionSite.html +99 -0
  95. data/rdoc/RubyXL/CT_ConnectionSiteList.html +99 -0
  96. data/rdoc/RubyXL/CT_DashStop.html +99 -0
  97. data/rdoc/RubyXL/CT_DashStopList.html +99 -0
  98. data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +99 -0
  99. data/rdoc/RubyXL/CT_DuotoneEffect.html +99 -0
  100. data/rdoc/RubyXL/CT_EffectContainer.html +99 -0
  101. data/rdoc/RubyXL/CT_EffectList.html +99 -0
  102. data/rdoc/RubyXL/CT_EffectReference.html +99 -0
  103. data/rdoc/RubyXL/CT_EffectStyleItem.html +99 -0
  104. data/rdoc/RubyXL/CT_EffectStyleList.html +99 -0
  105. data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +99 -0
  106. data/rdoc/RubyXL/CT_FillEffect.html +99 -0
  107. data/rdoc/RubyXL/CT_FillOverlayEffect.html +99 -0
  108. data/rdoc/RubyXL/CT_FillStyleList.html +99 -0
  109. data/rdoc/RubyXL/CT_FlatText.html +99 -0
  110. data/rdoc/RubyXL/CT_FontCollection.html +99 -0
  111. data/rdoc/RubyXL/CT_FontReference.html +99 -0
  112. data/rdoc/RubyXL/CT_GeomGuideList.html +99 -0
  113. data/rdoc/RubyXL/CT_GlowEffect.html +99 -0
  114. data/rdoc/RubyXL/CT_GradientFillProperties.html +99 -0
  115. data/rdoc/RubyXL/CT_GradientStop.html +99 -0
  116. data/rdoc/RubyXL/CT_GradientStopList.html +99 -0
  117. data/rdoc/RubyXL/CT_HSLEffect.html +99 -0
  118. data/rdoc/RubyXL/CT_HslColor.html +99 -0
  119. data/rdoc/RubyXL/CT_Hyperlink.html +99 -0
  120. data/rdoc/RubyXL/CT_InnerShadowEffect.html +99 -0
  121. data/rdoc/RubyXL/CT_LightRig.html +99 -0
  122. data/rdoc/RubyXL/CT_LineEndProperties.html +99 -0
  123. data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +99 -0
  124. data/rdoc/RubyXL/CT_LineProperties.html +99 -0
  125. data/rdoc/RubyXL/CT_LineStyleList.html +99 -0
  126. data/rdoc/RubyXL/CT_LinearShadeProperties.html +99 -0
  127. data/rdoc/RubyXL/CT_LuminanceEffect.html +99 -0
  128. data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +99 -0
  129. data/rdoc/RubyXL/CT_OuterShadowEffect.html +99 -0
  130. data/rdoc/RubyXL/CT_Path2D.html +99 -0
  131. data/rdoc/RubyXL/CT_Path2DArcTo.html +99 -0
  132. data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +99 -0
  133. data/rdoc/RubyXL/CT_Path2DList.html +99 -0
  134. data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +99 -0
  135. data/rdoc/RubyXL/CT_Path2DTo.html +99 -0
  136. data/rdoc/RubyXL/CT_PathShadeProperties.html +99 -0
  137. data/rdoc/RubyXL/CT_PatternFillProperties.html +99 -0
  138. data/rdoc/RubyXL/CT_Point3D.html +99 -0
  139. data/rdoc/RubyXL/CT_PolarAdjustHandle.html +99 -0
  140. data/rdoc/RubyXL/CT_PresetColor.html +99 -0
  141. data/rdoc/RubyXL/CT_PresetLineDashProperties.html +99 -0
  142. data/rdoc/RubyXL/CT_PresetShadowEffect.html +99 -0
  143. data/rdoc/RubyXL/CT_PresetTextShape.html +99 -0
  144. data/rdoc/RubyXL/CT_ReflectionEffect.html +99 -0
  145. data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +99 -0
  146. data/rdoc/RubyXL/CT_RelativeRect.html +99 -0
  147. data/rdoc/RubyXL/CT_SRgbColor.html +99 -0
  148. data/rdoc/RubyXL/CT_ScRgbColor.html +99 -0
  149. data/rdoc/RubyXL/CT_Scene3D.html +99 -0
  150. data/rdoc/RubyXL/CT_SchemeColor.html +99 -0
  151. data/rdoc/RubyXL/CT_Shape3D.html +99 -0
  152. data/rdoc/RubyXL/CT_ShapeStyle.html +99 -0
  153. data/rdoc/RubyXL/CT_SoftEdgesEffect.html +99 -0
  154. data/rdoc/RubyXL/CT_SphereCoords.html +99 -0
  155. data/rdoc/RubyXL/CT_StretchInfoProperties.html +99 -0
  156. data/rdoc/RubyXL/CT_StyleMatrix.html +99 -0
  157. data/rdoc/RubyXL/CT_StyleMatrixReference.html +99 -0
  158. data/rdoc/RubyXL/CT_SupplementalFont.html +99 -0
  159. data/rdoc/RubyXL/CT_SystemColor.html +99 -0
  160. data/rdoc/RubyXL/CT_TextAutonumberBullet.html +99 -0
  161. data/rdoc/RubyXL/CT_TextBlipBullet.html +99 -0
  162. data/rdoc/RubyXL/CT_TextCharBullet.html +99 -0
  163. data/rdoc/RubyXL/CT_TextCharacterProperties.html +99 -0
  164. data/rdoc/RubyXL/CT_TextFont.html +99 -0
  165. data/rdoc/RubyXL/CT_TextListStyle.html +99 -0
  166. data/rdoc/RubyXL/CT_TextNormalAutofit.html +99 -0
  167. data/rdoc/RubyXL/CT_TextParagraphProperties.html +99 -0
  168. data/rdoc/RubyXL/CT_TextSpacing.html +99 -0
  169. data/rdoc/RubyXL/CT_TextTabStop.html +99 -0
  170. data/rdoc/RubyXL/CT_TextTabStopList.html +99 -0
  171. data/rdoc/RubyXL/CT_TileInfoProperties.html +99 -0
  172. data/rdoc/RubyXL/CT_TintEffect.html +99 -0
  173. data/rdoc/RubyXL/CT_Transform2D.html +99 -0
  174. data/rdoc/RubyXL/CT_TransformEffect.html +99 -0
  175. data/rdoc/RubyXL/CT_Vector3D.html +99 -0
  176. data/rdoc/RubyXL/CT_XYAdjustHandle.html +99 -0
  177. data/rdoc/RubyXL/CalculationChain.html +149 -0
  178. data/rdoc/RubyXL/CalculationChainCell.html +99 -0
  179. data/rdoc/RubyXL/CalculationProperties.html +99 -0
  180. data/rdoc/RubyXL/Cell.html +510 -0
  181. data/rdoc/RubyXL/CellConvenienceMethods.html +1077 -0
  182. data/rdoc/RubyXL/CellExt.html +99 -0
  183. data/rdoc/RubyXL/CellSmartTag.html +99 -0
  184. data/rdoc/RubyXL/CellSmartTagProperty.html +99 -0
  185. data/rdoc/RubyXL/CellSmartTags.html +99 -0
  186. data/rdoc/RubyXL/CellStyle.html +99 -0
  187. data/rdoc/RubyXL/CellStyleXFs.html +138 -0
  188. data/rdoc/RubyXL/CellStyles.html +138 -0
  189. data/rdoc/RubyXL/CellValue.html +139 -0
  190. data/rdoc/RubyXL/CellWatch.html +99 -0
  191. data/rdoc/RubyXL/CellWatches.html +99 -0
  192. data/rdoc/RubyXL/CellXFs.html +139 -0
  193. data/rdoc/RubyXL/ChartColorsFile.html +108 -0
  194. data/rdoc/RubyXL/ChartFile.html +160 -0
  195. data/rdoc/RubyXL/ChartStyleFile.html +108 -0
  196. data/rdoc/RubyXL/ChartUserShapesFile.html +108 -0
  197. data/rdoc/RubyXL/Chartsheet.html +213 -0
  198. data/rdoc/RubyXL/ChartsheetPageSetup.html +99 -0
  199. data/rdoc/RubyXL/ChartsheetProperties.html +99 -0
  200. data/rdoc/RubyXL/ChartsheetProtection.html +99 -0
  201. data/rdoc/RubyXL/ChartsheetView.html +99 -0
  202. data/rdoc/RubyXL/ChartsheetViews.html +99 -0
  203. data/rdoc/RubyXL/Color.html +151 -0
  204. data/rdoc/RubyXL/ColorConvenienceClasses/HlsColor.html +246 -0
  205. data/rdoc/RubyXL/ColorConvenienceClasses/RgbColor.html +285 -0
  206. data/rdoc/RubyXL/ColorConvenienceClasses.html +91 -0
  207. data/rdoc/RubyXL/ColorConvenienceMethods.html +139 -0
  208. data/rdoc/RubyXL/ColorFilter.html +99 -0
  209. data/rdoc/RubyXL/ColorScale.html +99 -0
  210. data/rdoc/RubyXL/ColorSet.html +99 -0
  211. data/rdoc/RubyXL/Colors.html +99 -0
  212. data/rdoc/RubyXL/ColumnRange.html +230 -0
  213. data/rdoc/RubyXL/ColumnRanges.html +237 -0
  214. data/rdoc/RubyXL/Comment.html +99 -0
  215. data/rdoc/RubyXL/CommentList.html +99 -0
  216. data/rdoc/RubyXL/CommentsFile.html +165 -0
  217. data/rdoc/RubyXL/ConditionalFormatValue.html +99 -0
  218. data/rdoc/RubyXL/ConditionalFormatting.html +99 -0
  219. data/rdoc/RubyXL/ConditionalFormattingRule.html +99 -0
  220. data/rdoc/RubyXL/Connection.html +99 -0
  221. data/rdoc/RubyXL/ConnectionTable.html +99 -0
  222. data/rdoc/RubyXL/ConnectionTables.html +99 -0
  223. data/rdoc/RubyXL/ConnectionTextField.html +99 -0
  224. data/rdoc/RubyXL/ConnectionTextFields.html +99 -0
  225. data/rdoc/RubyXL/Connections.html +149 -0
  226. data/rdoc/RubyXL/ContentTypeDefault.html +97 -0
  227. data/rdoc/RubyXL/ContentTypeOverride.html +97 -0
  228. data/rdoc/RubyXL/ContentTypes.html +211 -0
  229. data/rdoc/RubyXL/ControlPropertiesFile.html +108 -0
  230. data/rdoc/RubyXL/CorePropertiesFile.html +355 -0
  231. data/rdoc/RubyXL/CustomColor.html +99 -0
  232. data/rdoc/RubyXL/CustomColorList.html +99 -0
  233. data/rdoc/RubyXL/CustomFilter.html +99 -0
  234. data/rdoc/RubyXL/CustomFilters.html +99 -0
  235. data/rdoc/RubyXL/CustomGeometry.html +99 -0
  236. data/rdoc/RubyXL/CustomProperties.html +99 -0
  237. data/rdoc/RubyXL/CustomPropertiesFile.html +108 -0
  238. data/rdoc/RubyXL/CustomProperty.html +99 -0
  239. data/rdoc/RubyXL/CustomPropertyFile.html +108 -0
  240. data/rdoc/RubyXL/CustomSheetView.html +99 -0
  241. data/rdoc/RubyXL/CustomSheetViews.html +99 -0
  242. data/rdoc/RubyXL/CustomWorkbookView.html +99 -0
  243. data/rdoc/RubyXL/CustomWorkbookViews.html +99 -0
  244. data/rdoc/RubyXL/CustomXMLFile.html +106 -0
  245. data/rdoc/RubyXL/DXF.html +99 -0
  246. data/rdoc/RubyXL/DXFs.html +99 -0
  247. data/rdoc/RubyXL/DataBar.html +99 -0
  248. data/rdoc/RubyXL/DataConsolidate.html +99 -0
  249. data/rdoc/RubyXL/DataConsolidationReference.html +99 -0
  250. data/rdoc/RubyXL/DataConsolidationReferences.html +99 -0
  251. data/rdoc/RubyXL/DataType.html +114 -0
  252. data/rdoc/RubyXL/DataValidation.html +99 -0
  253. data/rdoc/RubyXL/DataValidations.html +99 -0
  254. data/rdoc/RubyXL/DateGroupItem.html +99 -0
  255. data/rdoc/RubyXL/DefinedName.html +99 -0
  256. data/rdoc/RubyXL/DefinedNameExt.html +99 -0
  257. data/rdoc/RubyXL/DefinedNames.html +99 -0
  258. data/rdoc/RubyXL/DefinedNamesExt.html +99 -0
  259. data/rdoc/RubyXL/DocumentPropertiesFile.html +213 -0
  260. data/rdoc/RubyXL/DrawingFile.html +159 -0
  261. data/rdoc/RubyXL/DynamicFilter.html +99 -0
  262. data/rdoc/RubyXL/EmbeddedControl.html +99 -0
  263. data/rdoc/RubyXL/EmbeddedControls.html +99 -0
  264. data/rdoc/RubyXL/Extension.html +99 -0
  265. data/rdoc/RubyXL/ExtensionStorageArea.html +99 -0
  266. data/rdoc/RubyXL/Extents.html +99 -0
  267. data/rdoc/RubyXL/ExternalBook.html +99 -0
  268. data/rdoc/RubyXL/ExternalLinksFile.html +155 -0
  269. data/rdoc/RubyXL/ExternalReference.html +99 -0
  270. data/rdoc/RubyXL/ExternalReferences.html +99 -0
  271. data/rdoc/RubyXL/ExtraColorSchemeList.html +99 -0
  272. data/rdoc/RubyXL/FieldItem.html +99 -0
  273. data/rdoc/RubyXL/FileRecoveryProperties.html +99 -0
  274. data/rdoc/RubyXL/FileSharing.html +99 -0
  275. data/rdoc/RubyXL/FileVersion.html +99 -0
  276. data/rdoc/RubyXL/Fill.html +138 -0
  277. data/rdoc/RubyXL/Fills.html +138 -0
  278. data/rdoc/RubyXL/FilterContainer.html +99 -0
  279. data/rdoc/RubyXL/FloatNode.html +97 -0
  280. data/rdoc/RubyXL/FloatValue.html +97 -0
  281. data/rdoc/RubyXL/Font.html +148 -0
  282. data/rdoc/RubyXL/FontConvenienceMethods.html +442 -0
  283. data/rdoc/RubyXL/FontScheme.html +99 -0
  284. data/rdoc/RubyXL/Fonts.html +138 -0
  285. data/rdoc/RubyXL/Formula.html +99 -0
  286. data/rdoc/RubyXL/FunctionGroup.html +99 -0
  287. data/rdoc/RubyXL/FunctionGroups.html +99 -0
  288. data/rdoc/RubyXL/GenericStorageObject.html +241 -0
  289. data/rdoc/RubyXL/GradientFill.html +99 -0
  290. data/rdoc/RubyXL/HeaderFooterSettings.html +99 -0
  291. data/rdoc/RubyXL/Hyperlink.html +99 -0
  292. data/rdoc/RubyXL/HyperlinkRelFile.html +106 -0
  293. data/rdoc/RubyXL/Hyperlinks.html +99 -0
  294. data/rdoc/RubyXL/IconFilter.html +99 -0
  295. data/rdoc/RubyXL/IconSet.html +99 -0
  296. data/rdoc/RubyXL/IgnoredError.html +99 -0
  297. data/rdoc/RubyXL/IgnoredErrors.html +99 -0
  298. data/rdoc/RubyXL/IndexedColors.html +99 -0
  299. data/rdoc/RubyXL/InputCells.html +99 -0
  300. data/rdoc/RubyXL/IntegerNode.html +97 -0
  301. data/rdoc/RubyXL/IntegerValue.html +97 -0
  302. data/rdoc/RubyXL/LegacyCell.html +130 -0
  303. data/rdoc/RubyXL/LegacyWorksheet.html +306 -0
  304. data/rdoc/RubyXL/MRUColors.html +99 -0
  305. data/rdoc/RubyXL/MacrosFile.html +108 -0
  306. data/rdoc/RubyXL/MergedCell.html +99 -0
  307. data/rdoc/RubyXL/MergedCells.html +99 -0
  308. data/rdoc/RubyXL/NumFmt.html +99 -0
  309. data/rdoc/RubyXL/NumberFormat.html +139 -0
  310. data/rdoc/RubyXL/NumberFormats.html +147 -0
  311. data/rdoc/RubyXL/OLEObject.html +99 -0
  312. data/rdoc/RubyXL/OLEObjectFile.html +108 -0
  313. data/rdoc/RubyXL/OLEObjects.html +99 -0
  314. data/rdoc/RubyXL/OLESize.html +99 -0
  315. data/rdoc/RubyXL/OOXMLContainerObject.html +309 -0
  316. data/rdoc/RubyXL/OOXMLIgnored.html +167 -0
  317. data/rdoc/RubyXL/OOXMLObject.html +107 -0
  318. data/rdoc/RubyXL/OOXMLObjectClassMethods.html +455 -0
  319. data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +442 -0
  320. data/rdoc/RubyXL/OOXMLRelationshipsFile.html +470 -0
  321. data/rdoc/RubyXL/OOXMLTopLevelObject.html +297 -0
  322. data/rdoc/RubyXL/OdbcOleDbProperties.html +99 -0
  323. data/rdoc/RubyXL/Offset.html +99 -0
  324. data/rdoc/RubyXL/OlapProperties.html +99 -0
  325. data/rdoc/RubyXL/OleItem.html +99 -0
  326. data/rdoc/RubyXL/OleItems.html +99 -0
  327. data/rdoc/RubyXL/OleLink.html +99 -0
  328. data/rdoc/RubyXL/OutlineProperties.html +99 -0
  329. data/rdoc/RubyXL/PageMargins.html +99 -0
  330. data/rdoc/RubyXL/PageSetup.html +99 -0
  331. data/rdoc/RubyXL/PageSetupProperties.html +99 -0
  332. data/rdoc/RubyXL/Pane.html +99 -0
  333. data/rdoc/RubyXL/Parser.html +174 -0
  334. data/rdoc/RubyXL/PatternFill.html +99 -0
  335. data/rdoc/RubyXL/PersonMetadata.html +108 -0
  336. data/rdoc/RubyXL/PhoneticProperties.html +99 -0
  337. data/rdoc/RubyXL/PhoneticRun.html +99 -0
  338. data/rdoc/RubyXL/PivotArea.html +99 -0
  339. data/rdoc/RubyXL/PivotCache.html +99 -0
  340. data/rdoc/RubyXL/PivotCacheDefinitionFile.html +116 -0
  341. data/rdoc/RubyXL/PivotCacheRecordsFile.html +108 -0
  342. data/rdoc/RubyXL/PivotCaches.html +99 -0
  343. data/rdoc/RubyXL/PivotReference.html +99 -0
  344. data/rdoc/RubyXL/PivotReferences.html +99 -0
  345. data/rdoc/RubyXL/PivotTableFile.html +116 -0
  346. data/rdoc/RubyXL/PivotTableSelection.html +99 -0
  347. data/rdoc/RubyXL/PresetGeometry.html +99 -0
  348. data/rdoc/RubyXL/PrintOptions.html +99 -0
  349. data/rdoc/RubyXL/PrinterSettingsFile.html +108 -0
  350. data/rdoc/RubyXL/ProtectedRange.html +99 -0
  351. data/rdoc/RubyXL/ProtectedRanges.html +99 -0
  352. data/rdoc/RubyXL/Protection.html +99 -0
  353. data/rdoc/RubyXL/QueryParameter.html +99 -0
  354. data/rdoc/RubyXL/QueryParameters.html +99 -0
  355. data/rdoc/RubyXL/QueryTable.html +157 -0
  356. data/rdoc/RubyXL/QueryTableDeletedField.html +99 -0
  357. data/rdoc/RubyXL/QueryTableDeletedFields.html +99 -0
  358. data/rdoc/RubyXL/QueryTableField.html +99 -0
  359. data/rdoc/RubyXL/QueryTableFields.html +99 -0
  360. data/rdoc/RubyXL/QueryTableRefresh.html +99 -0
  361. data/rdoc/RubyXL/RID.html +97 -0
  362. data/rdoc/RubyXL/RawOOXML.html +187 -0
  363. data/rdoc/RubyXL/Reference.html +510 -0
  364. data/rdoc/RubyXL/Relationship.html +97 -0
  365. data/rdoc/RubyXL/RelationshipSupport/ClassMehods.html +131 -0
  366. data/rdoc/RubyXL/RelationshipSupport.html +336 -0
  367. data/rdoc/RubyXL/RevisionPointer.html +99 -0
  368. data/rdoc/RubyXL/RichText.html +141 -0
  369. data/rdoc/RubyXL/RichTextRun.html +138 -0
  370. data/rdoc/RubyXL/Row.html +357 -0
  371. data/rdoc/RubyXL/RowExt.html +99 -0
  372. data/rdoc/RubyXL/RunProperties.html +99 -0
  373. data/rdoc/RubyXL/Scenario.html +99 -0
  374. data/rdoc/RubyXL/Scenarios.html +99 -0
  375. data/rdoc/RubyXL/Selection.html +146 -0
  376. data/rdoc/RubyXL/ShapeGuide.html +99 -0
  377. data/rdoc/RubyXL/ShapeTextRectangle.html +99 -0
  378. data/rdoc/RubyXL/SharedStringsTable.html +328 -0
  379. data/rdoc/RubyXL/Sheet.html +99 -0
  380. data/rdoc/RubyXL/SheetCalculationProperties.html +99 -0
  381. data/rdoc/RubyXL/SheetData.html +162 -0
  382. data/rdoc/RubyXL/SheetDataExt.html +99 -0
  383. data/rdoc/RubyXL/SheetDataSet.html +99 -0
  384. data/rdoc/RubyXL/SheetMetadata.html +108 -0
  385. data/rdoc/RubyXL/SheetName.html +99 -0
  386. data/rdoc/RubyXL/SheetNames.html +99 -0
  387. data/rdoc/RubyXL/Sheets.html +99 -0
  388. data/rdoc/RubyXL/SlicerCacheFile.html +108 -0
  389. data/rdoc/RubyXL/SlicerFile.html +108 -0
  390. data/rdoc/RubyXL/SmartTagProperties.html +99 -0
  391. data/rdoc/RubyXL/SmartTagType.html +99 -0
  392. data/rdoc/RubyXL/SmartTagTypes.html +99 -0
  393. data/rdoc/RubyXL/SmartTags.html +99 -0
  394. data/rdoc/RubyXL/SortCondition.html +99 -0
  395. data/rdoc/RubyXL/SortState.html +99 -0
  396. data/rdoc/RubyXL/Sqref.html +167 -0
  397. data/rdoc/RubyXL/Stop.html +99 -0
  398. data/rdoc/RubyXL/StringNode.html +97 -0
  399. data/rdoc/RubyXL/StringNodeW3C.html +167 -0
  400. data/rdoc/RubyXL/StringValue.html +97 -0
  401. data/rdoc/RubyXL/Stylesheet.html +281 -0
  402. data/rdoc/RubyXL/TableFile.html +108 -0
  403. data/rdoc/RubyXL/TableParts.html +97 -0
  404. data/rdoc/RubyXL/TableStyle.html +99 -0
  405. data/rdoc/RubyXL/TableStyles.html +99 -0
  406. data/rdoc/RubyXL/Text.html +175 -0
  407. data/rdoc/RubyXL/TextImportSettings.html +99 -0
  408. data/rdoc/RubyXL/Theme.html +535 -0
  409. data/rdoc/RubyXL/ThemeElements.html +99 -0
  410. data/rdoc/RubyXL/ThumbnailFile.html +108 -0
  411. data/rdoc/RubyXL/Top10.html +99 -0
  412. data/rdoc/RubyXL/VMLDrawingFile.html +116 -0
  413. data/rdoc/RubyXL/Variant.html +99 -0
  414. data/rdoc/RubyXL/Vector.html +142 -0
  415. data/rdoc/RubyXL/VectorValue.html +97 -0
  416. data/rdoc/RubyXL/VisualProperties.html +99 -0
  417. data/rdoc/RubyXL/WebPublishObject.html +99 -0
  418. data/rdoc/RubyXL/WebPublishObjects.html +99 -0
  419. data/rdoc/RubyXL/WebPublishingItem.html +99 -0
  420. data/rdoc/RubyXL/WebPublishingItems.html +99 -0
  421. data/rdoc/RubyXL/WebPublishingProperties.html +99 -0
  422. data/rdoc/RubyXL/WebQueryProperties.html +99 -0
  423. data/rdoc/RubyXL/Workbook.html +948 -0
  424. data/rdoc/RubyXL/WorkbookConvenienceMethods.html +596 -0
  425. data/rdoc/RubyXL/WorkbookProperties.html +99 -0
  426. data/rdoc/RubyXL/WorkbookProtection.html +99 -0
  427. data/rdoc/RubyXL/WorkbookRoot.html +325 -0
  428. data/rdoc/RubyXL/WorkbookView.html +99 -0
  429. data/rdoc/RubyXL/WorkbookViews.html +99 -0
  430. data/rdoc/RubyXL/Worksheet.html +418 -0
  431. data/rdoc/RubyXL/WorksheetConvenienceMethods.html +2205 -0
  432. data/rdoc/RubyXL/WorksheetDimensions.html +99 -0
  433. data/rdoc/RubyXL/WorksheetFormatProperties.html +97 -0
  434. data/rdoc/RubyXL/WorksheetProperties.html +99 -0
  435. data/rdoc/RubyXL/WorksheetProtection.html +99 -0
  436. data/rdoc/RubyXL/WorksheetView.html +99 -0
  437. data/rdoc/RubyXL/WorksheetViews.html +99 -0
  438. data/rdoc/RubyXL/XF.html +99 -0
  439. data/rdoc/RubyXL.html +338 -0
  440. data/rdoc/created.rid +45 -0
  441. data/rdoc/css/fonts.css +167 -0
  442. data/rdoc/css/rdoc.css +687 -0
  443. data/rdoc/fonts/Lato-Light.ttf +0 -0
  444. data/rdoc/fonts/Lato-LightItalic.ttf +0 -0
  445. data/rdoc/fonts/Lato-Regular.ttf +0 -0
  446. data/rdoc/fonts/Lato-RegularItalic.ttf +0 -0
  447. data/rdoc/fonts/SourceCodePro-Bold.ttf +0 -0
  448. data/rdoc/fonts/SourceCodePro-Regular.ttf +0 -0
  449. data/rdoc/images/add.png +0 -0
  450. data/rdoc/images/arrow_up.png +0 -0
  451. data/rdoc/images/brick.png +0 -0
  452. data/rdoc/images/brick_link.png +0 -0
  453. data/rdoc/images/bug.png +0 -0
  454. data/rdoc/images/bullet_black.png +0 -0
  455. data/rdoc/images/bullet_toggle_minus.png +0 -0
  456. data/rdoc/images/bullet_toggle_plus.png +0 -0
  457. data/rdoc/images/date.png +0 -0
  458. data/rdoc/images/delete.png +0 -0
  459. data/rdoc/images/find.png +0 -0
  460. data/rdoc/images/loadingAnimation.gif +0 -0
  461. data/rdoc/images/macFFBgHack.png +0 -0
  462. data/rdoc/images/package.png +0 -0
  463. data/rdoc/images/page_green.png +0 -0
  464. data/rdoc/images/page_white_text.png +0 -0
  465. data/rdoc/images/page_white_width.png +0 -0
  466. data/rdoc/images/plugin.png +0 -0
  467. data/rdoc/images/ruby.png +0 -0
  468. data/rdoc/images/tag_blue.png +0 -0
  469. data/rdoc/images/tag_green.png +0 -0
  470. data/rdoc/images/transparent.png +0 -0
  471. data/rdoc/images/wrench.png +0 -0
  472. data/rdoc/images/wrench_orange.png +0 -0
  473. data/rdoc/images/zoom.png +0 -0
  474. data/rdoc/index.html +477 -0
  475. data/rdoc/js/darkfish.js +97 -0
  476. data/rdoc/js/navigation.js +105 -0
  477. data/rdoc/js/navigation.js.gz +0 -0
  478. data/rdoc/js/search.js +110 -0
  479. data/rdoc/js/search_index.js +1 -0
  480. data/rdoc/js/search_index.js.gz +0 -0
  481. data/rdoc/js/searcher.js +229 -0
  482. data/rdoc/js/searcher.js.gz +0 -0
  483. data/rdoc/table_of_contents.html +3021 -0
  484. data/rubyXL.gemspec +521 -60
  485. data/spec/lib/cell_spec.rb +386 -143
  486. data/spec/lib/color_spec.rb +11 -4
  487. data/spec/lib/parser_spec.rb +90 -38
  488. data/spec/lib/reference_spec.rb +64 -0
  489. data/spec/lib/rgb_color_spec.rb +29 -0
  490. data/spec/lib/stylesheet_spec.rb +27 -0
  491. data/spec/lib/text_spec.rb +27 -0
  492. data/spec/lib/workbook_spec.rb +168 -22
  493. data/spec/lib/worksheet_spec.rb +1207 -1220
  494. data/spec/spec_helper.rb +13 -0
  495. data/test/input/.gitkeep +0 -0
  496. data/test/output/.gitkeep +0 -0
  497. data/test/test_parse_write.rb +15 -0
  498. data/tmp/.gitignore +1 -0
  499. metadata +634 -168
  500. data/Gemfile.lock +0 -34
  501. data/lib/.DS_Store +0 -0
  502. data/lib/rubyXL/Hash.rb +0 -60
  503. data/lib/rubyXL/color.rb +0 -14
  504. data/lib/rubyXL/private_class.rb +0 -265
  505. data/lib/rubyXL/workbook.rb +0 -450
  506. data/lib/rubyXL/writer/app_writer.rb +0 -62
  507. data/lib/rubyXL/writer/calc_chain_writer.rb +0 -33
  508. data/lib/rubyXL/writer/content_types_writer.rb +0 -77
  509. data/lib/rubyXL/writer/core_writer.rb +0 -51
  510. data/lib/rubyXL/writer/root_rels_writer.rb +0 -25
  511. data/lib/rubyXL/writer/shared_strings_writer.rb +0 -30
  512. data/lib/rubyXL/writer/styles_writer.rb +0 -407
  513. data/lib/rubyXL/writer/theme_writer.rb +0 -343
  514. data/lib/rubyXL/writer/workbook_rels_writer.rb +0 -59
  515. data/lib/rubyXL/writer/workbook_writer.rb +0 -77
  516. data/lib/rubyXL/writer/worksheet_writer.rb +0 -230
  517. data/lib/rubyXL/zip.rb +0 -20
  518. data/spec/lib/hash_spec.rb +0 -28
@@ -0,0 +1,948 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <meta charset="UTF-8">
6
+
7
+ <title>class RubyXL::Workbook - rubyXL 3.4.33</title>
8
+
9
+ <script type="text/javascript">
10
+ var rdoc_rel_prefix = "../";
11
+ var index_rel_prefix = "../";
12
+ </script>
13
+
14
+ <script src="../js/navigation.js" defer></script>
15
+ <script src="../js/search.js" defer></script>
16
+ <script src="../js/search_index.js" defer></script>
17
+ <script src="../js/searcher.js" defer></script>
18
+ <script src="../js/darkfish.js" defer></script>
19
+
20
+ <link href="../css/fonts.css" rel="stylesheet">
21
+ <link href="../css/rdoc.css" rel="stylesheet">
22
+
23
+
24
+ <body id="top" role="document" class="class">
25
+ <nav role="navigation">
26
+ <div id="project-navigation">
27
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
+ <h2>
29
+ <a href="../index.html" rel="home">Home</a>
30
+ </h2>
31
+
32
+ <div id="table-of-contents-navigation">
33
+ <a href="../table_of_contents.html#pages">Pages</a>
34
+ <a href="../table_of_contents.html#classes">Classes</a>
35
+ <a href="../table_of_contents.html#methods">Methods</a>
36
+ </div>
37
+ </div>
38
+
39
+ <div id="search-section" role="search" class="project-section initially-hidden">
40
+ <form action="#" method="get" accept-charset="utf-8">
41
+ <div id="search-field-wrapper">
42
+ <input id="search-field" role="combobox" aria-label="Search"
43
+ aria-autocomplete="list" aria-controls="search-results"
44
+ type="text" name="search" placeholder="Search (/) for a class, method, ..." spellcheck="false"
45
+ title="Type to search, Up and Down to navigate, Enter to load">
46
+ </div>
47
+
48
+ <ul id="search-results" aria-label="Search Results"
49
+ aria-busy="false" aria-expanded="false"
50
+ aria-atomic="false" class="initially-hidden"></ul>
51
+ </form>
52
+ </div>
53
+
54
+ </div>
55
+
56
+
57
+
58
+ <div id="class-metadata">
59
+
60
+
61
+ <div id="parent-class-section" class="nav-section">
62
+ <h3>Parent</h3>
63
+
64
+ <p class="link"><a href="OOXMLTopLevelObject.html">RubyXL::OOXMLTopLevelObject</a>
65
+ </div>
66
+
67
+
68
+ <div id="includes-section" class="nav-section">
69
+ <h3>Included Modules</h3>
70
+
71
+ <ul class="link-list">
72
+ <li><a class="include" href="RelationshipSupport.html">RubyXL::RelationshipSupport</a>
73
+ <li><span class="include">Enumerable</span>
74
+ </ul>
75
+ </div>
76
+
77
+
78
+
79
+ <!-- Method Quickref -->
80
+ <div id="method-list-section" class="nav-section">
81
+ <h3>Methods</h3>
82
+
83
+ <ul class="link-list" role="directory">
84
+ <li class="calls-super" ><a href="#method-c-new">::new</a>
85
+ <li ><a href="#method-i-5B-5D">#[]</a>
86
+ <li ><a href="#method-i-add_worksheet">#add_worksheet</a>
87
+ <li ><a href="#method-i-application">#application</a>
88
+ <li ><a href="#method-i-application-3D">#application=</a>
89
+ <li ><a href="#method-i-appversion">#appversion</a>
90
+ <li ><a href="#method-i-appversion-3D">#appversion=</a>
91
+ <li ><a href="#method-i-before_write_xml">#before_write_xml</a>
92
+ <li ><a href="#method-i-company">#company</a>
93
+ <li ><a href="#method-i-company-3D">#company=</a>
94
+ <li ><a href="#method-i-content_type">#content_type</a>
95
+ <li ><a href="#method-i-created_at">#created_at</a>
96
+ <li ><a href="#method-i-created_at-3D">#created_at=</a>
97
+ <li ><a href="#method-i-creator">#creator</a>
98
+ <li ><a href="#method-i-creator-3D">#creator=</a>
99
+ <li ><a href="#method-i-date1904">#date1904</a>
100
+ <li ><a href="#method-i-date1904-3D">#date1904=</a>
101
+ <li ><a href="#method-i-date_to_num">#date_to_num</a>
102
+ <li ><a href="#method-i-modified_at">#modified_at</a>
103
+ <li ><a href="#method-i-modified_at-3D">#modified_at=</a>
104
+ <li ><a href="#method-i-modifier">#modifier</a>
105
+ <li ><a href="#method-i-modifier-3D">#modifier=</a>
106
+ <li ><a href="#method-i-num_to_date">#num_to_date</a>
107
+ <li ><a href="#method-i-related_objects">#related_objects</a>
108
+ <li ><a href="#method-i-save">#save</a>
109
+ <li ><a href="#method-i-stream">#stream</a>
110
+ <li ><a href="#method-i-write">#write</a>
111
+ <li ><a href="#method-i-xlsx_path">#xlsx_path</a>
112
+ </ul>
113
+ </div>
114
+
115
+ </div>
116
+ </nav>
117
+
118
+ <main role="main" aria-labelledby="class-RubyXL::Workbook">
119
+ <h1 id="class-RubyXL::Workbook" class="class">
120
+ class RubyXL::Workbook
121
+ </h1>
122
+
123
+ <section class="description">
124
+
125
+ <p><a href="http://www.datypic.com/sc/ooxml/e-ssml_workbook.html">www.datypic.com/sc/ooxml/e-ssml_workbook.html</a></p>
126
+
127
+ </section>
128
+
129
+ <section id="5Buntitled-5D" class="documentation-section">
130
+
131
+
132
+ <section class="constants-list">
133
+ <header>
134
+ <h3>Constants</h3>
135
+ </header>
136
+ <dl>
137
+ <dt id="APPLICATION">APPLICATION
138
+ <dd>
139
+ <dt id="APPVERSION">APPVERSION
140
+ <dd>
141
+ <dt id="CONTENT_TYPE">CONTENT_TYPE
142
+ <dd>
143
+ <dt id="CONTENT_TYPE_TEMPLATE">CONTENT_TYPE_TEMPLATE
144
+ <dd>
145
+ <dt id="CONTENT_TYPE_TEMPLATE_WITH_MACROS">CONTENT_TYPE_TEMPLATE_WITH_MACROS
146
+ <dd>
147
+ <dt id="CONTENT_TYPE_WITH_MACROS">CONTENT_TYPE_WITH_MACROS
148
+ <dd>
149
+ <dt id="DATE1899">DATE1899
150
+ <dd><p>Subtracting one day to accommodate for erroneous 1900 leap year compatibility only for 1900 based dates</p>
151
+ <dt id="DATE1904">DATE1904
152
+ <dd>
153
+ <dt id="MARCH_1_1900">MARCH_1_1900
154
+ <dd>
155
+ <dt id="REL_TYPE">REL_TYPE
156
+ <dd>
157
+ <dt id="SHEET_NAME_FORBIDDEN_CHARS">SHEET_NAME_FORBIDDEN_CHARS
158
+ <dd><p><a href="http://www.accountingweb.com/technology/excel/seven-characters-you-cant-use-in-worksheet-names">www.accountingweb.com/technology/excel/seven-characters-you-cant-use-in-worksheet-names</a></p>
159
+ <dt id="SHEET_NAME_FORBIDDEN_NAMES">SHEET_NAME_FORBIDDEN_NAMES
160
+ <dd><p><a href="https://answers.microsoft.com/en-us/msoffice/forum/all/excel-history-is-a-reserved-name-help/f8a398a4-b72c-48e3-82da-4f132c305e91">answers.microsoft.com/en-us/msoffice/forum/all/excel-history-is-a-reserved-name-help/f8a398a4-b72c-48e3-82da-4f132c305e91</a></p>
161
+ <dt id="SHEET_NAME_TEMPLATE">SHEET_NAME_TEMPLATE
162
+ <dd>
163
+ </dl>
164
+ </section>
165
+
166
+ <section class="attribute-method-details" class="method-section">
167
+ <header>
168
+ <h3>Attributes</h3>
169
+ </header>
170
+
171
+ <div id="attribute-i-is_template" class="method-detail">
172
+ <div class="method-heading attribute-method-heading">
173
+ <span class="method-name">is_template</span><span
174
+ class="attribute-access-type">[RW]</span>
175
+ </div>
176
+
177
+ <div class="method-description">
178
+
179
+ </div>
180
+ </div>
181
+ <div id="attribute-i-worksheets" class="method-detail">
182
+ <div class="method-heading attribute-method-heading">
183
+ <span class="method-name">worksheets</span><span
184
+ class="attribute-access-type">[RW]</span>
185
+ </div>
186
+
187
+ <div class="method-description">
188
+
189
+ </div>
190
+ </div>
191
+ </section>
192
+
193
+
194
+ <section id="public-class-5Buntitled-5D-method-details" class="method-section">
195
+ <header>
196
+ <h3>Public Class Methods</h3>
197
+ </header>
198
+
199
+ <div id="method-c-new" class="method-detail ">
200
+ <div class="method-header">
201
+ <div class="method-heading">
202
+ <span class="method-name">new</span><span
203
+ class="method-args">(worksheets = [], src_file_path = nil, creator = nil, modifier = nil, created_at = nil, company = &#39;&#39;, application = APPLICATION, appversion = APPVERSION, date1904 = 0, is_template = false)</span>
204
+ <span class="method-click-advice">click to toggle source</span>
205
+ </div>
206
+ </div>
207
+
208
+ <div class="method-description">
209
+
210
+ <div class="method-calls-super">
211
+ Calls superclass method
212
+ <a href="OOXMLObjectInstanceMethods.html#method-c-new"><code>RubyXL::OOXMLObjectInstanceMethods::new</code></a>
213
+ </div>
214
+
215
+ <div class="method-source-code" id="new-source">
216
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 447</span>
217
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">initialize</span>(<span class="ruby-identifier">worksheets</span> = [], <span class="ruby-identifier">src_file_path</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">creator</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">modifier</span> = <span class="ruby-keyword">nil</span>, <span class="ruby-identifier">created_at</span> = <span class="ruby-keyword">nil</span>,
218
+ <span class="ruby-identifier">company</span> = <span class="ruby-string">&#39;&#39;</span>, <span class="ruby-identifier">application</span> = <span class="ruby-constant">APPLICATION</span>, <span class="ruby-identifier">appversion</span> = <span class="ruby-constant">APPVERSION</span>, <span class="ruby-identifier">date1904</span> = <span class="ruby-value">0</span>,
219
+ <span class="ruby-identifier">is_template</span> = <span class="ruby-keyword">false</span>)
220
+ <span class="ruby-keyword">super</span>()
221
+
222
+ <span class="ruby-comment"># Order of sheets in the +worksheets+ array corresponds to the order of pages in Excel UI.</span>
223
+ <span class="ruby-comment"># SheetId&#39;s, rId&#39;s, etc. are completely unrelated to ordering.</span>
224
+ <span class="ruby-ivar">@worksheets</span> = <span class="ruby-identifier">worksheets</span>
225
+ <span class="ruby-identifier">add_worksheet</span> <span class="ruby-keyword">if</span> <span class="ruby-ivar">@worksheets</span>.<span class="ruby-identifier">empty?</span>
226
+
227
+ <span class="ruby-ivar">@theme</span> = <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Theme</span>.<span class="ruby-identifier">default</span>
228
+ <span class="ruby-ivar">@shared_strings_container</span> = <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">SharedStringsTable</span>.<span class="ruby-identifier">new</span>
229
+ <span class="ruby-ivar">@stylesheet</span> = <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Stylesheet</span>.<span class="ruby-identifier">default</span>
230
+ <span class="ruby-ivar">@relationship_container</span> = <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">OOXMLRelationshipsFile</span>.<span class="ruby-identifier">new</span>
231
+ <span class="ruby-ivar">@root</span> = <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">WorkbookRoot</span>.<span class="ruby-identifier">default</span>
232
+ <span class="ruby-ivar">@root</span>.<span class="ruby-identifier">workbook</span> = <span class="ruby-keyword">self</span>
233
+ <span class="ruby-ivar">@root</span>.<span class="ruby-identifier">source_file_path</span> = <span class="ruby-identifier">src_file_path</span>
234
+
235
+ <span class="ruby-identifier">creation_time</span> = <span class="ruby-constant">DateTime</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">created_at</span>) <span class="ruby-keyword">rescue</span> <span class="ruby-constant">DateTime</span>.<span class="ruby-identifier">now</span>
236
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">created_at</span> = <span class="ruby-identifier">creation_time</span>
237
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">modified_at</span> = <span class="ruby-identifier">creation_time</span>
238
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">company</span> = <span class="ruby-identifier">company</span>
239
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">application</span> = <span class="ruby-identifier">application</span>
240
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">appversion</span> = <span class="ruby-identifier">appversion</span>
241
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">creator</span> = <span class="ruby-identifier">creator</span>
242
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">modifier</span> = <span class="ruby-identifier">modifier</span>
243
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">date1904</span> = <span class="ruby-identifier">date1904</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
244
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">is_template</span> = <span class="ruby-identifier">is_template</span>
245
+ <span class="ruby-keyword">end</span></pre>
246
+ </div>
247
+ </div>
248
+
249
+
250
+ </div>
251
+
252
+ </section>
253
+
254
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
255
+ <header>
256
+ <h3>Public Instance Methods</h3>
257
+ </header>
258
+
259
+ <div id="method-i-5B-5D" class="method-detail ">
260
+ <div class="method-header">
261
+ <div class="method-heading">
262
+ <span class="method-name">[]</span><span
263
+ class="method-args">(ind)</span>
264
+ <span class="method-click-advice">click to toggle source</span>
265
+ </div>
266
+ </div>
267
+
268
+ <div class="method-description">
269
+ <p>Finds worksheet by its name or numerical index</p>
270
+
271
+ <div class="method-source-code" id="5B-5D-source">
272
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 480</span>
273
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">[]</span>(<span class="ruby-identifier">ind</span>)
274
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">ind</span>
275
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">Integer</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">worksheets</span>[<span class="ruby-identifier">ind</span>]
276
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">String</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">worksheets</span>.<span class="ruby-identifier">find</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">ws</span><span class="ruby-operator">|</span> <span class="ruby-identifier">ws</span>.<span class="ruby-identifier">sheet_name</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">ind</span> }
277
+ <span class="ruby-keyword">end</span>
278
+ <span class="ruby-keyword">end</span></pre>
279
+ </div>
280
+ </div>
281
+
282
+
283
+ </div>
284
+
285
+ <div id="method-i-add_worksheet" class="method-detail ">
286
+ <div class="method-header">
287
+ <div class="method-heading">
288
+ <span class="method-name">add_worksheet</span><span
289
+ class="method-args">(name = nil)</span>
290
+ <span class="method-click-advice">click to toggle source</span>
291
+ </div>
292
+ </div>
293
+
294
+ <div class="method-description">
295
+ <p>Create new simple worksheet and add it to the workbook worksheets</p>
296
+
297
+ <p>@param [String] The name for the new worksheet</p>
298
+
299
+ <div class="method-source-code" id="add_worksheet-source">
300
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 490</span>
301
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">add_worksheet</span>(<span class="ruby-identifier">name</span> = <span class="ruby-keyword">nil</span>)
302
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">name</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-keyword">then</span>
303
+ <span class="ruby-identifier">n</span> = <span class="ruby-value">0</span>
304
+
305
+ <span class="ruby-keyword">begin</span>
306
+ <span class="ruby-identifier">name</span> = <span class="ruby-constant">SHEET_NAME_TEMPLATE</span> <span class="ruby-operator">%</span> (<span class="ruby-identifier">n</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>)
307
+ <span class="ruby-keyword">end</span> <span class="ruby-keyword">until</span> <span class="ruby-keyword">self</span>[<span class="ruby-identifier">name</span>].<span class="ruby-identifier">nil?</span>
308
+ <span class="ruby-keyword">end</span>
309
+
310
+ <span class="ruby-identifier">new_worksheet</span> = <span class="ruby-constant">Worksheet</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">:workbook</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-keyword">self</span>, <span class="ruby-value">:sheet_name</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">name</span>)
311
+ <span class="ruby-identifier">worksheets</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">new_worksheet</span>
312
+ <span class="ruby-identifier">new_worksheet</span>
313
+ <span class="ruby-keyword">end</span></pre>
314
+ </div>
315
+ </div>
316
+
317
+
318
+ </div>
319
+
320
+ <div id="method-i-application" class="method-detail ">
321
+ <div class="method-header">
322
+ <div class="method-heading">
323
+ <span class="method-name">application</span><span
324
+ class="method-args">()</span>
325
+ <span class="method-click-advice">click to toggle source</span>
326
+ </div>
327
+ </div>
328
+
329
+ <div class="method-description">
330
+
331
+
332
+ <div class="method-source-code" id="application-source">
333
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 529</span>
334
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">application</span>
335
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">document_properties</span>.<span class="ruby-identifier">application</span>&amp;.<span class="ruby-identifier">value</span>
336
+ <span class="ruby-keyword">end</span></pre>
337
+ </div>
338
+ </div>
339
+
340
+
341
+ </div>
342
+
343
+ <div id="method-i-application-3D" class="method-detail ">
344
+ <div class="method-header">
345
+ <div class="method-heading">
346
+ <span class="method-name">application=</span><span
347
+ class="method-args">(v)</span>
348
+ <span class="method-click-advice">click to toggle source</span>
349
+ </div>
350
+ </div>
351
+
352
+ <div class="method-description">
353
+
354
+
355
+ <div class="method-source-code" id="application-3D-source">
356
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 533</span>
357
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">application=</span>(<span class="ruby-identifier">v</span>)
358
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">document_properties</span>.<span class="ruby-identifier">application</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">StringNode</span>.<span class="ruby-identifier">new</span>
359
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">document_properties</span>.<span class="ruby-identifier">application</span>.<span class="ruby-identifier">value</span> = <span class="ruby-identifier">v</span>
360
+ <span class="ruby-keyword">end</span></pre>
361
+ </div>
362
+ </div>
363
+
364
+
365
+ </div>
366
+
367
+ <div id="method-i-appversion" class="method-detail ">
368
+ <div class="method-header">
369
+ <div class="method-heading">
370
+ <span class="method-name">appversion</span><span
371
+ class="method-args">()</span>
372
+ <span class="method-click-advice">click to toggle source</span>
373
+ </div>
374
+ </div>
375
+
376
+ <div class="method-description">
377
+
378
+
379
+ <div class="method-source-code" id="appversion-source">
380
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 538</span>
381
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">appversion</span>
382
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">document_properties</span>.<span class="ruby-identifier">app_version</span>&amp;.<span class="ruby-identifier">value</span>
383
+ <span class="ruby-keyword">end</span></pre>
384
+ </div>
385
+ </div>
386
+
387
+
388
+ </div>
389
+
390
+ <div id="method-i-appversion-3D" class="method-detail ">
391
+ <div class="method-header">
392
+ <div class="method-heading">
393
+ <span class="method-name">appversion=</span><span
394
+ class="method-args">(v)</span>
395
+ <span class="method-click-advice">click to toggle source</span>
396
+ </div>
397
+ </div>
398
+
399
+ <div class="method-description">
400
+
401
+
402
+ <div class="method-source-code" id="appversion-3D-source">
403
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 542</span>
404
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">appversion=</span>(<span class="ruby-identifier">v</span>)
405
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">document_properties</span>.<span class="ruby-identifier">app_version</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">StringNode</span>.<span class="ruby-identifier">new</span>
406
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">document_properties</span>.<span class="ruby-identifier">app_version</span>.<span class="ruby-identifier">value</span> = <span class="ruby-identifier">v</span>
407
+ <span class="ruby-keyword">end</span></pre>
408
+ </div>
409
+ </div>
410
+
411
+
412
+ </div>
413
+
414
+ <div id="method-i-before_write_xml" class="method-detail ">
415
+ <div class="method-header">
416
+ <div class="method-heading">
417
+ <span class="method-name">before_write_xml</span><span
418
+ class="method-args">()</span>
419
+ <span class="method-click-advice">click to toggle source</span>
420
+ </div>
421
+ </div>
422
+
423
+ <div class="method-description">
424
+
425
+
426
+ <div class="method-source-code" id="before_write_xml-source">
427
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 369</span>
428
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">before_write_xml</span>
429
+ <span class="ruby-identifier">max_sheet_id</span> = <span class="ruby-identifier">worksheets</span>.<span class="ruby-identifier">collect</span>(<span class="ruby-operator">&amp;</span><span class="ruby-value">:sheet_id</span>).<span class="ruby-identifier">compact</span>.<span class="ruby-identifier">max</span> <span class="ruby-operator">||</span> <span class="ruby-value">0</span>
430
+
431
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">sheets</span> = <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Sheets</span>.<span class="ruby-identifier">new</span>
432
+
433
+ <span class="ruby-identifier">worksheets</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">sheet</span>, <span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
434
+ <span class="ruby-identifier">rel</span> = <span class="ruby-identifier">relationship_container</span>.<span class="ruby-identifier">find_by_target</span>(<span class="ruby-identifier">sheet</span>.<span class="ruby-identifier">xlsx_path</span>)
435
+
436
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Worksheet name &#39;#{sheet.sheet_name}&#39; contains forbidden characters&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">sheet</span>.<span class="ruby-identifier">sheet_name</span> <span class="ruby-operator">=~</span> <span class="ruby-constant">SHEET_NAME_FORBIDDEN_CHARS</span>
437
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Worksheet name &#39;#{sheet.sheet_name}&#39; is forbidden&quot;</span> <span class="ruby-keyword">if</span> <span class="ruby-constant">SHEET_NAME_FORBIDDEN_NAMES</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">sheet</span>.<span class="ruby-identifier">sheet_name</span>)
438
+
439
+ <span class="ruby-identifier">sheets</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Sheet</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value">:name</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">sheet</span>.<span class="ruby-identifier">sheet_name</span>[<span class="ruby-value">0</span><span class="ruby-operator">..</span><span class="ruby-value">30</span>], <span class="ruby-comment"># Max sheet name length is 31 char</span>
440
+ <span class="ruby-value">:sheet_id</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">sheet</span>.<span class="ruby-identifier">sheet_id</span> <span class="ruby-operator">||</span> (<span class="ruby-identifier">max_sheet_id</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>),
441
+ <span class="ruby-value">:state</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">sheet</span>.<span class="ruby-identifier">state</span>,
442
+ <span class="ruby-value">:r_id</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">rel</span>.<span class="ruby-identifier">id</span>)
443
+ }
444
+
445
+ <span class="ruby-keyword">true</span>
446
+ <span class="ruby-keyword">end</span></pre>
447
+ </div>
448
+ </div>
449
+
450
+
451
+ </div>
452
+
453
+ <div id="method-i-company" class="method-detail ">
454
+ <div class="method-header">
455
+ <div class="method-heading">
456
+ <span class="method-name">company</span><span
457
+ class="method-args">()</span>
458
+ <span class="method-click-advice">click to toggle source</span>
459
+ </div>
460
+ </div>
461
+
462
+ <div class="method-description">
463
+
464
+
465
+ <div class="method-source-code" id="company-source">
466
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 520</span>
467
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">company</span>
468
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">document_properties</span>.<span class="ruby-identifier">company</span>&amp;.<span class="ruby-identifier">value</span>
469
+ <span class="ruby-keyword">end</span></pre>
470
+ </div>
471
+ </div>
472
+
473
+
474
+ </div>
475
+
476
+ <div id="method-i-company-3D" class="method-detail ">
477
+ <div class="method-header">
478
+ <div class="method-heading">
479
+ <span class="method-name">company=</span><span
480
+ class="method-args">(v)</span>
481
+ <span class="method-click-advice">click to toggle source</span>
482
+ </div>
483
+ </div>
484
+
485
+ <div class="method-description">
486
+
487
+
488
+ <div class="method-source-code" id="company-3D-source">
489
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 524</span>
490
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">company=</span>(<span class="ruby-identifier">v</span>)
491
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">document_properties</span>.<span class="ruby-identifier">company</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">StringNode</span>.<span class="ruby-identifier">new</span>
492
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">document_properties</span>.<span class="ruby-identifier">company</span>.<span class="ruby-identifier">value</span> = <span class="ruby-identifier">v</span>
493
+ <span class="ruby-keyword">end</span></pre>
494
+ </div>
495
+ </div>
496
+
497
+
498
+ </div>
499
+
500
+ <div id="method-i-content_type" class="method-detail ">
501
+ <div class="method-header">
502
+ <div class="method-heading">
503
+ <span class="method-name">content_type</span><span
504
+ class="method-args">()</span>
505
+ <span class="method-click-advice">click to toggle source</span>
506
+ </div>
507
+ </div>
508
+
509
+ <div class="method-description">
510
+
511
+
512
+ <div class="method-source-code" id="content_type-source">
513
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 313</span>
514
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">content_type</span>
515
+ <span class="ruby-identifier">content_type_name</span> = <span class="ruby-string">&#39;CONTENT_TYPE&#39;</span>
516
+ <span class="ruby-identifier">content_type_name</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&#39;_TEMPLATE&#39;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">is_template</span>
517
+ <span class="ruby-identifier">content_type_name</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-string">&#39;_WITH_MACROS&#39;</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">macros</span>
518
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class</span>.<span class="ruby-identifier">const_get</span>(<span class="ruby-identifier">content_type_name</span>)
519
+ <span class="ruby-keyword">end</span></pre>
520
+ </div>
521
+ </div>
522
+
523
+
524
+ </div>
525
+
526
+ <div id="method-i-created_at" class="method-detail ">
527
+ <div class="method-header">
528
+ <div class="method-heading">
529
+ <span class="method-name">created_at</span><span
530
+ class="method-args">()</span>
531
+ <span class="method-click-advice">click to toggle source</span>
532
+ </div>
533
+ </div>
534
+
535
+ <div class="method-description">
536
+
537
+
538
+ <div class="method-source-code" id="created_at-source">
539
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 504</span>
540
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">created_at</span>
541
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">core_properties</span>.<span class="ruby-identifier">created_at</span>
542
+ <span class="ruby-keyword">end</span></pre>
543
+ </div>
544
+ </div>
545
+
546
+
547
+ </div>
548
+
549
+ <div id="method-i-created_at-3D" class="method-detail ">
550
+ <div class="method-header">
551
+ <div class="method-heading">
552
+ <span class="method-name">created_at=</span><span
553
+ class="method-args">(v)</span>
554
+ <span class="method-click-advice">click to toggle source</span>
555
+ </div>
556
+ </div>
557
+
558
+ <div class="method-description">
559
+
560
+
561
+ <div class="method-source-code" id="created_at-3D-source">
562
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 508</span>
563
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">created_at=</span>(<span class="ruby-identifier">v</span>)
564
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">core_properties</span>.<span class="ruby-identifier">created_at</span> = <span class="ruby-identifier">v</span>
565
+ <span class="ruby-keyword">end</span></pre>
566
+ </div>
567
+ </div>
568
+
569
+
570
+ </div>
571
+
572
+ <div id="method-i-creator" class="method-detail ">
573
+ <div class="method-header">
574
+ <div class="method-heading">
575
+ <span class="method-name">creator</span><span
576
+ class="method-args">()</span>
577
+ <span class="method-click-advice">click to toggle source</span>
578
+ </div>
579
+ </div>
580
+
581
+ <div class="method-description">
582
+
583
+
584
+ <div class="method-source-code" id="creator-source">
585
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 547</span>
586
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">creator</span>
587
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">core_properties</span>.<span class="ruby-identifier">creator</span>
588
+ <span class="ruby-keyword">end</span></pre>
589
+ </div>
590
+ </div>
591
+
592
+
593
+ </div>
594
+
595
+ <div id="method-i-creator-3D" class="method-detail ">
596
+ <div class="method-header">
597
+ <div class="method-heading">
598
+ <span class="method-name">creator=</span><span
599
+ class="method-args">(v)</span>
600
+ <span class="method-click-advice">click to toggle source</span>
601
+ </div>
602
+ </div>
603
+
604
+ <div class="method-description">
605
+
606
+
607
+ <div class="method-source-code" id="creator-3D-source">
608
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 551</span>
609
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">creator=</span>(<span class="ruby-identifier">v</span>)
610
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">core_properties</span>.<span class="ruby-identifier">creator</span> = <span class="ruby-identifier">v</span>
611
+ <span class="ruby-keyword">end</span></pre>
612
+ </div>
613
+ </div>
614
+
615
+
616
+ </div>
617
+
618
+ <div id="method-i-date1904" class="method-detail ">
619
+ <div class="method-header">
620
+ <div class="method-heading">
621
+ <span class="method-name">date1904</span><span
622
+ class="method-args">()</span>
623
+ <span class="method-click-advice">click to toggle source</span>
624
+ </div>
625
+ </div>
626
+
627
+ <div class="method-description">
628
+
629
+
630
+ <div class="method-source-code" id="date1904-source">
631
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 563</span>
632
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">date1904</span>
633
+ <span class="ruby-identifier">workbook_properties</span>&amp;.<span class="ruby-identifier">date1904</span>
634
+ <span class="ruby-keyword">end</span></pre>
635
+ </div>
636
+ </div>
637
+
638
+
639
+ </div>
640
+
641
+ <div id="method-i-date1904-3D" class="method-detail ">
642
+ <div class="method-header">
643
+ <div class="method-heading">
644
+ <span class="method-name">date1904=</span><span
645
+ class="method-args">(v)</span>
646
+ <span class="method-click-advice">click to toggle source</span>
647
+ </div>
648
+ </div>
649
+
650
+ <div class="method-description">
651
+
652
+
653
+ <div class="method-source-code" id="date1904-3D-source">
654
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 567</span>
655
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">date1904=</span>(<span class="ruby-identifier">v</span>)
656
+ <span class="ruby-keyword">self</span>.<span class="ruby-identifier">workbook_properties</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">WorkbookProperties</span>.<span class="ruby-identifier">new</span>
657
+ <span class="ruby-identifier">workbook_properties</span>.<span class="ruby-identifier">date1904</span> = <span class="ruby-identifier">v</span>
658
+ <span class="ruby-keyword">end</span></pre>
659
+ </div>
660
+ </div>
661
+
662
+
663
+ </div>
664
+
665
+ <div id="method-i-date_to_num" class="method-detail ">
666
+ <div class="method-header">
667
+ <div class="method-heading">
668
+ <span class="method-name">date_to_num</span><span
669
+ class="method-args">(date)</span>
670
+ <span class="method-click-advice">click to toggle source</span>
671
+ </div>
672
+ </div>
673
+
674
+ <div class="method-description">
675
+
676
+
677
+ <div class="method-source-code" id="date_to_num-source">
678
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 423</span>
679
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">date_to_num</span>(<span class="ruby-identifier">date</span>)
680
+ <span class="ruby-keyword">case</span> <span class="ruby-identifier">date</span>
681
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">Date</span>, <span class="ruby-constant">DateTime</span> <span class="ruby-keyword">then</span> (<span class="ruby-identifier">date</span>.<span class="ruby-identifier">ajd</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">base_date</span>.<span class="ruby-identifier">ajd</span>).<span class="ruby-identifier">to_f</span>
682
+ <span class="ruby-keyword">when</span> <span class="ruby-constant">Time</span> <span class="ruby-keyword">then</span> ((<span class="ruby-identifier">date</span>.<span class="ruby-identifier">to_r</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">base_date</span>.<span class="ruby-identifier">to_time</span>.<span class="ruby-identifier">to_r</span>) <span class="ruby-operator">/</span> <span class="ruby-value">86400</span>).<span class="ruby-identifier">to_f</span>
683
+ <span class="ruby-keyword">end</span>
684
+ <span class="ruby-keyword">end</span></pre>
685
+ </div>
686
+ </div>
687
+
688
+
689
+ </div>
690
+
691
+ <div id="method-i-modified_at" class="method-detail ">
692
+ <div class="method-header">
693
+ <div class="method-heading">
694
+ <span class="method-name">modified_at</span><span
695
+ class="method-args">()</span>
696
+ <span class="method-click-advice">click to toggle source</span>
697
+ </div>
698
+ </div>
699
+
700
+ <div class="method-description">
701
+
702
+
703
+ <div class="method-source-code" id="modified_at-source">
704
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 512</span>
705
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">modified_at</span>
706
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">core_properties</span>.<span class="ruby-identifier">modified_at</span>
707
+ <span class="ruby-keyword">end</span></pre>
708
+ </div>
709
+ </div>
710
+
711
+
712
+ </div>
713
+
714
+ <div id="method-i-modified_at-3D" class="method-detail ">
715
+ <div class="method-header">
716
+ <div class="method-heading">
717
+ <span class="method-name">modified_at=</span><span
718
+ class="method-args">(v)</span>
719
+ <span class="method-click-advice">click to toggle source</span>
720
+ </div>
721
+ </div>
722
+
723
+ <div class="method-description">
724
+
725
+
726
+ <div class="method-source-code" id="modified_at-3D-source">
727
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 516</span>
728
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">modified_at=</span>(<span class="ruby-identifier">v</span>)
729
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">core_properties</span>.<span class="ruby-identifier">modified_at</span> = <span class="ruby-identifier">v</span>
730
+ <span class="ruby-keyword">end</span></pre>
731
+ </div>
732
+ </div>
733
+
734
+
735
+ </div>
736
+
737
+ <div id="method-i-modifier" class="method-detail ">
738
+ <div class="method-header">
739
+ <div class="method-heading">
740
+ <span class="method-name">modifier</span><span
741
+ class="method-args">()</span>
742
+ <span class="method-click-advice">click to toggle source</span>
743
+ </div>
744
+ </div>
745
+
746
+ <div class="method-description">
747
+
748
+
749
+ <div class="method-source-code" id="modifier-source">
750
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 555</span>
751
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">modifier</span>
752
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">core_properties</span>.<span class="ruby-identifier">modifier</span>
753
+ <span class="ruby-keyword">end</span></pre>
754
+ </div>
755
+ </div>
756
+
757
+
758
+ </div>
759
+
760
+ <div id="method-i-modifier-3D" class="method-detail ">
761
+ <div class="method-header">
762
+ <div class="method-heading">
763
+ <span class="method-name">modifier=</span><span
764
+ class="method-args">(v)</span>
765
+ <span class="method-click-advice">click to toggle source</span>
766
+ </div>
767
+ </div>
768
+
769
+ <div class="method-description">
770
+
771
+
772
+ <div class="method-source-code" id="modifier-3D-source">
773
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 559</span>
774
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">modifier=</span>(<span class="ruby-identifier">v</span>)
775
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">core_properties</span>.<span class="ruby-identifier">modifier</span> = <span class="ruby-identifier">v</span>
776
+ <span class="ruby-keyword">end</span></pre>
777
+ </div>
778
+ </div>
779
+
780
+
781
+ </div>
782
+
783
+ <div id="method-i-num_to_date" class="method-detail ">
784
+ <div class="method-header">
785
+ <div class="method-heading">
786
+ <span class="method-name">num_to_date</span><span
787
+ class="method-args">(num)</span>
788
+ <span class="method-click-advice">click to toggle source</span>
789
+ </div>
790
+ </div>
791
+
792
+ <div class="method-description">
793
+
794
+
795
+ <div class="method-source-code" id="num_to_date-source">
796
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 430</span>
797
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">num_to_date</span>(<span class="ruby-identifier">num</span>)
798
+ <span class="ruby-keyword">return</span> <span class="ruby-keyword">nil</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">num</span>.<span class="ruby-identifier">nil?</span>
799
+
800
+ <span class="ruby-comment"># Bug-for-bug Excel compatibility (https://support.microsoft.com/kb/214058/)</span>
801
+ <span class="ruby-keyword">if</span> <span class="ruby-identifier">num</span> <span class="ruby-operator">&lt;</span> <span class="ruby-constant">MARCH_1_1900</span> <span class="ruby-keyword">then</span>
802
+ <span class="ruby-identifier">num</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span> <span class="ruby-keyword">unless</span> <span class="ruby-identifier">workbook_properties</span>&amp;.<span class="ruby-identifier">date1904</span>
803
+ <span class="ruby-keyword">end</span>
804
+
805
+ <span class="ruby-identifier">dateparts</span> = <span class="ruby-identifier">num</span>.<span class="ruby-identifier">divmod</span>(<span class="ruby-value">1</span>)
806
+ <span class="ruby-identifier">base_date</span> <span class="ruby-operator">+</span> (<span class="ruby-identifier">dateparts</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">+</span> ((<span class="ruby-identifier">dateparts</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">*</span> <span class="ruby-value">86400</span>).<span class="ruby-identifier">round</span>(<span class="ruby-value">6</span>) <span class="ruby-operator">/</span> <span class="ruby-value">86400</span>))
807
+ <span class="ruby-keyword">end</span></pre>
808
+ </div>
809
+ </div>
810
+
811
+
812
+ </div>
813
+
814
+ <div id="method-i-related_objects" class="method-detail ">
815
+ <div class="method-header">
816
+ <div class="method-heading">
817
+ <span class="method-name">related_objects</span><span
818
+ class="method-args">()</span>
819
+ <span class="method-click-advice">click to toggle source</span>
820
+ </div>
821
+ </div>
822
+
823
+ <div class="method-description">
824
+
825
+
826
+ <div class="method-source-code" id="related_objects-source">
827
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 320</span>
828
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">related_objects</span>
829
+ [ <span class="ruby-identifier">calculation_chain</span>, <span class="ruby-identifier">stylesheet</span>, <span class="ruby-identifier">theme</span>, <span class="ruby-identifier">shared_strings_container</span>, <span class="ruby-identifier">macros</span> ] <span class="ruby-operator">+</span> <span class="ruby-ivar">@worksheets</span>
830
+ <span class="ruby-keyword">end</span></pre>
831
+ </div>
832
+ </div>
833
+
834
+
835
+ </div>
836
+
837
+ <div id="method-i-save" class="method-detail ">
838
+ <div class="method-header">
839
+ <div class="method-heading">
840
+ <span class="method-name">save</span><span
841
+ class="method-args">(dst_file_path = nil)</span>
842
+ <span class="method-click-advice">click to toggle source</span>
843
+ </div>
844
+ </div>
845
+
846
+ <div class="method-description">
847
+ <p>Save the resulting XLSX file to the specified location</p>
848
+
849
+ <div class="method-source-code" id="save-source">
850
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 399</span>
851
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">save</span>(<span class="ruby-identifier">dst_file_path</span> = <span class="ruby-keyword">nil</span>)
852
+ <span class="ruby-identifier">dst_file_path</span> <span class="ruby-operator">||=</span> <span class="ruby-identifier">root</span>.<span class="ruby-identifier">source_file_path</span>
853
+
854
+ <span class="ruby-identifier">extension</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">extname</span>(<span class="ruby-identifier">dst_file_path</span>)
855
+ <span class="ruby-keyword">unless</span> <span class="ruby-node">%w{.xlsx .xlsm .xltx .xltm}</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">extension</span>.<span class="ruby-identifier">downcase</span>)
856
+ <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Unsupported extension: #{extension} (only .xlsx, .xlsm, .xltx and .xltm files are supported).&quot;</span>
857
+ <span class="ruby-keyword">end</span>
858
+
859
+ <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">dst_file_path</span>, <span class="ruby-string">&#39;wb&#39;</span>) { <span class="ruby-operator">|</span><span class="ruby-identifier">output_file</span><span class="ruby-operator">|</span> <span class="ruby-constant">FileUtils</span>.<span class="ruby-identifier">copy_stream</span>(<span class="ruby-identifier">root</span>.<span class="ruby-identifier">stream</span>, <span class="ruby-identifier">output_file</span>) }
860
+
861
+ <span class="ruby-keyword">return</span> <span class="ruby-identifier">dst_file_path</span>
862
+ <span class="ruby-keyword">end</span></pre>
863
+ </div>
864
+ </div>
865
+
866
+ <div class="aliases">
867
+ Also aliased as: <a href="Workbook.html#method-i-write">write</a>
868
+ </div>
869
+
870
+ </div>
871
+
872
+ <div id="method-i-stream" class="method-detail ">
873
+ <div class="method-header">
874
+ <div class="method-heading">
875
+ <span class="method-name">stream</span><span
876
+ class="method-args">()</span>
877
+ <span class="method-click-advice">click to toggle source</span>
878
+ </div>
879
+ </div>
880
+
881
+ <div class="method-description">
882
+ <p>Return the resulting XLSX file in a stream (useful for sending over HTTP)</p>
883
+
884
+ <div class="method-source-code" id="stream-source">
885
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 394</span>
886
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">stream</span>
887
+ <span class="ruby-identifier">root</span>.<span class="ruby-identifier">stream</span>
888
+ <span class="ruby-keyword">end</span></pre>
889
+ </div>
890
+ </div>
891
+
892
+
893
+ </div>
894
+
895
+ <div id="method-i-write" class="method-detail method-alias">
896
+ <div class="method-header">
897
+ <div class="method-heading">
898
+ <span class="method-name">write</span><span
899
+ class="method-args">(dst_file_path = nil)</span>
900
+ </div>
901
+ </div>
902
+
903
+ <div class="method-description">
904
+
905
+
906
+ </div>
907
+
908
+
909
+ <div class="aliases">
910
+ Alias for: <a href="Workbook.html#method-i-save">save</a>
911
+ </div>
912
+ </div>
913
+
914
+ <div id="method-i-xlsx_path" class="method-detail ">
915
+ <div class="method-header">
916
+ <div class="method-heading">
917
+ <span class="method-name">xlsx_path</span><span
918
+ class="method-args">()</span>
919
+ <span class="method-click-advice">click to toggle source</span>
920
+ </div>
921
+ </div>
922
+
923
+ <div class="method-description">
924
+
925
+
926
+ <div class="method-source-code" id="xlsx_path-source">
927
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/workbook.rb, line 389</span>
928
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">xlsx_path</span>
929
+ <span class="ruby-constant">ROOT</span>.<span class="ruby-identifier">join</span>(<span class="ruby-string">&#39;xl&#39;</span>, <span class="ruby-string">&#39;workbook.xml&#39;</span>)
930
+ <span class="ruby-keyword">end</span></pre>
931
+ </div>
932
+ </div>
933
+
934
+
935
+ </div>
936
+
937
+ </section>
938
+
939
+ </section>
940
+ </main>
941
+
942
+
943
+ <footer id="validator-badges" role="contentinfo">
944
+ <p><a href="https://validator.w3.org/check/referer">Validate</a>
945
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.6.3.1.
946
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
947
+ </footer>
948
+