rubyXL 3.2.3 → 3.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (353) hide show
  1. checksums.yaml +4 -4
  2. data/README.rdoc +8 -1
  3. data/VERSION +1 -1
  4. data/lib/rubyXL/{workbook.rb → convenience_methods.rb} +73 -103
  5. data/lib/rubyXL/objects/document_properties.rb +4 -4
  6. data/lib/rubyXL/objects/workbook.rb +62 -57
  7. data/rdoc/README_rdoc.html +12 -3
  8. data/rdoc/RubyXL.html +2 -2
  9. data/rdoc/RubyXL/AExtension.html +2 -2
  10. data/rdoc/RubyXL/AExtensionStorageArea.html +2 -2
  11. data/rdoc/RubyXL/AdjustHandleList.html +2 -2
  12. data/rdoc/RubyXL/Alignment.html +2 -2
  13. data/rdoc/RubyXL/AlternateContent.html +2 -2
  14. data/rdoc/RubyXL/Authors.html +2 -2
  15. data/rdoc/RubyXL/AutoFilter.html +2 -2
  16. data/rdoc/RubyXL/AutoFilterColumn.html +2 -2
  17. data/rdoc/RubyXL/BinaryImageFile.html +2 -2
  18. data/rdoc/RubyXL/BodyProperties.html +2 -2
  19. data/rdoc/RubyXL/BooleanNode.html +2 -2
  20. data/rdoc/RubyXL/BooleanValue.html +2 -2
  21. data/rdoc/RubyXL/Border.html +2 -2
  22. data/rdoc/RubyXL/BorderEdge.html +2 -2
  23. data/rdoc/RubyXL/Borders.html +2 -2
  24. data/rdoc/RubyXL/Break.html +2 -2
  25. data/rdoc/RubyXL/BreakList.html +2 -2
  26. data/rdoc/RubyXL/CT_AdjPoint2D.html +2 -2
  27. data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +2 -2
  28. data/rdoc/RubyXL/CT_AlphaModulateEffect.html +2 -2
  29. data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +2 -2
  30. data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +2 -2
  31. data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +2 -2
  32. data/rdoc/RubyXL/CT_Backdrop.html +2 -2
  33. data/rdoc/RubyXL/CT_Bevel.html +2 -2
  34. data/rdoc/RubyXL/CT_BiLevelEffect.html +2 -2
  35. data/rdoc/RubyXL/CT_BlendEffect.html +2 -2
  36. data/rdoc/RubyXL/CT_Blip.html +2 -2
  37. data/rdoc/RubyXL/CT_BlipFillProperties.html +2 -2
  38. data/rdoc/RubyXL/CT_BlurEffect.html +2 -2
  39. data/rdoc/RubyXL/CT_Camera.html +2 -2
  40. data/rdoc/RubyXL/CT_Color.html +2 -2
  41. data/rdoc/RubyXL/CT_ColorChangeEffect.html +2 -2
  42. data/rdoc/RubyXL/CT_ColorMapping.html +2 -2
  43. data/rdoc/RubyXL/CT_ColorScheme.html +2 -2
  44. data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +2 -2
  45. data/rdoc/RubyXL/CT_ConnectionSite.html +2 -2
  46. data/rdoc/RubyXL/CT_ConnectionSiteList.html +2 -2
  47. data/rdoc/RubyXL/CT_DashStop.html +2 -2
  48. data/rdoc/RubyXL/CT_DashStopList.html +2 -2
  49. data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +2 -2
  50. data/rdoc/RubyXL/CT_DuotoneEffect.html +2 -2
  51. data/rdoc/RubyXL/CT_EffectContainer.html +2 -2
  52. data/rdoc/RubyXL/CT_EffectList.html +2 -2
  53. data/rdoc/RubyXL/CT_EffectReference.html +2 -2
  54. data/rdoc/RubyXL/CT_EffectStyleItem.html +2 -2
  55. data/rdoc/RubyXL/CT_EffectStyleList.html +2 -2
  56. data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +2 -2
  57. data/rdoc/RubyXL/CT_FillEffect.html +2 -2
  58. data/rdoc/RubyXL/CT_FillOverlayEffect.html +2 -2
  59. data/rdoc/RubyXL/CT_FillStyleList.html +2 -2
  60. data/rdoc/RubyXL/CT_FlatText.html +2 -2
  61. data/rdoc/RubyXL/CT_FontCollection.html +2 -2
  62. data/rdoc/RubyXL/CT_FontReference.html +2 -2
  63. data/rdoc/RubyXL/CT_GeomGuideList.html +2 -2
  64. data/rdoc/RubyXL/CT_GlowEffect.html +2 -2
  65. data/rdoc/RubyXL/CT_GradientFillProperties.html +2 -2
  66. data/rdoc/RubyXL/CT_GradientStop.html +2 -2
  67. data/rdoc/RubyXL/CT_GradientStopList.html +2 -2
  68. data/rdoc/RubyXL/CT_HSLEffect.html +2 -2
  69. data/rdoc/RubyXL/CT_HslColor.html +2 -2
  70. data/rdoc/RubyXL/CT_Hyperlink.html +2 -2
  71. data/rdoc/RubyXL/CT_InnerShadowEffect.html +2 -2
  72. data/rdoc/RubyXL/CT_LightRig.html +2 -2
  73. data/rdoc/RubyXL/CT_LineEndProperties.html +2 -2
  74. data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +2 -2
  75. data/rdoc/RubyXL/CT_LineProperties.html +2 -2
  76. data/rdoc/RubyXL/CT_LineStyleList.html +2 -2
  77. data/rdoc/RubyXL/CT_LinearShadeProperties.html +2 -2
  78. data/rdoc/RubyXL/CT_LuminanceEffect.html +2 -2
  79. data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +2 -2
  80. data/rdoc/RubyXL/CT_OuterShadowEffect.html +2 -2
  81. data/rdoc/RubyXL/CT_Path2D.html +2 -2
  82. data/rdoc/RubyXL/CT_Path2DArcTo.html +2 -2
  83. data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +2 -2
  84. data/rdoc/RubyXL/CT_Path2DList.html +2 -2
  85. data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +2 -2
  86. data/rdoc/RubyXL/CT_Path2DTo.html +2 -2
  87. data/rdoc/RubyXL/CT_PathShadeProperties.html +2 -2
  88. data/rdoc/RubyXL/CT_PatternFillProperties.html +2 -2
  89. data/rdoc/RubyXL/CT_Point3D.html +2 -2
  90. data/rdoc/RubyXL/CT_PolarAdjustHandle.html +2 -2
  91. data/rdoc/RubyXL/CT_PresetColor.html +2 -2
  92. data/rdoc/RubyXL/CT_PresetLineDashProperties.html +2 -2
  93. data/rdoc/RubyXL/CT_PresetShadowEffect.html +2 -2
  94. data/rdoc/RubyXL/CT_PresetTextShape.html +2 -2
  95. data/rdoc/RubyXL/CT_ReflectionEffect.html +2 -2
  96. data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +2 -2
  97. data/rdoc/RubyXL/CT_RelativeRect.html +2 -2
  98. data/rdoc/RubyXL/CT_SRgbColor.html +2 -2
  99. data/rdoc/RubyXL/CT_ScRgbColor.html +2 -2
  100. data/rdoc/RubyXL/CT_Scene3D.html +2 -2
  101. data/rdoc/RubyXL/CT_SchemeColor.html +2 -2
  102. data/rdoc/RubyXL/CT_Shape3D.html +2 -2
  103. data/rdoc/RubyXL/CT_ShapeStyle.html +2 -2
  104. data/rdoc/RubyXL/CT_SoftEdgesEffect.html +2 -2
  105. data/rdoc/RubyXL/CT_SphereCoords.html +2 -2
  106. data/rdoc/RubyXL/CT_StretchInfoProperties.html +2 -2
  107. data/rdoc/RubyXL/CT_StyleMatrix.html +2 -2
  108. data/rdoc/RubyXL/CT_StyleMatrixReference.html +2 -2
  109. data/rdoc/RubyXL/CT_SupplementalFont.html +2 -2
  110. data/rdoc/RubyXL/CT_SystemColor.html +2 -2
  111. data/rdoc/RubyXL/CT_TextAutonumberBullet.html +2 -2
  112. data/rdoc/RubyXL/CT_TextBlipBullet.html +2 -2
  113. data/rdoc/RubyXL/CT_TextCharBullet.html +2 -2
  114. data/rdoc/RubyXL/CT_TextCharacterProperties.html +2 -2
  115. data/rdoc/RubyXL/CT_TextFont.html +2 -2
  116. data/rdoc/RubyXL/CT_TextListStyle.html +2 -2
  117. data/rdoc/RubyXL/CT_TextNormalAutofit.html +2 -2
  118. data/rdoc/RubyXL/CT_TextParagraphProperties.html +2 -2
  119. data/rdoc/RubyXL/CT_TextSpacing.html +2 -2
  120. data/rdoc/RubyXL/CT_TextTabStop.html +2 -2
  121. data/rdoc/RubyXL/CT_TextTabStopList.html +2 -2
  122. data/rdoc/RubyXL/CT_TileInfoProperties.html +2 -2
  123. data/rdoc/RubyXL/CT_TintEffect.html +2 -2
  124. data/rdoc/RubyXL/CT_Transform2D.html +2 -2
  125. data/rdoc/RubyXL/CT_TransformEffect.html +2 -2
  126. data/rdoc/RubyXL/CT_Vector3D.html +2 -2
  127. data/rdoc/RubyXL/CT_XYAdjustHandle.html +2 -2
  128. data/rdoc/RubyXL/CalculationChain.html +2 -2
  129. data/rdoc/RubyXL/CalculationChainCell.html +2 -2
  130. data/rdoc/RubyXL/CalculationProperties.html +2 -2
  131. data/rdoc/RubyXL/Cell.html +2 -2
  132. data/rdoc/RubyXL/CellSmartTag.html +2 -2
  133. data/rdoc/RubyXL/CellSmartTagProperty.html +2 -2
  134. data/rdoc/RubyXL/CellSmartTags.html +2 -2
  135. data/rdoc/RubyXL/CellStyle.html +2 -2
  136. data/rdoc/RubyXL/CellStyleXFs.html +2 -2
  137. data/rdoc/RubyXL/CellStyles.html +2 -2
  138. data/rdoc/RubyXL/CellValue.html +2 -2
  139. data/rdoc/RubyXL/CellWatch.html +2 -2
  140. data/rdoc/RubyXL/CellWatches.html +2 -2
  141. data/rdoc/RubyXL/CellXFs.html +2 -2
  142. data/rdoc/RubyXL/ChartColorsFile.html +2 -2
  143. data/rdoc/RubyXL/ChartFile.html +2 -2
  144. data/rdoc/RubyXL/ChartStyleFile.html +2 -2
  145. data/rdoc/RubyXL/ChartUserShapesFile.html +2 -2
  146. data/rdoc/RubyXL/Chartsheet.html +2 -2
  147. data/rdoc/RubyXL/ChartsheetPageSetup.html +2 -2
  148. data/rdoc/RubyXL/ChartsheetProperties.html +2 -2
  149. data/rdoc/RubyXL/ChartsheetProtection.html +2 -2
  150. data/rdoc/RubyXL/ChartsheetView.html +2 -2
  151. data/rdoc/RubyXL/ChartsheetViews.html +2 -2
  152. data/rdoc/RubyXL/Color.html +2 -2
  153. data/rdoc/RubyXL/ColorFilter.html +2 -2
  154. data/rdoc/RubyXL/ColorScale.html +2 -2
  155. data/rdoc/RubyXL/ColorSet.html +2 -2
  156. data/rdoc/RubyXL/Colors.html +2 -2
  157. data/rdoc/RubyXL/ColumnRange.html +2 -2
  158. data/rdoc/RubyXL/ColumnRanges.html +2 -2
  159. data/rdoc/RubyXL/Comment.html +2 -2
  160. data/rdoc/RubyXL/CommentList.html +2 -2
  161. data/rdoc/RubyXL/CommentsFile.html +2 -2
  162. data/rdoc/RubyXL/ConditionalFormatValue.html +2 -2
  163. data/rdoc/RubyXL/ConditionalFormatting.html +2 -2
  164. data/rdoc/RubyXL/ConditionalFormattingRule.html +2 -2
  165. data/rdoc/RubyXL/ContentTypeDefault.html +2 -2
  166. data/rdoc/RubyXL/ContentTypeOverride.html +2 -2
  167. data/rdoc/RubyXL/ContentTypes.html +2 -2
  168. data/rdoc/RubyXL/ControlPropertiesFile.html +2 -2
  169. data/rdoc/RubyXL/CorePropertiesFile.html +2 -2
  170. data/rdoc/RubyXL/CustomColor.html +2 -2
  171. data/rdoc/RubyXL/CustomColorList.html +2 -2
  172. data/rdoc/RubyXL/CustomFilter.html +2 -2
  173. data/rdoc/RubyXL/CustomFilters.html +2 -2
  174. data/rdoc/RubyXL/CustomGeometry.html +2 -2
  175. data/rdoc/RubyXL/CustomProperties.html +2 -2
  176. data/rdoc/RubyXL/CustomPropertiesFile.html +2 -2
  177. data/rdoc/RubyXL/CustomProperty.html +2 -2
  178. data/rdoc/RubyXL/CustomSheetView.html +2 -2
  179. data/rdoc/RubyXL/CustomSheetViews.html +2 -2
  180. data/rdoc/RubyXL/CustomWorkbookView.html +2 -2
  181. data/rdoc/RubyXL/CustomWorkbookViews.html +2 -2
  182. data/rdoc/RubyXL/CustomXMLFile.html +2 -2
  183. data/rdoc/RubyXL/DXF.html +2 -2
  184. data/rdoc/RubyXL/DXFs.html +2 -2
  185. data/rdoc/RubyXL/DataBar.html +2 -2
  186. data/rdoc/RubyXL/DataConsolidate.html +2 -2
  187. data/rdoc/RubyXL/DataConsolidationReference.html +2 -2
  188. data/rdoc/RubyXL/DataConsolidationReferences.html +2 -2
  189. data/rdoc/RubyXL/DataType.html +2 -2
  190. data/rdoc/RubyXL/DataValidation.html +2 -2
  191. data/rdoc/RubyXL/DataValidations.html +2 -2
  192. data/rdoc/RubyXL/DateGroupItem.html +2 -2
  193. data/rdoc/RubyXL/DefinedName.html +2 -2
  194. data/rdoc/RubyXL/DefinedNames.html +2 -2
  195. data/rdoc/RubyXL/DocumentPropertiesFile.html +2 -2
  196. data/rdoc/RubyXL/DrawingFile.html +2 -2
  197. data/rdoc/RubyXL/DynamicFilter.html +2 -2
  198. data/rdoc/RubyXL/EmbeddedControl.html +2 -2
  199. data/rdoc/RubyXL/EmbeddedControls.html +2 -2
  200. data/rdoc/RubyXL/Extension.html +2 -2
  201. data/rdoc/RubyXL/ExtensionStorageArea.html +2 -2
  202. data/rdoc/RubyXL/Extents.html +2 -2
  203. data/rdoc/RubyXL/ExternalLinksFile.html +2 -2
  204. data/rdoc/RubyXL/ExternalReference.html +2 -2
  205. data/rdoc/RubyXL/ExternalReferences.html +2 -2
  206. data/rdoc/RubyXL/ExtraColorSchemeList.html +2 -2
  207. data/rdoc/RubyXL/FieldItem.html +2 -2
  208. data/rdoc/RubyXL/FileRecoveryProperties.html +2 -2
  209. data/rdoc/RubyXL/FileSharing.html +2 -2
  210. data/rdoc/RubyXL/FileVersion.html +2 -2
  211. data/rdoc/RubyXL/Fill.html +2 -2
  212. data/rdoc/RubyXL/Fills.html +2 -2
  213. data/rdoc/RubyXL/FilterContainer.html +2 -2
  214. data/rdoc/RubyXL/FloatNode.html +2 -2
  215. data/rdoc/RubyXL/FloatValue.html +2 -2
  216. data/rdoc/RubyXL/Font.html +2 -2
  217. data/rdoc/RubyXL/FontScheme.html +2 -2
  218. data/rdoc/RubyXL/Fonts.html +2 -2
  219. data/rdoc/RubyXL/Formula.html +2 -2
  220. data/rdoc/RubyXL/FunctionGroup.html +2 -2
  221. data/rdoc/RubyXL/FunctionGroups.html +2 -2
  222. data/rdoc/RubyXL/GenericStorageObject.html +2 -2
  223. data/rdoc/RubyXL/GradientFill.html +2 -2
  224. data/rdoc/RubyXL/HeaderFooterSettings.html +2 -2
  225. data/rdoc/RubyXL/Hyperlink.html +2 -2
  226. data/rdoc/RubyXL/HyperlinkRelFile.html +2 -2
  227. data/rdoc/RubyXL/Hyperlinks.html +2 -2
  228. data/rdoc/RubyXL/IconFilter.html +2 -2
  229. data/rdoc/RubyXL/IconSet.html +2 -2
  230. data/rdoc/RubyXL/IgnoredError.html +2 -2
  231. data/rdoc/RubyXL/IgnoredErrors.html +2 -2
  232. data/rdoc/RubyXL/IndexedColors.html +2 -2
  233. data/rdoc/RubyXL/InputCells.html +2 -2
  234. data/rdoc/RubyXL/IntegerNode.html +2 -2
  235. data/rdoc/RubyXL/IntegerValue.html +2 -2
  236. data/rdoc/RubyXL/LegacyCell.html +2 -2
  237. data/rdoc/RubyXL/LegacyWorksheet.html +2 -2
  238. data/rdoc/RubyXL/MRUColors.html +2 -2
  239. data/rdoc/RubyXL/MacrosFile.html +2 -2
  240. data/rdoc/RubyXL/MergedCell.html +2 -2
  241. data/rdoc/RubyXL/MergedCells.html +2 -2
  242. data/rdoc/RubyXL/NumFmt.html +2 -2
  243. data/rdoc/RubyXL/NumberFormat.html +2 -2
  244. data/rdoc/RubyXL/NumberFormats.html +2 -2
  245. data/rdoc/RubyXL/OLEObject.html +2 -2
  246. data/rdoc/RubyXL/OLEObjects.html +2 -2
  247. data/rdoc/RubyXL/OLESize.html +2 -2
  248. data/rdoc/RubyXL/OOXMLContainerObject.html +2 -2
  249. data/rdoc/RubyXL/OOXMLObject.html +2 -2
  250. data/rdoc/RubyXL/OOXMLObjectClassMethods.html +2 -2
  251. data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +2 -2
  252. data/rdoc/RubyXL/OOXMLRelationshipsFile.html +2 -2
  253. data/rdoc/RubyXL/OOXMLTopLevelObject.html +2 -2
  254. data/rdoc/RubyXL/Offset.html +2 -2
  255. data/rdoc/RubyXL/OutlineProperties.html +2 -2
  256. data/rdoc/RubyXL/PageMargins.html +2 -2
  257. data/rdoc/RubyXL/PageSetup.html +2 -2
  258. data/rdoc/RubyXL/PageSetupProperties.html +2 -2
  259. data/rdoc/RubyXL/Pane.html +2 -2
  260. data/rdoc/RubyXL/Parser.html +2 -2
  261. data/rdoc/RubyXL/PatternFill.html +2 -2
  262. data/rdoc/RubyXL/PhoneticProperties.html +2 -2
  263. data/rdoc/RubyXL/PhoneticRun.html +2 -2
  264. data/rdoc/RubyXL/PivotArea.html +2 -2
  265. data/rdoc/RubyXL/PivotCache.html +2 -2
  266. data/rdoc/RubyXL/PivotCacheDefinitionFile.html +2 -2
  267. data/rdoc/RubyXL/PivotCaches.html +2 -2
  268. data/rdoc/RubyXL/PivotReference.html +2 -2
  269. data/rdoc/RubyXL/PivotReferences.html +2 -2
  270. data/rdoc/RubyXL/PivotTableFile.html +2 -2
  271. data/rdoc/RubyXL/PivotTableSelection.html +2 -2
  272. data/rdoc/RubyXL/PresetGeometry.html +2 -2
  273. data/rdoc/RubyXL/PrintOptions.html +2 -2
  274. data/rdoc/RubyXL/PrinterSettingsFile.html +2 -2
  275. data/rdoc/RubyXL/ProtectedRange.html +2 -2
  276. data/rdoc/RubyXL/ProtectedRanges.html +2 -2
  277. data/rdoc/RubyXL/Protection.html +2 -2
  278. data/rdoc/RubyXL/RID.html +2 -2
  279. data/rdoc/RubyXL/RawOOXML.html +2 -2
  280. data/rdoc/RubyXL/Reference.html +2 -2
  281. data/rdoc/RubyXL/Relationship.html +2 -2
  282. data/rdoc/RubyXL/RelationshipSupport.html +2 -2
  283. data/rdoc/RubyXL/RelationshipSupport/ClassMehods.html +2 -2
  284. data/rdoc/RubyXL/RichText.html +2 -2
  285. data/rdoc/RubyXL/RichTextRun.html +2 -2
  286. data/rdoc/RubyXL/Row.html +2 -2
  287. data/rdoc/RubyXL/RunProperties.html +2 -2
  288. data/rdoc/RubyXL/Scenario.html +2 -2
  289. data/rdoc/RubyXL/Scenarios.html +2 -2
  290. data/rdoc/RubyXL/Selection.html +2 -2
  291. data/rdoc/RubyXL/ShapeGuide.html +2 -2
  292. data/rdoc/RubyXL/ShapeTextRectangle.html +2 -2
  293. data/rdoc/RubyXL/SharedStringsTable.html +2 -2
  294. data/rdoc/RubyXL/Sheet.html +2 -2
  295. data/rdoc/RubyXL/SheetCalculationProperties.html +2 -2
  296. data/rdoc/RubyXL/SheetData.html +2 -2
  297. data/rdoc/RubyXL/Sheets.html +2 -2
  298. data/rdoc/RubyXL/SlicerCacheFile.html +2 -2
  299. data/rdoc/RubyXL/SlicerFile.html +2 -2
  300. data/rdoc/RubyXL/SmartTagProperties.html +2 -2
  301. data/rdoc/RubyXL/SmartTagType.html +2 -2
  302. data/rdoc/RubyXL/SmartTagTypes.html +2 -2
  303. data/rdoc/RubyXL/SmartTags.html +2 -2
  304. data/rdoc/RubyXL/SortCondition.html +2 -2
  305. data/rdoc/RubyXL/SortState.html +2 -2
  306. data/rdoc/RubyXL/Sqref.html +2 -2
  307. data/rdoc/RubyXL/Stop.html +2 -2
  308. data/rdoc/RubyXL/StringNode.html +2 -2
  309. data/rdoc/RubyXL/StringNodeW3C.html +2 -2
  310. data/rdoc/RubyXL/StringValue.html +2 -2
  311. data/rdoc/RubyXL/Stylesheet.html +2 -2
  312. data/rdoc/RubyXL/TableFile.html +2 -2
  313. data/rdoc/RubyXL/TableParts.html +2 -2
  314. data/rdoc/RubyXL/TableStyle.html +2 -2
  315. data/rdoc/RubyXL/TableStyles.html +2 -2
  316. data/rdoc/RubyXL/Text.html +2 -2
  317. data/rdoc/RubyXL/Theme.html +2 -2
  318. data/rdoc/RubyXL/ThemeElements.html +2 -2
  319. data/rdoc/RubyXL/ThumbnailFile.html +2 -2
  320. data/rdoc/RubyXL/Top10.html +2 -2
  321. data/rdoc/RubyXL/VMLDrawingFile.html +2 -2
  322. data/rdoc/RubyXL/Variant.html +2 -2
  323. data/rdoc/RubyXL/Vector.html +2 -2
  324. data/rdoc/RubyXL/VectorValue.html +2 -2
  325. data/rdoc/RubyXL/VisualProperties.html +2 -2
  326. data/rdoc/RubyXL/WebPublishObject.html +2 -2
  327. data/rdoc/RubyXL/WebPublishObjects.html +2 -2
  328. data/rdoc/RubyXL/WebPublishingItem.html +2 -2
  329. data/rdoc/RubyXL/WebPublishingItems.html +2 -2
  330. data/rdoc/RubyXL/WebPublishingProperties.html +2 -2
  331. data/rdoc/RubyXL/Workbook.html +2 -2
  332. data/rdoc/RubyXL/{LegacyWorkbook.html → WorkbookConvenienceMethods.html} +571 -290
  333. data/rdoc/RubyXL/WorkbookProperties.html +2 -2
  334. data/rdoc/RubyXL/WorkbookProtection.html +2 -2
  335. data/rdoc/RubyXL/WorkbookRoot.html +2 -2
  336. data/rdoc/RubyXL/WorkbookView.html +2 -2
  337. data/rdoc/RubyXL/WorkbookViews.html +2 -2
  338. data/rdoc/RubyXL/Worksheet.html +2 -2
  339. data/rdoc/RubyXL/WorksheetDimensions.html +2 -2
  340. data/rdoc/RubyXL/WorksheetFormatProperties.html +2 -2
  341. data/rdoc/RubyXL/WorksheetProperties.html +2 -2
  342. data/rdoc/RubyXL/WorksheetProtection.html +2 -2
  343. data/rdoc/RubyXL/WorksheetView.html +2 -2
  344. data/rdoc/RubyXL/WorksheetViews.html +2 -2
  345. data/rdoc/RubyXL/XF.html +2 -2
  346. data/rdoc/created.rid +15 -15
  347. data/rdoc/index.html +5 -5
  348. data/rdoc/js/jquery.js +4 -18
  349. data/rdoc/js/search_index.js +1 -1
  350. data/rdoc/table_of_contents.html +162 -112
  351. data/rubyXL.gemspec +5 -5
  352. data/spec/lib/workbook_spec.rb +79 -0
  353. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1c64fdf09ffe2f26c37a1fd3aace4d1ec00cd398
4
- data.tar.gz: fe5034b9f96bc0639fe9b7889d6c7f3e4687cfe3
3
+ metadata.gz: e450c70daabe201ccf2e0f987f4f14c3273bb037
4
+ data.tar.gz: bd023be77266276fa8b29bda8166ead733ba23aa
5
5
  SHA512:
6
- metadata.gz: adb96c6cc256aa9a27647d2d0eb13ef4189e558d76d0485e8382424d85b30b70f06a02d138a020bf3c5d0a5231263b5efd98642464c1224f535a156f32bf62e2
7
- data.tar.gz: 915bd0716b2cf919c05f99011f1842effcd17e4f57c9974f6cf57bc3766c53600ce9a4e7e267d4c6c9790f8f55ee2086da60d386b3da9423fd543a7de72838cb
6
+ metadata.gz: ee7372a66f9b8aaa7a3ffd0f3b6104de0d2775360bcc142192036b854cd9ed522bfa70475b70aabce510a6e249221eeebe4db3835fb723b2a6102f733455b068
7
+ data.tar.gz: 6ac2cb780df29ad9fa26e5e6368062279dfb9f8fb516a0f9a677c5468faa198145f8a6f0a6011178dbc301f7410e929c6754aba09795b3bd4ad58d6e4e77f64f
data/README.rdoc CHANGED
@@ -2,6 +2,13 @@
2
2
  {<img src="https://badge.fury.io/rb/rubyXL.svg" alt="Gem Version" />}[http://badge.fury.io/rb/rubyXL]
3
3
  {<img src="https://codeclimate.com/github/weshatheleopard/rubyXL.png" alt="Code Climate" />}[https://codeclimate.com/github/weshatheleopard/rubyXL]
4
4
 
5
+ This gem supports operating on +xlsx+ files (Open XML format). While it is capable
6
+ of properly parsing the entire OOXML structure, its current main emphasis is on
7
+ reading files produced by MS Excel, making minor modifications to them and saving
8
+ them to be opened again, while preserving as much of the structure as possible.
9
+
10
+ Please note that proprietary binary +xls+ format is *not* supported.
11
+
5
12
  == To Install:
6
13
  gem install rubyXL
7
14
 
@@ -67,7 +74,7 @@ Please note: these methods are being phased out in favor of the OOXML object mod
67
74
  worksheet.get_column_font_size(0)
68
75
  worksheet.get_column_font_color(0)
69
76
  worksheet.is_column_underlined(0)
70
- worksheet.get_column_height(0)
77
+ worksheet.get_column_width(0)
71
78
  worksheet.get_column_horizontal_alignment(0)
72
79
  worksheet.get_column_vertical_alignment(0)
73
80
  worksheet.get_column_border_right(0)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.2.3
1
+ 3.2.4
@@ -1,50 +1,6 @@
1
- require 'tmpdir'
2
- require 'date'
3
-
4
1
  module RubyXL
5
- module LegacyWorkbook
6
- include Enumerable
7
-
2
+ module WorkbookConvenienceMethods
8
3
  SHEET_NAME_TEMPLATE = 'Sheet%d'
9
- APPLICATION = 'Microsoft Macintosh Excel'
10
- APPVERSION = '12.0000'
11
-
12
- @@debug = nil
13
-
14
- def initialize(worksheets=[], filepath=nil, creator=nil, modifier=nil, created_at=nil,
15
- company='', application=APPLICATION,
16
- appversion=APPVERSION, date1904=0)
17
- super()
18
-
19
- # Order of sheets in the +worksheets+ array corresponds to the order of pages in Excel UI.
20
- # SheetId's, rId's, etc. are completely unrelated to ordering.
21
- @worksheets = worksheets
22
- add_worksheet if @worksheets.empty?
23
-
24
- @creator = creator
25
- @modifier = modifier
26
- self.date1904 = date1904 > 0
27
-
28
- @theme = RubyXL::Theme.defaults
29
- @shared_strings_container = RubyXL::SharedStringsTable.new
30
- @stylesheet = RubyXL::Stylesheet.default
31
- @relationship_container = RubyXL::OOXMLRelationshipsFile.new
32
- @root = RubyXL::WorkbookRoot.default
33
- @root.workbook = self
34
- @root.filepath = filepath
35
- @comments = []
36
-
37
- self.company = company
38
- self.application = application
39
- self.appversion = appversion
40
-
41
- begin
42
- @created_at = DateTime.parse(created_at).strftime('%Y-%m-%dT%TZ')
43
- rescue
44
- @created_at = Time.now.strftime('%Y-%m-%dT%TZ')
45
- end
46
- @modified_at = @created_at
47
- end
48
4
 
49
5
  # Finds worksheet by its name or numerical index
50
6
  def [](ind)
@@ -75,42 +31,88 @@ module RubyXL
75
31
  worksheets.each{ |i| yield i }
76
32
  end
77
33
 
78
- # Return the resulting XLSX file in a stream (useful for sending over HTTP)
79
- def stream
80
- root.stream
34
+ def date1904
35
+ workbook_properties && workbook_properties.date1904
81
36
  end
82
37
 
83
- # Save the resulting XLSX file to the specified location
84
- def save(filepath = nil)
85
- filepath ||= root.filepath
38
+ def date1904=(v)
39
+ self.workbook_properties ||= RubyXL::WorkbookProperties.new
40
+ workbook_properties.date1904 = v
41
+ end
86
42
 
87
- extension = File.extname(filepath)
88
- unless %w{.xlsx .xlsm}.include?(extension.downcase)
89
- raise "Unsupported extension: #{extension} (only .xlsx and .xlsm files are supported)."
90
- end
43
+ def company
44
+ root.document_properties.company && root.document_properties.company.value
45
+ end
46
+
47
+ def company=(v)
48
+ root.document_properties.company ||= StringNode.new
49
+ root.document_properties.company.value = v
50
+ end
91
51
 
92
- File.open(filepath, "wb") { |output_file| FileUtils.copy_stream(root.stream, output_file) }
52
+ def application
53
+ root.document_properties.application && root.document_properties.application.value
54
+ end
93
55
 
94
- return filepath
56
+ def application=(v)
57
+ root.document_properties.application ||= StringNode.new
58
+ root.document_properties.application.value = v
95
59
  end
96
- alias_method :write, :save
97
60
 
98
- def base_date
99
- if date1904 then
100
- DateTime.new(1904, 1, 1)
101
- else
102
- # Subtracting one day to accomodate for erroneous 1900 leap year compatibility only for 1900 based dates
103
- DateTime.new(1899, 12, 31) - 1
104
- end
61
+ def appversion
62
+ root.document_properties.app_version && root.document_properties.app_version.value
63
+ end
64
+
65
+ def appversion=(v)
66
+ root.document_properties.app_version ||= StringNode.new
67
+ root.document_properties.app_version.value = v
68
+ end
69
+
70
+ def creator
71
+ root.core_properties.creator
105
72
  end
106
- private :base_date
107
73
 
108
- def date_to_num(date)
109
- date && (date.ajd - base_date().ajd).to_f
74
+ def creator=(v)
75
+ root.core_properties.creator = v
110
76
  end
111
77
 
112
- def num_to_date(num)
113
- num && (base_date + num)
78
+ def modifier
79
+ root.core_properties.modifier
80
+ end
81
+
82
+ def modifier=(v)
83
+ root.core_properties.modifier = v
84
+ end
85
+
86
+ def created_at
87
+ root.core_properties.created_at
88
+ end
89
+
90
+ def created_at=(v)
91
+ root.core_properties.created_at = v
92
+ end
93
+
94
+ def modified_at
95
+ root.core_properties.modified_at
96
+ end
97
+
98
+ def modified_at=(v)
99
+ root.core_properties.modified_at = v
100
+ end
101
+
102
+ def cell_xfs # Stylesheet should be pre-filled with defaults on initialize()
103
+ stylesheet.cell_xfs
104
+ end
105
+
106
+ def fonts # Stylesheet should be pre-filled with defaults on initialize()
107
+ stylesheet.fonts
108
+ end
109
+
110
+ def fills # Stylesheet should be pre-filled with defaults on initialize()
111
+ stylesheet.fills
112
+ end
113
+
114
+ def borders # Stylesheet should be pre-filled with defaults on initialize()
115
+ stylesheet.borders
114
116
  end
115
117
 
116
118
  def get_fill_color(xf)
@@ -183,38 +185,6 @@ module RubyXL
183
185
  register_new_xf(new_xf, style_index)
184
186
  end
185
187
 
186
- def cell_xfs # Stylesheet should be pre-filled with defaults on initialize()
187
- stylesheet.cell_xfs
188
- end
189
-
190
- def fonts # Stylesheet should be pre-filled with defaults on initialize()
191
- stylesheet.fonts
192
- end
193
-
194
- def fills # Stylesheet should be pre-filled with defaults on initialize()
195
- stylesheet.fills
196
- end
197
-
198
- def borders # Stylesheet should be pre-filled with defaults on initialize()
199
- stylesheet.borders
200
- end
201
-
202
- private
203
-
204
- =begin
205
- #fills shared strings hash, contains each unique string
206
- def fill_shared_strings()
207
- @worksheets.compact.each { |sheet|
208
- sheet.sheet_data.rows.each { |row|
209
- row.cells.each { |cell|
210
- if cell && cell.value && cell.datatype == RubyXL::DataType::SHARED_STRING then
211
- get_index(cell.value.to_s, :add_if_missing)
212
- end
213
- }
214
- }
215
- }
216
- end
217
- =end
218
-
219
188
  end
189
+
220
190
  end
@@ -140,20 +140,20 @@ module RubyXL
140
140
 
141
141
  def created_at
142
142
  val = dcterms_created && dcterms_created.value
143
- val && (val.strip.empty? ? nil : Time.parse(val))
143
+ val && (val.strip.empty? ? nil : DateTime.parse(val).to_time)
144
144
  end
145
145
 
146
146
  def created_at=(v)
147
- self.dcterms_created = RubyXL::StringNodeW3C.new(:value => v.iso8601)
147
+ self.dcterms_created = RubyXL::StringNodeW3C.new(:value => v.to_datetime.iso8601)
148
148
  end
149
149
 
150
150
  def modified_at
151
151
  val = dcterms_modified && dcterms_modified.value
152
- val && (val.strip.empty? ? nil : Time.parse(val))
152
+ val && (val.strip.empty? ? nil : DateTime.parse(val).to_time)
153
153
  end
154
154
 
155
155
  def modified_at=(v)
156
- self.dcterms_modified = RubyXL::StringNodeW3C.new(:value => v.iso8601)
156
+ self.dcterms_modified = RubyXL::StringNodeW3C.new(:value => v.to_datetime.iso8601)
157
157
  end
158
158
 
159
159
  end
@@ -1,3 +1,5 @@
1
+ #require 'tmpdir'
2
+ require 'date'
1
3
  require 'rubyXL/objects/ooxml_object'
2
4
  require 'rubyXL/objects/shared_strings'
3
5
  require 'rubyXL/objects/stylesheet'
@@ -8,7 +10,7 @@ require 'rubyXL/objects/chartsheet'
8
10
  require 'rubyXL/objects/relationships'
9
11
  require 'rubyXL/objects/simple_types'
10
12
  require 'rubyXL/objects/extensions'
11
- require 'rubyXL/workbook'
13
+ require 'rubyXL/convenience_methods'
12
14
 
13
15
  module RubyXL
14
16
 
@@ -357,80 +359,83 @@ module RubyXL
357
359
  true
358
360
  end
359
361
 
360
- def date1904
361
- workbook_properties && workbook_properties.date1904
362
- end
363
-
364
- def date1904=(v)
365
- self.workbook_properties ||= RubyXL::WorkbookProperties.new
366
- workbook_properties.date1904 = v
367
- end
368
-
369
- def company
370
- self.document_properties.company && self.document_properties.company.value
371
- end
372
-
373
- def company=(v)
374
- root.document_properties.company ||= StringNode.new
375
- root.document_properties.company.value = v
376
- end
377
-
378
- def application
379
- root.document_properties.application && self.document_properties.application.value
380
- end
381
-
382
- def application=(v)
383
- root.document_properties.application ||= StringNode.new
384
- root.document_properties.application.value = v
385
- end
386
-
387
- def appversion
388
- root.document_properties.app_version && root.document_properties.app_version.value
362
+ def xlsx_path
363
+ ROOT.join('xl', 'workbook.xml')
389
364
  end
390
365
 
391
- def appversion=(v)
392
- root.document_properties.app_version ||= StringNode.new
393
- root.document_properties.app_version.value = v
366
+ # Return the resulting XLSX file in a stream (useful for sending over HTTP)
367
+ def stream
368
+ root.stream
394
369
  end
395
370
 
396
- def creator
397
- root.core_properties.creator
398
- end
371
+ # Save the resulting XLSX file to the specified location
372
+ def save(filepath = nil)
373
+ filepath ||= root.filepath
399
374
 
400
- def creator=(v)
401
- root.core_properties.creator = v
402
- end
375
+ extension = File.extname(filepath)
376
+ unless %w{.xlsx .xlsm}.include?(extension.downcase)
377
+ raise "Unsupported extension: #{extension} (only .xlsx and .xlsm files are supported)."
378
+ end
403
379
 
404
- def modifier
405
- root.core_properties.modifier
406
- end
380
+ File.open(filepath, "wb") { |output_file| FileUtils.copy_stream(root.stream, output_file) }
407
381
 
408
- def modifier=(v)
409
- root.core_properties.modifier = v
382
+ return filepath
410
383
  end
384
+ alias_method :write, :save
411
385
 
412
- def created_at
413
- root.core_properties.created_at
414
- end
386
+ DATE1904 = DateTime.new(1904, 1, 1)
387
+ # Subtracting one day to accomodate for erroneous 1900 leap year compatibility only for 1900 based dates
388
+ DATE1899 = DateTime.new(1899, 12, 31) - 1
415
389
 
416
- def created_at=(v)
417
- root.core_properties.created_at = v
390
+ def base_date
391
+ (workbook_properties && workbook_properties.date1904) ? DATE1904 : DATE1899
418
392
  end
393
+ private :base_date
419
394
 
420
- def modified_at
421
- root.core_properties.modified_at
395
+ def date_to_num(date)
396
+ date && (date.ajd - base_date().ajd).to_f
422
397
  end
423
398
 
424
- def modified_at=(v)
425
- root.core_properties.modified_at = v
399
+ def num_to_date(num)
400
+ num && (base_date + num)
426
401
  end
427
402
 
428
- def xlsx_path
429
- ROOT.join('xl', 'workbook.xml')
403
+ include Enumerable
404
+
405
+ APPLICATION = 'Microsoft Macintosh Excel'
406
+ APPVERSION = '12.0000'
407
+
408
+ @@debug = nil
409
+
410
+ def initialize(worksheets = [], filepath = nil, creator = nil, modifier = nil, created_at = nil,
411
+ company = '', application = APPLICATION, appversion = APPVERSION, date1904 = 0)
412
+ super()
413
+
414
+ # Order of sheets in the +worksheets+ array corresponds to the order of pages in Excel UI.
415
+ # SheetId's, rId's, etc. are completely unrelated to ordering.
416
+ @worksheets = worksheets
417
+ add_worksheet if @worksheets.empty?
418
+
419
+ @theme = RubyXL::Theme.defaults
420
+ @shared_strings_container = RubyXL::SharedStringsTable.new
421
+ @stylesheet = RubyXL::Stylesheet.default
422
+ @relationship_container = RubyXL::OOXMLRelationshipsFile.new
423
+ @root = RubyXL::WorkbookRoot.default
424
+ @root.workbook = self
425
+ @root.filepath = filepath
426
+
427
+ creation_time = DateTime.parse(created_at) rescue DateTime.now
428
+ self.created_at = creation_time
429
+ self.modified_at = creation_time
430
+ self.company = company
431
+ self.application = application
432
+ self.appversion = appversion
433
+ self.creator = creator
434
+ self.modifier = modifier
435
+ self.date1904 = date1904 > 0
430
436
  end
431
437
 
432
- include LegacyWorkbook
433
-
438
+ include WorkbookConvenienceMethods
434
439
  end
435
440
 
436
441
  end
@@ -4,7 +4,7 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>README - rubyXL 3.2.3</title>
7
+ <title>README - rubyXL 3.2.4</title>
8
8
 
9
9
  <link href="./fonts.css" rel="stylesheet">
10
10
  <link href="./rdoc.css" rel="stylesheet">
@@ -125,6 +125,15 @@ href="https://codeclimate.com/github/weshatheleopard/rubyXL"><img
125
125
  src="https://codeclimate.com/github/weshatheleopard/rubyXL.png" alt="Code
126
126
  Climate" /></a></p>
127
127
 
128
+ <p>This gem supports operating on <code>xlsx</code> files (Open XML format).
129
+ While it is capable of properly parsing the entire OOXML structure, its
130
+ current main emphasis is on reading files produced by MS Excel, making
131
+ minor modifications to them and saving them to be opened again, while
132
+ preserving as much of the structure as possible.</p>
133
+
134
+ <p>Please note that proprietary binary <code>xls</code> format is
135
+ <strong>not</strong> supported.</p>
136
+
128
137
  <h2 id="label-To+Install%3A">To Install:<span><a href="#label-To+Install%3A">&para;</a> <a href="#documentation">&uarr;</a></span></h2>
129
138
 
130
139
  <pre>gem install rubyXL</pre>
@@ -206,7 +215,7 @@ worksheet.get_column_font_name(0)
206
215
  worksheet.get_column_font_size(0)
207
216
  worksheet.get_column_font_color(0)
208
217
  worksheet.is_column_underlined(0)
209
- worksheet.get_column_height(0)
218
+ worksheet.get_column_width(0)
210
219
  worksheet.get_column_horizontal_alignment(0)
211
220
  worksheet.get_column_vertical_alignment(0)
212
221
  worksheet.get_column_border_right(0)</pre>
@@ -409,7 +418,7 @@ further details.</p>
409
418
 
410
419
  <footer id="validator-badges" role="contentinfo">
411
420
  <p><a href="http://validator.w3.org/check/referer">Validate</a>
412
- <p>Generated by <a href="http://rdoc.rubyforge.org">RDoc</a> 4.1.1.
421
+ <p>Generated by <a href="http://rdoc.rubyforge.org">RDoc</a> 4.1.2.
413
422
  <p>Based on <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
414
423
  </footer>
415
424