rubyXL 3.0.2 → 3.1.0

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 (369) hide show
  1. checksums.yaml +4 -4
  2. data/VERSION +1 -1
  3. data/lib/rubyXL/cell.rb +1 -1
  4. data/lib/rubyXL/objects/border.rb +0 -1
  5. data/lib/rubyXL/objects/cell_style.rb +0 -1
  6. data/lib/rubyXL/objects/chartsheet.rb +2 -11
  7. data/lib/rubyXL/objects/fill.rb +0 -1
  8. data/lib/rubyXL/objects/font.rb +0 -1
  9. data/lib/rubyXL/objects/ooxml_object.rb +31 -9
  10. data/lib/rubyXL/objects/relationships.rb +1 -1
  11. data/lib/rubyXL/objects/root.rb +48 -15
  12. data/lib/rubyXL/objects/sheet_common.rb +1 -0
  13. data/lib/rubyXL/objects/storage.rb +8 -15
  14. data/lib/rubyXL/objects/workbook.rb +19 -25
  15. data/lib/rubyXL/objects/worksheet.rb +21 -28
  16. data/lib/rubyXL/parser.rb +0 -15
  17. data/lib/rubyXL/workbook.rb +22 -71
  18. data/lib/rubyXL/worksheet.rb +0 -9
  19. data/rdoc/README_rdoc.html +1 -1
  20. data/rdoc/RubyXL.html +1 -1
  21. data/rdoc/RubyXL/AExtension.html +1 -1
  22. data/rdoc/RubyXL/AExtensionStorageArea.html +1 -1
  23. data/rdoc/RubyXL/AdjustHandleList.html +1 -1
  24. data/rdoc/RubyXL/Alignment.html +1 -1
  25. data/rdoc/RubyXL/AlternateContent.html +1 -1
  26. data/rdoc/RubyXL/Authors.html +1 -1
  27. data/rdoc/RubyXL/AutoFilter.html +1 -1
  28. data/rdoc/RubyXL/AutoFilterColumn.html +1 -1
  29. data/rdoc/RubyXL/BinaryImageFile.html +1 -1
  30. data/rdoc/RubyXL/BodyProperties.html +1 -1
  31. data/rdoc/RubyXL/BooleanNode.html +1 -1
  32. data/rdoc/RubyXL/BooleanValue.html +1 -1
  33. data/rdoc/RubyXL/Border.html +1 -1
  34. data/rdoc/RubyXL/BorderEdge.html +1 -1
  35. data/rdoc/RubyXL/Borders.html +1 -1
  36. data/rdoc/RubyXL/Break.html +1 -1
  37. data/rdoc/RubyXL/BreakList.html +1 -1
  38. data/rdoc/RubyXL/CT_AdjPoint2D.html +1 -1
  39. data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +1 -1
  40. data/rdoc/RubyXL/CT_AlphaModulateEffect.html +1 -1
  41. data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +1 -1
  42. data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +1 -1
  43. data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +1 -1
  44. data/rdoc/RubyXL/CT_Backdrop.html +1 -1
  45. data/rdoc/RubyXL/CT_Bevel.html +1 -1
  46. data/rdoc/RubyXL/CT_BiLevelEffect.html +1 -1
  47. data/rdoc/RubyXL/CT_BlendEffect.html +1 -1
  48. data/rdoc/RubyXL/CT_Blip.html +1 -1
  49. data/rdoc/RubyXL/CT_BlipFillProperties.html +1 -1
  50. data/rdoc/RubyXL/CT_BlurEffect.html +1 -1
  51. data/rdoc/RubyXL/CT_Camera.html +1 -1
  52. data/rdoc/RubyXL/CT_Color.html +1 -1
  53. data/rdoc/RubyXL/CT_ColorChangeEffect.html +1 -1
  54. data/rdoc/RubyXL/CT_ColorMapping.html +1 -1
  55. data/rdoc/RubyXL/CT_ColorScheme.html +1 -1
  56. data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +1 -1
  57. data/rdoc/RubyXL/CT_ConnectionSite.html +1 -1
  58. data/rdoc/RubyXL/CT_ConnectionSiteList.html +1 -1
  59. data/rdoc/RubyXL/CT_DashStop.html +1 -1
  60. data/rdoc/RubyXL/CT_DashStopList.html +1 -1
  61. data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +1 -1
  62. data/rdoc/RubyXL/CT_DuotoneEffect.html +1 -1
  63. data/rdoc/RubyXL/CT_EffectContainer.html +1 -1
  64. data/rdoc/RubyXL/CT_EffectList.html +1 -1
  65. data/rdoc/RubyXL/CT_EffectReference.html +1 -1
  66. data/rdoc/RubyXL/CT_EffectStyleItem.html +1 -1
  67. data/rdoc/RubyXL/CT_EffectStyleList.html +1 -1
  68. data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +1 -1
  69. data/rdoc/RubyXL/CT_FillEffect.html +1 -1
  70. data/rdoc/RubyXL/CT_FillOverlayEffect.html +1 -1
  71. data/rdoc/RubyXL/CT_FillStyleList.html +1 -1
  72. data/rdoc/RubyXL/CT_FlatText.html +1 -1
  73. data/rdoc/RubyXL/CT_FontCollection.html +1 -1
  74. data/rdoc/RubyXL/CT_FontReference.html +1 -1
  75. data/rdoc/RubyXL/CT_GeomGuideList.html +1 -1
  76. data/rdoc/RubyXL/CT_GlowEffect.html +1 -1
  77. data/rdoc/RubyXL/CT_GradientFillProperties.html +1 -1
  78. data/rdoc/RubyXL/CT_GradientStop.html +1 -1
  79. data/rdoc/RubyXL/CT_GradientStopList.html +1 -1
  80. data/rdoc/RubyXL/CT_HSLEffect.html +1 -1
  81. data/rdoc/RubyXL/CT_HslColor.html +1 -1
  82. data/rdoc/RubyXL/CT_Hyperlink.html +1 -1
  83. data/rdoc/RubyXL/CT_InnerShadowEffect.html +1 -1
  84. data/rdoc/RubyXL/CT_LightRig.html +1 -1
  85. data/rdoc/RubyXL/CT_LineEndProperties.html +1 -1
  86. data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +1 -1
  87. data/rdoc/RubyXL/CT_LineProperties.html +1 -1
  88. data/rdoc/RubyXL/CT_LineStyleList.html +1 -1
  89. data/rdoc/RubyXL/CT_LinearShadeProperties.html +1 -1
  90. data/rdoc/RubyXL/CT_LuminanceEffect.html +1 -1
  91. data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +1 -1
  92. data/rdoc/RubyXL/CT_OuterShadowEffect.html +1 -1
  93. data/rdoc/RubyXL/CT_Path2D.html +1 -1
  94. data/rdoc/RubyXL/CT_Path2DArcTo.html +1 -1
  95. data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +1 -1
  96. data/rdoc/RubyXL/CT_Path2DList.html +1 -1
  97. data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +1 -1
  98. data/rdoc/RubyXL/CT_Path2DTo.html +1 -1
  99. data/rdoc/RubyXL/CT_PathShadeProperties.html +1 -1
  100. data/rdoc/RubyXL/CT_PatternFillProperties.html +1 -1
  101. data/rdoc/RubyXL/CT_Point3D.html +1 -1
  102. data/rdoc/RubyXL/CT_PolarAdjustHandle.html +1 -1
  103. data/rdoc/RubyXL/CT_PresetColor.html +1 -1
  104. data/rdoc/RubyXL/CT_PresetLineDashProperties.html +1 -1
  105. data/rdoc/RubyXL/CT_PresetShadowEffect.html +1 -1
  106. data/rdoc/RubyXL/CT_PresetTextShape.html +1 -1
  107. data/rdoc/RubyXL/CT_ReflectionEffect.html +1 -1
  108. data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +1 -1
  109. data/rdoc/RubyXL/CT_RelativeRect.html +1 -1
  110. data/rdoc/RubyXL/CT_SRgbColor.html +1 -1
  111. data/rdoc/RubyXL/CT_ScRgbColor.html +1 -1
  112. data/rdoc/RubyXL/CT_Scene3D.html +1 -1
  113. data/rdoc/RubyXL/CT_SchemeColor.html +1 -1
  114. data/rdoc/RubyXL/CT_Shape3D.html +1 -1
  115. data/rdoc/RubyXL/CT_ShapeStyle.html +1 -1
  116. data/rdoc/RubyXL/CT_SoftEdgesEffect.html +1 -1
  117. data/rdoc/RubyXL/CT_SphereCoords.html +1 -1
  118. data/rdoc/RubyXL/CT_StretchInfoProperties.html +1 -1
  119. data/rdoc/RubyXL/CT_StyleMatrix.html +1 -1
  120. data/rdoc/RubyXL/CT_StyleMatrixReference.html +1 -1
  121. data/rdoc/RubyXL/CT_SupplementalFont.html +1 -1
  122. data/rdoc/RubyXL/CT_SystemColor.html +1 -1
  123. data/rdoc/RubyXL/CT_TextAutonumberBullet.html +1 -1
  124. data/rdoc/RubyXL/CT_TextBlipBullet.html +1 -1
  125. data/rdoc/RubyXL/CT_TextCharBullet.html +1 -1
  126. data/rdoc/RubyXL/CT_TextCharacterProperties.html +1 -1
  127. data/rdoc/RubyXL/CT_TextFont.html +1 -1
  128. data/rdoc/RubyXL/CT_TextListStyle.html +1 -1
  129. data/rdoc/RubyXL/CT_TextNormalAutofit.html +1 -1
  130. data/rdoc/RubyXL/CT_TextParagraphProperties.html +1 -1
  131. data/rdoc/RubyXL/CT_TextSpacing.html +1 -1
  132. data/rdoc/RubyXL/CT_TextTabStop.html +1 -1
  133. data/rdoc/RubyXL/CT_TextTabStopList.html +1 -1
  134. data/rdoc/RubyXL/CT_TileInfoProperties.html +1 -1
  135. data/rdoc/RubyXL/CT_TintEffect.html +1 -1
  136. data/rdoc/RubyXL/CT_Transform2D.html +1 -1
  137. data/rdoc/RubyXL/CT_TransformEffect.html +1 -1
  138. data/rdoc/RubyXL/CT_Vector3D.html +1 -1
  139. data/rdoc/RubyXL/CT_XYAdjustHandle.html +1 -1
  140. data/rdoc/RubyXL/CalculationChain.html +1 -1
  141. data/rdoc/RubyXL/CalculationChainCell.html +1 -1
  142. data/rdoc/RubyXL/CalculationProperties.html +1 -1
  143. data/rdoc/RubyXL/Cell.html +1 -1
  144. data/rdoc/RubyXL/CellSmartTag.html +1 -1
  145. data/rdoc/RubyXL/CellSmartTagProperty.html +1 -1
  146. data/rdoc/RubyXL/CellSmartTags.html +1 -1
  147. data/rdoc/RubyXL/CellStyle.html +1 -1
  148. data/rdoc/RubyXL/CellStyleXFs.html +1 -1
  149. data/rdoc/RubyXL/CellStyles.html +1 -1
  150. data/rdoc/RubyXL/CellValue.html +1 -1
  151. data/rdoc/RubyXL/CellWatch.html +1 -1
  152. data/rdoc/RubyXL/CellWatches.html +1 -1
  153. data/rdoc/RubyXL/CellXFs.html +1 -1
  154. data/rdoc/RubyXL/ChartColorsFile.html +1 -1
  155. data/rdoc/RubyXL/ChartFile.html +1 -1
  156. data/rdoc/RubyXL/ChartRelationshipsFile.html +1 -1
  157. data/rdoc/RubyXL/ChartStyleFile.html +1 -1
  158. data/rdoc/RubyXL/ChartUserShapesFile.html +1 -1
  159. data/rdoc/RubyXL/Chartsheet.html +1 -1
  160. data/rdoc/RubyXL/ChartsheetPageSetup.html +1 -1
  161. data/rdoc/RubyXL/ChartsheetProperties.html +1 -1
  162. data/rdoc/RubyXL/ChartsheetProtection.html +1 -1
  163. data/rdoc/RubyXL/ChartsheetView.html +1 -1
  164. data/rdoc/RubyXL/ChartsheetViews.html +1 -1
  165. data/rdoc/RubyXL/Color.html +1 -1
  166. data/rdoc/RubyXL/ColorFilter.html +1 -1
  167. data/rdoc/RubyXL/ColorScale.html +1 -1
  168. data/rdoc/RubyXL/ColorSet.html +1 -1
  169. data/rdoc/RubyXL/Colors.html +1 -1
  170. data/rdoc/RubyXL/ColumnRange.html +1 -1
  171. data/rdoc/RubyXL/ColumnRanges.html +1 -1
  172. data/rdoc/RubyXL/Comment.html +1 -1
  173. data/rdoc/RubyXL/CommentList.html +1 -1
  174. data/rdoc/RubyXL/CommentsFile.html +1 -1
  175. data/rdoc/RubyXL/ConditionalFormatValue.html +1 -1
  176. data/rdoc/RubyXL/ConditionalFormatting.html +1 -1
  177. data/rdoc/RubyXL/ConditionalFormattingRule.html +1 -1
  178. data/rdoc/RubyXL/ContentTypeDefault.html +1 -1
  179. data/rdoc/RubyXL/ContentTypeOverride.html +1 -1
  180. data/rdoc/RubyXL/ContentTypes.html +1 -1
  181. data/rdoc/RubyXL/ControlPropertiesFile.html +1 -1
  182. data/rdoc/RubyXL/CorePropertiesFile.html +1 -1
  183. data/rdoc/RubyXL/CustomColor.html +1 -1
  184. data/rdoc/RubyXL/CustomColorList.html +1 -1
  185. data/rdoc/RubyXL/CustomFilter.html +1 -1
  186. data/rdoc/RubyXL/CustomFilters.html +1 -1
  187. data/rdoc/RubyXL/CustomGeometry.html +1 -1
  188. data/rdoc/RubyXL/CustomProperties.html +1 -1
  189. data/rdoc/RubyXL/CustomPropertiesFile.html +1 -1
  190. data/rdoc/RubyXL/CustomProperty.html +1 -1
  191. data/rdoc/RubyXL/CustomSheetView.html +1 -1
  192. data/rdoc/RubyXL/CustomSheetViews.html +1 -1
  193. data/rdoc/RubyXL/CustomWorkbookView.html +1 -1
  194. data/rdoc/RubyXL/CustomWorkbookViews.html +1 -1
  195. data/rdoc/RubyXL/CustomXMLFile.html +1 -1
  196. data/rdoc/RubyXL/DXF.html +1 -1
  197. data/rdoc/RubyXL/DXFs.html +1 -1
  198. data/rdoc/RubyXL/DataBar.html +1 -1
  199. data/rdoc/RubyXL/DataConsolidate.html +1 -1
  200. data/rdoc/RubyXL/DataConsolidationReference.html +1 -1
  201. data/rdoc/RubyXL/DataConsolidationReferences.html +1 -1
  202. data/rdoc/RubyXL/DataType.html +1 -1
  203. data/rdoc/RubyXL/DataValidation.html +1 -1
  204. data/rdoc/RubyXL/DataValidations.html +1 -1
  205. data/rdoc/RubyXL/DateGroupItem.html +1 -1
  206. data/rdoc/RubyXL/DefinedName.html +1 -1
  207. data/rdoc/RubyXL/DefinedNames.html +1 -1
  208. data/rdoc/RubyXL/DocumentPropertiesFile.html +1 -1
  209. data/rdoc/RubyXL/DrawingFile.html +7 -37
  210. data/rdoc/RubyXL/DrawingRelationshipsFile.html +1 -1
  211. data/rdoc/RubyXL/DynamicFilter.html +1 -1
  212. data/rdoc/RubyXL/EmbeddedControl.html +1 -1
  213. data/rdoc/RubyXL/EmbeddedControls.html +1 -1
  214. data/rdoc/RubyXL/Extension.html +1 -1
  215. data/rdoc/RubyXL/ExtensionStorageArea.html +1 -1
  216. data/rdoc/RubyXL/Extents.html +1 -1
  217. data/rdoc/RubyXL/ExternalLinksFile.html +1 -1
  218. data/rdoc/RubyXL/ExternalReference.html +1 -1
  219. data/rdoc/RubyXL/ExternalReferences.html +1 -1
  220. data/rdoc/RubyXL/ExtraColorSchemeList.html +1 -1
  221. data/rdoc/RubyXL/FieldItem.html +1 -1
  222. data/rdoc/RubyXL/FileRecoveryProperties.html +1 -1
  223. data/rdoc/RubyXL/FileSharing.html +1 -1
  224. data/rdoc/RubyXL/FileVersion.html +1 -1
  225. data/rdoc/RubyXL/Fill.html +1 -1
  226. data/rdoc/RubyXL/Fills.html +1 -1
  227. data/rdoc/RubyXL/FilterContainer.html +1 -1
  228. data/rdoc/RubyXL/FloatNode.html +1 -1
  229. data/rdoc/RubyXL/FloatValue.html +1 -1
  230. data/rdoc/RubyXL/Font.html +16 -16
  231. data/rdoc/RubyXL/FontScheme.html +1 -1
  232. data/rdoc/RubyXL/Fonts.html +1 -1
  233. data/rdoc/RubyXL/Formula.html +1 -1
  234. data/rdoc/RubyXL/FunctionGroup.html +1 -1
  235. data/rdoc/RubyXL/FunctionGroups.html +1 -1
  236. data/rdoc/RubyXL/GenericStorageObject.html +5 -6
  237. data/rdoc/RubyXL/GradientFill.html +1 -1
  238. data/rdoc/RubyXL/HeaderFooterSettings.html +1 -1
  239. data/rdoc/RubyXL/Hyperlink.html +1 -1
  240. data/rdoc/RubyXL/HyperlinkRelFile.html +1 -1
  241. data/rdoc/RubyXL/Hyperlinks.html +1 -1
  242. data/rdoc/RubyXL/IconFilter.html +1 -1
  243. data/rdoc/RubyXL/IconSet.html +1 -1
  244. data/rdoc/RubyXL/IgnoredError.html +1 -1
  245. data/rdoc/RubyXL/IgnoredErrors.html +1 -1
  246. data/rdoc/RubyXL/IndexedColors.html +1 -1
  247. data/rdoc/RubyXL/InputCells.html +1 -1
  248. data/rdoc/RubyXL/IntegerNode.html +1 -1
  249. data/rdoc/RubyXL/IntegerValue.html +1 -1
  250. data/rdoc/RubyXL/LegacyCell.html +1 -1
  251. data/rdoc/RubyXL/LegacyWorkbook.html +109 -115
  252. data/rdoc/RubyXL/LegacyWorksheet.html +40 -42
  253. data/rdoc/RubyXL/MRUColors.html +1 -1
  254. data/rdoc/RubyXL/MacrosFile.html +1 -1
  255. data/rdoc/RubyXL/MergedCell.html +1 -1
  256. data/rdoc/RubyXL/MergedCells.html +1 -1
  257. data/rdoc/RubyXL/NumFmt.html +1 -1
  258. data/rdoc/RubyXL/NumberFormat.html +1 -1
  259. data/rdoc/RubyXL/NumberFormats.html +1 -1
  260. data/rdoc/RubyXL/OLEObject.html +1 -1
  261. data/rdoc/RubyXL/OLEObjects.html +1 -1
  262. data/rdoc/RubyXL/OLESize.html +1 -1
  263. data/rdoc/RubyXL/OOXMLContainerObject.html +1 -1
  264. data/rdoc/RubyXL/OOXMLObject.html +1 -1
  265. data/rdoc/RubyXL/OOXMLObjectClassMethods.html +2 -38
  266. data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +1 -1
  267. data/rdoc/RubyXL/OOXMLRelationshipsFile.html +1 -1
  268. data/rdoc/RubyXL/OOXMLTopLevelObject.html +1 -1
  269. data/rdoc/RubyXL/Offset.html +1 -1
  270. data/rdoc/RubyXL/OutlineProperties.html +1 -1
  271. data/rdoc/RubyXL/PageMargins.html +1 -1
  272. data/rdoc/RubyXL/PageSetup.html +1 -1
  273. data/rdoc/RubyXL/PageSetupProperties.html +1 -1
  274. data/rdoc/RubyXL/Pane.html +1 -1
  275. data/rdoc/RubyXL/Parser.html +1 -16
  276. data/rdoc/RubyXL/PatternFill.html +1 -1
  277. data/rdoc/RubyXL/PhoneticProperties.html +1 -1
  278. data/rdoc/RubyXL/PhoneticRun.html +1 -1
  279. data/rdoc/RubyXL/PivotArea.html +1 -1
  280. data/rdoc/RubyXL/PivotCache.html +1 -1
  281. data/rdoc/RubyXL/PivotCacheDefinitionFile.html +1 -1
  282. data/rdoc/RubyXL/PivotCaches.html +1 -1
  283. data/rdoc/RubyXL/PivotReference.html +1 -1
  284. data/rdoc/RubyXL/PivotReferences.html +1 -1
  285. data/rdoc/RubyXL/PivotTableFile.html +1 -1
  286. data/rdoc/RubyXL/PivotTableSelection.html +1 -1
  287. data/rdoc/RubyXL/PresetGeometry.html +1 -1
  288. data/rdoc/RubyXL/PrintOptions.html +1 -1
  289. data/rdoc/RubyXL/PrinterSettingsFile.html +1 -1
  290. data/rdoc/RubyXL/ProtectedRange.html +1 -1
  291. data/rdoc/RubyXL/ProtectedRanges.html +1 -1
  292. data/rdoc/RubyXL/Protection.html +1 -1
  293. data/rdoc/RubyXL/REL_CLASS.html +105 -0
  294. data/rdoc/RubyXL/RID.html +1 -1
  295. data/rdoc/RubyXL/RawOOXML.html +1 -1
  296. data/rdoc/RubyXL/Reference.html +1 -1
  297. data/rdoc/RubyXL/Relationship.html +1 -1
  298. data/rdoc/RubyXL/RelationshipSupport.html +1 -1
  299. data/rdoc/RubyXL/RichText.html +1 -1
  300. data/rdoc/RubyXL/RichTextRun.html +1 -1
  301. data/rdoc/RubyXL/RootRelationships.html +1 -1
  302. data/rdoc/RubyXL/Row.html +1 -1
  303. data/rdoc/RubyXL/RunProperties.html +1 -1
  304. data/rdoc/RubyXL/Scenario.html +1 -1
  305. data/rdoc/RubyXL/Scenarios.html +1 -1
  306. data/rdoc/RubyXL/Selection.html +1 -1
  307. data/rdoc/RubyXL/ShapeGuide.html +1 -1
  308. data/rdoc/RubyXL/ShapeTextRectangle.html +1 -1
  309. data/rdoc/RubyXL/SharedStringsTable.html +1 -1
  310. data/rdoc/RubyXL/Sheet.html +1 -1
  311. data/rdoc/RubyXL/SheetCalculationProperties.html +1 -1
  312. data/rdoc/RubyXL/SheetData.html +1 -1
  313. data/rdoc/RubyXL/SheetRelationshipsFile.html +1 -1
  314. data/rdoc/RubyXL/Sheets.html +1 -1
  315. data/rdoc/RubyXL/SlicerCacheFile.html +1 -1
  316. data/rdoc/RubyXL/SlicerFile.html +1 -1
  317. data/rdoc/RubyXL/SmartTagProperties.html +1 -1
  318. data/rdoc/RubyXL/SmartTagType.html +1 -1
  319. data/rdoc/RubyXL/SmartTagTypes.html +1 -1
  320. data/rdoc/RubyXL/SmartTags.html +1 -1
  321. data/rdoc/RubyXL/SortCondition.html +1 -1
  322. data/rdoc/RubyXL/SortState.html +1 -1
  323. data/rdoc/RubyXL/Sqref.html +1 -1
  324. data/rdoc/RubyXL/Stop.html +1 -1
  325. data/rdoc/RubyXL/StringNode.html +1 -1
  326. data/rdoc/RubyXL/StringNodeW3C.html +1 -1
  327. data/rdoc/RubyXL/StringValue.html +1 -1
  328. data/rdoc/RubyXL/Stylesheet.html +1 -1
  329. data/rdoc/RubyXL/TableFile.html +1 -1
  330. data/rdoc/RubyXL/TableParts.html +1 -1
  331. data/rdoc/RubyXL/TableStyle.html +1 -1
  332. data/rdoc/RubyXL/TableStyles.html +1 -1
  333. data/rdoc/RubyXL/Text.html +1 -1
  334. data/rdoc/RubyXL/Theme.html +1 -1
  335. data/rdoc/RubyXL/ThemeElements.html +1 -1
  336. data/rdoc/RubyXL/ThumbnailFile.html +1 -1
  337. data/rdoc/RubyXL/Top10.html +1 -1
  338. data/rdoc/RubyXL/VMLDrawingFile.html +1 -1
  339. data/rdoc/RubyXL/Variant.html +1 -1
  340. data/rdoc/RubyXL/Vector.html +1 -1
  341. data/rdoc/RubyXL/VectorValue.html +1 -1
  342. data/rdoc/RubyXL/VisualProperties.html +1 -1
  343. data/rdoc/RubyXL/WebPublishObject.html +1 -1
  344. data/rdoc/RubyXL/WebPublishObjects.html +1 -1
  345. data/rdoc/RubyXL/WebPublishingItem.html +1 -1
  346. data/rdoc/RubyXL/WebPublishingItems.html +1 -1
  347. data/rdoc/RubyXL/WebPublishingProperties.html +1 -1
  348. data/rdoc/RubyXL/Workbook.html +1 -1
  349. data/rdoc/RubyXL/WorkbookProperties.html +1 -1
  350. data/rdoc/RubyXL/WorkbookProtection.html +1 -1
  351. data/rdoc/RubyXL/WorkbookRelationships.html +1 -1
  352. data/rdoc/RubyXL/WorkbookRoot.html +66 -25
  353. data/rdoc/RubyXL/WorkbookView.html +1 -1
  354. data/rdoc/RubyXL/WorkbookViews.html +1 -1
  355. data/rdoc/RubyXL/Worksheet.html +1 -1
  356. data/rdoc/RubyXL/WorksheetDimensions.html +1 -1
  357. data/rdoc/RubyXL/WorksheetFormatProperties.html +1 -1
  358. data/rdoc/RubyXL/WorksheetProperties.html +1 -1
  359. data/rdoc/RubyXL/WorksheetProtection.html +1 -1
  360. data/rdoc/RubyXL/WorksheetView.html +1 -1
  361. data/rdoc/RubyXL/WorksheetViews.html +1 -1
  362. data/rdoc/RubyXL/XF.html +1 -1
  363. data/rdoc/created.rid +22 -22
  364. data/rdoc/index.html +2 -2
  365. data/rdoc/js/search_index.js +1 -1
  366. data/rdoc/table_of_contents.html +80 -80
  367. data/rubyXL.gemspec +4 -3
  368. data/spec/lib/parser_spec.rb +0 -10
  369. metadata +3 -2
data/lib/rubyXL/parser.rb CHANGED
@@ -20,21 +20,6 @@ module RubyXL
20
20
 
21
21
  wb = root.workbook
22
22
 
23
- if wb.stylesheet then
24
- #fills out count information for each font, fill, and border
25
- wb.cell_xfs.each { |style|
26
-
27
- id = style.font_id
28
- wb.fonts[id].count += 1 #unless id.nil?
29
-
30
- id = style.fill_id
31
- wb.fills[id].count += 1 #unless id.nil?
32
-
33
- id = style.border_id
34
- wb.borders[id].count += 1 #unless id.nil?
35
- }
36
- end
37
-
38
23
  wb.sheets.each_with_index { |sheet, i|
39
24
  sheet_obj = wb.relationship_container.related_files[sheet.r_id]
40
25
 
@@ -5,7 +5,6 @@ require 'zip'
5
5
  module RubyXL
6
6
  module LegacyWorkbook
7
7
  include Enumerable
8
- attr_accessor :worksheets
9
8
 
10
9
  SHEET_NAME_TEMPLATE = 'Sheet%d'
11
10
  APPLICATION = 'Microsoft Macintosh Excel'
@@ -68,58 +67,34 @@ module RubyXL
68
67
  end until self[name].nil?
69
68
  end
70
69
 
71
- new_worksheet = Worksheet.new(:workbook => self, :sheet_name => name || get_default_name)
70
+ new_worksheet = Worksheet.new(:workbook => self, :sheet_name => name)
72
71
  worksheets << new_worksheet
73
72
  new_worksheet
74
73
  end
75
74
 
76
75
  def each
77
- worksheets.each{|i| yield i}
76
+ worksheets.each{ |i| yield i }
78
77
  end
79
78
 
80
- #filepath of xlsx file (including file itself)
81
- def write(filepath)
79
+ # Return the resulting XLSX file in a stream (useful for sending over HTTP)
80
+ def stream
81
+ root.stream
82
+ end
83
+
84
+ # Save the resulting XLSX file to the specified location
85
+ def save(filepath = nil)
82
86
  filepath ||= root.filepath
83
87
 
84
88
  extension = File.extname(filepath)
85
- unless %w{.xlsx .xlsm}.include?(extension)
86
- raise "Only xlsx and xlsm files are supported. Unsupported extension: #{extension}"
89
+ unless %w{.xlsx .xlsm}.include?(extension.downcase)
90
+ raise "Unsupported extension: #{extension} (only .xlsx and .xlsm files are supported)."
87
91
  end
88
92
 
89
- dirpath = File.dirname(filepath)
90
- temppath = File.join(dirpath, Dir::Tmpname.make_tmpname([ File.basename(filepath), '.tmp' ], nil))
91
- FileUtils.mkdir_p(temppath)
92
- zippath = File.join(temppath, 'file.zip')
93
-
94
- ::Zip::File.open(zippath, ::Zip::File::CREATE) { |zipfile|
95
- root.rels_hash = {}
96
- root.relationship_container.owner = root
97
- root.content_types.overrides = []
98
- root.content_types.owner = root
99
- root.collect_related_objects.compact.each { |obj|
100
- puts "<-- DEBUG: adding relationship to #{obj.class}" if @@debug
101
- root.rels_hash[obj.class] ||= []
102
- root.rels_hash[obj.class] << obj
103
- }
104
-
105
- root.rels_hash.keys.sort_by{ |c| c.save_order }.each { |klass|
106
- puts "<-- DEBUG: saving related #{klass} files" if @@debug
107
- root.rels_hash[klass].each { |obj|
108
- obj.workbook = self if obj.respond_to?(:workbook=)
109
- puts "<-- DEBUG: > #{obj.xlsx_path}" if @@debug
110
- root.content_types.add_override(obj)
111
- obj.add_to_zip(zipfile)
112
- }
113
- }
114
-
115
- self.add_to_zip(zipfile)
116
- }
117
-
118
- FileUtils.mv(zippath, filepath)
119
- FileUtils.rm_rf(temppath) if File.exist?(filepath)
93
+ File.open(filepath, "w") { |output_file| FileUtils.copy_stream(root.stream, output_file) }
120
94
 
121
95
  return filepath
122
96
  end
97
+ alias_method :write, :save
123
98
 
124
99
  def base_date
125
100
  if date1904 then
@@ -148,44 +123,26 @@ module RubyXL
148
123
 
149
124
  def register_new_fill(new_fill, old_xf)
150
125
  new_xf = old_xf.dup
151
-
152
- unless fills[old_xf.fill_id].count == 1 && old_xf.fill_id > 2 # If the old fill is not used anymore, just replace it
153
- new_xf.fill_id = fills.find_index { |x| x == new_fill } # Use existing fill, if it exists
154
- new_xf.fill_id ||= fills.size # If this fill has never existed before, add it to collection.
155
- end
156
-
157
- fills[old_xf.fill_id].count -= 1
158
- new_fill.count += 1
159
- fills[new_xf.fill_id] = new_fill
160
-
161
126
  new_xf.apply_fill = true
127
+ new_xf.fill_id = fills.find_index { |x| x == new_fill } # Use existing fill, if it exists
128
+ new_xf.fill_id ||= fills.size # If this fill has never existed before, add it to collection.
129
+ fills[new_xf.fill_id] = new_fill
162
130
  new_xf
163
131
  end
164
132
 
165
133
  def register_new_font(new_font, old_xf)
166
134
  new_xf = old_xf.dup
167
-
168
- unless fonts[old_xf.font_id].count == 1 && old_xf.font_id > 1 # If the old font is not used anymore, just replace it
169
- new_xf.font_id = fonts.find_index { |x| x == new_font } # Use existing font, if it exists
170
- new_xf.font_id ||= fonts.size # If this font has never existed before, add it to collection.
171
- end
172
-
173
- fonts[old_xf.font_id].count -= 1
174
- new_font.count += 1
175
- fonts[new_xf.font_id] = new_font
176
-
177
135
  new_xf.apply_font = true
136
+ new_xf.font_id = fonts.find_index { |x| x == new_font } # Use existing font, if it exists
137
+ new_xf.font_id ||= fonts.size # If this font has never existed before, add it to collection.
138
+ fonts[new_xf.font_id] = new_font
178
139
  new_xf
179
140
  end
180
141
 
181
142
  def register_new_xf(new_xf, old_style_index)
182
143
  new_xf_id = cell_xfs.find_index { |xf| xf == new_xf } # Use existing XF, if it exists
183
144
  new_xf_id ||= cell_xfs.size # If this XF has never existed before, add it to collection.
184
-
185
- cell_xfs[old_style_index].count -= 1
186
- new_xf.count += 1
187
145
  cell_xfs[new_xf_id] = new_xf
188
-
189
146
  new_xf_id
190
147
  end
191
148
 
@@ -218,18 +175,12 @@ module RubyXL
218
175
  new_border.set_edge_style(direction, weight)
219
176
 
220
177
  new_xf = old_xf.dup
178
+ new_xf.apply_border = true
221
179
 
222
- unless borders[old_xf.border_id].count == 1 && old_xf.border_id > 0 # If the old border not used anymore, just replace it
223
- new_xf.border_id = borders.find_index { |x| x == new_border } # Use existing border, if it exists
224
- new_xf.border_id ||= borders.size # If this border has never existed before, add it to collection.
225
- end
226
-
227
- borders[old_xf.border_id].count -= 1
228
- new_border.count += 1
180
+ new_xf.border_id = borders.find_index { |x| x == new_border } # Use existing border, if it exists
181
+ new_xf.border_id ||= borders.size # If this border has never existed before, add it to collection.
229
182
  borders[new_xf.border_id] = new_border
230
183
 
231
- new_xf.apply_border = true
232
-
233
184
  register_new_xf(new_xf, style_index)
234
185
  end
235
186
 
@@ -350,8 +350,6 @@ module LegacyWorksheet
350
350
  sheet_data.rows[row].cells[column] = c
351
351
  end
352
352
 
353
- add_cell_style(row, column)
354
-
355
353
  sheet_data.rows[row].cells[column]
356
354
  end
357
355
 
@@ -916,13 +914,6 @@ module LegacyWorksheet
916
914
  }
917
915
  end
918
916
 
919
- def add_cell_style(row,column)
920
- xf = @workbook.cell_xfs[sheet_data.rows[row].cells[column].style_index]
921
- @workbook.fonts[xf.font_id].count += 1
922
- @workbook.fills[xf.fill_id].count += 1
923
- @workbook.borders[xf.border_id].count += 1
924
- end
925
-
926
917
  def validate_nonnegative(row_or_col)
927
918
  raise 'Row and Column arguments must be nonnegative' if row_or_col < 0
928
919
  end
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>README - rubyXL 3.0.2</title>
7
+ <title>README - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="./fonts.css" rel="stylesheet">
10
10
  <link href="./rdoc.css" rel="stylesheet">
data/rdoc/RubyXL.html CHANGED
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>module RubyXL - rubyXL 3.0.2</title>
7
+ <title>module RubyXL - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="./fonts.css" rel="stylesheet">
10
10
  <link href="./rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AExtension - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::AExtension - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AExtensionStorageArea - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::AExtensionStorageArea - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AdjustHandleList - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::AdjustHandleList - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::Alignment - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::Alignment - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AlternateContent - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::AlternateContent - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::Authors - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::Authors - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AutoFilter - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::AutoFilter - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::AutoFilterColumn - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::AutoFilterColumn - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::BinaryImageFile - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::BinaryImageFile - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::BodyProperties - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::BodyProperties - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::BooleanNode - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::BooleanNode - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::BooleanValue - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::BooleanValue - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::Border - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::Border - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::BorderEdge - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::BorderEdge - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::Borders - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::Borders - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::Break - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::Break - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::BreakList - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::BreakList - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::CT_AdjPoint2D - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::CT_AdjPoint2D - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::CT_AlphaBiLevelEffect - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::CT_AlphaBiLevelEffect - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::CT_AlphaModulateEffect - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::CT_AlphaModulateEffect - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::CT_AlphaModulateFixedEffect - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::CT_AlphaModulateFixedEffect - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::CT_AlphaOutsetEffect - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::CT_AlphaOutsetEffect - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::CT_AlphaReplaceEffect - rubyXL 3.0.2</title>
7
+ <title>class RubyXL::CT_AlphaReplaceEffect - rubyXL 3.1.0</title>
8
8
 
9
9
  <link href="../fonts.css" rel="stylesheet">
10
10
  <link href="../rdoc.css" rel="stylesheet">