rubyXL 3.4.23 → 3.4.24

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 (448) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +8 -8
  3. data/Gemfile.lock +1 -1
  4. data/README.rdoc +5 -1
  5. data/Rakefile +20 -19
  6. data/VERSION +1 -1
  7. data/lib/rubyXL/cell.rb +0 -2
  8. data/lib/rubyXL/convenience_methods/cell.rb +11 -10
  9. data/lib/rubyXL/convenience_methods/color.rb +3 -7
  10. data/lib/rubyXL/convenience_methods/workbook.rb +2 -5
  11. data/lib/rubyXL/convenience_methods/worksheet.rb +2 -3
  12. data/lib/rubyXL/objects/border.rb +0 -3
  13. data/lib/rubyXL/objects/calculation_chain.rb +2 -2
  14. data/lib/rubyXL/objects/cell_style.rb +1 -3
  15. data/lib/rubyXL/objects/chartsheet.rb +4 -7
  16. data/lib/rubyXL/objects/color.rb +1 -3
  17. data/lib/rubyXL/objects/column_range.rb +0 -3
  18. data/lib/rubyXL/objects/comments.rb +1 -4
  19. data/lib/rubyXL/objects/connection.rb +11 -11
  20. data/lib/rubyXL/objects/container_nodes.rb +1 -5
  21. data/lib/rubyXL/objects/content_types.rb +3 -6
  22. data/lib/rubyXL/objects/data_validation.rb +0 -2
  23. data/lib/rubyXL/objects/document_properties.rb +9 -13
  24. data/lib/rubyXL/objects/extensions.rb +0 -2
  25. data/lib/rubyXL/objects/external_links.rb +4 -6
  26. data/lib/rubyXL/objects/fill.rb +2 -5
  27. data/lib/rubyXL/objects/filters.rb +5 -7
  28. data/lib/rubyXL/objects/font.rb +1 -3
  29. data/lib/rubyXL/objects/formula.rb +3 -5
  30. data/lib/rubyXL/objects/ooxml_object.rb +6 -13
  31. data/lib/rubyXL/objects/query_table.rb +3 -3
  32. data/lib/rubyXL/objects/reference.rb +5 -4
  33. data/lib/rubyXL/objects/relationships.rb +5 -10
  34. data/lib/rubyXL/objects/root.rb +0 -2
  35. data/lib/rubyXL/objects/shared_strings.rb +3 -6
  36. data/lib/rubyXL/objects/sheet_common.rb +1 -3
  37. data/lib/rubyXL/objects/sheet_data.rb +4 -7
  38. data/lib/rubyXL/objects/simple_types.rb +1 -1
  39. data/lib/rubyXL/objects/storage.rb +48 -53
  40. data/lib/rubyXL/objects/stylesheet.rb +8 -15
  41. data/lib/rubyXL/objects/text.rb +3 -6
  42. data/lib/rubyXL/objects/theme.rb +4 -7
  43. data/lib/rubyXL/objects/workbook.rb +22 -23
  44. data/lib/rubyXL/objects/worksheet.rb +26 -22
  45. data/lib/rubyXL/parser.rb +1 -3
  46. data/lib/rubyXL/worksheet.rb +83 -84
  47. data/lib/rubyXL.rb +0 -1
  48. data/rdoc/README_rdoc.html +8 -1
  49. data/rdoc/RubyXL/AExtension.html +1 -1
  50. data/rdoc/RubyXL/AExtensionStorageArea.html +1 -1
  51. data/rdoc/RubyXL/ActiveX.html +3 -3
  52. data/rdoc/RubyXL/ActiveXBinary.html +1 -1
  53. data/rdoc/RubyXL/AdjustHandleList.html +1 -1
  54. data/rdoc/RubyXL/Alignment.html +1 -1
  55. data/rdoc/RubyXL/AlternateContent.html +1 -1
  56. data/rdoc/RubyXL/Authors.html +1 -1
  57. data/rdoc/RubyXL/AutoFilter.html +1 -1
  58. data/rdoc/RubyXL/AutoFilterColumn.html +1 -1
  59. data/rdoc/RubyXL/BinaryImageFile.html +1 -1
  60. data/rdoc/RubyXL/BodyProperties.html +1 -1
  61. data/rdoc/RubyXL/BooleanNode.html +1 -1
  62. data/rdoc/RubyXL/BooleanValue.html +1 -1
  63. data/rdoc/RubyXL/Border.html +5 -5
  64. data/rdoc/RubyXL/BorderEdge.html +3 -3
  65. data/rdoc/RubyXL/Borders.html +2 -2
  66. data/rdoc/RubyXL/Break.html +1 -1
  67. data/rdoc/RubyXL/BreakList.html +1 -1
  68. data/rdoc/RubyXL/CT_AdjPoint2D.html +1 -1
  69. data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +1 -1
  70. data/rdoc/RubyXL/CT_AlphaModulateEffect.html +1 -1
  71. data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +1 -1
  72. data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +1 -1
  73. data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +1 -1
  74. data/rdoc/RubyXL/CT_Backdrop.html +1 -1
  75. data/rdoc/RubyXL/CT_Bevel.html +1 -1
  76. data/rdoc/RubyXL/CT_BiLevelEffect.html +1 -1
  77. data/rdoc/RubyXL/CT_BlendEffect.html +1 -1
  78. data/rdoc/RubyXL/CT_Blip.html +1 -1
  79. data/rdoc/RubyXL/CT_BlipFillProperties.html +1 -1
  80. data/rdoc/RubyXL/CT_BlurEffect.html +1 -1
  81. data/rdoc/RubyXL/CT_Camera.html +1 -1
  82. data/rdoc/RubyXL/CT_Color.html +1 -1
  83. data/rdoc/RubyXL/CT_ColorChangeEffect.html +1 -1
  84. data/rdoc/RubyXL/CT_ColorMapping.html +1 -1
  85. data/rdoc/RubyXL/CT_ColorScheme.html +1 -1
  86. data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +1 -1
  87. data/rdoc/RubyXL/CT_ConnectionSite.html +1 -1
  88. data/rdoc/RubyXL/CT_ConnectionSiteList.html +1 -1
  89. data/rdoc/RubyXL/CT_DashStop.html +1 -1
  90. data/rdoc/RubyXL/CT_DashStopList.html +1 -1
  91. data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +1 -1
  92. data/rdoc/RubyXL/CT_DuotoneEffect.html +1 -1
  93. data/rdoc/RubyXL/CT_EffectContainer.html +1 -1
  94. data/rdoc/RubyXL/CT_EffectList.html +1 -1
  95. data/rdoc/RubyXL/CT_EffectReference.html +1 -1
  96. data/rdoc/RubyXL/CT_EffectStyleItem.html +1 -1
  97. data/rdoc/RubyXL/CT_EffectStyleList.html +1 -1
  98. data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +1 -1
  99. data/rdoc/RubyXL/CT_FillEffect.html +1 -1
  100. data/rdoc/RubyXL/CT_FillOverlayEffect.html +1 -1
  101. data/rdoc/RubyXL/CT_FillStyleList.html +1 -1
  102. data/rdoc/RubyXL/CT_FlatText.html +1 -1
  103. data/rdoc/RubyXL/CT_FontCollection.html +1 -1
  104. data/rdoc/RubyXL/CT_FontReference.html +1 -1
  105. data/rdoc/RubyXL/CT_GeomGuideList.html +1 -1
  106. data/rdoc/RubyXL/CT_GlowEffect.html +1 -1
  107. data/rdoc/RubyXL/CT_GradientFillProperties.html +1 -1
  108. data/rdoc/RubyXL/CT_GradientStop.html +1 -1
  109. data/rdoc/RubyXL/CT_GradientStopList.html +1 -1
  110. data/rdoc/RubyXL/CT_HSLEffect.html +1 -1
  111. data/rdoc/RubyXL/CT_HslColor.html +1 -1
  112. data/rdoc/RubyXL/CT_Hyperlink.html +1 -1
  113. data/rdoc/RubyXL/CT_InnerShadowEffect.html +1 -1
  114. data/rdoc/RubyXL/CT_LightRig.html +1 -1
  115. data/rdoc/RubyXL/CT_LineEndProperties.html +1 -1
  116. data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +1 -1
  117. data/rdoc/RubyXL/CT_LineProperties.html +1 -1
  118. data/rdoc/RubyXL/CT_LineStyleList.html +1 -1
  119. data/rdoc/RubyXL/CT_LinearShadeProperties.html +1 -1
  120. data/rdoc/RubyXL/CT_LuminanceEffect.html +1 -1
  121. data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +1 -1
  122. data/rdoc/RubyXL/CT_OuterShadowEffect.html +1 -1
  123. data/rdoc/RubyXL/CT_Path2D.html +1 -1
  124. data/rdoc/RubyXL/CT_Path2DArcTo.html +1 -1
  125. data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +1 -1
  126. data/rdoc/RubyXL/CT_Path2DList.html +1 -1
  127. data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +1 -1
  128. data/rdoc/RubyXL/CT_Path2DTo.html +1 -1
  129. data/rdoc/RubyXL/CT_PathShadeProperties.html +1 -1
  130. data/rdoc/RubyXL/CT_PatternFillProperties.html +1 -1
  131. data/rdoc/RubyXL/CT_Point3D.html +1 -1
  132. data/rdoc/RubyXL/CT_PolarAdjustHandle.html +1 -1
  133. data/rdoc/RubyXL/CT_PresetColor.html +1 -1
  134. data/rdoc/RubyXL/CT_PresetLineDashProperties.html +1 -1
  135. data/rdoc/RubyXL/CT_PresetShadowEffect.html +1 -1
  136. data/rdoc/RubyXL/CT_PresetTextShape.html +1 -1
  137. data/rdoc/RubyXL/CT_ReflectionEffect.html +1 -1
  138. data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +1 -1
  139. data/rdoc/RubyXL/CT_RelativeRect.html +1 -1
  140. data/rdoc/RubyXL/CT_SRgbColor.html +1 -1
  141. data/rdoc/RubyXL/CT_ScRgbColor.html +1 -1
  142. data/rdoc/RubyXL/CT_Scene3D.html +1 -1
  143. data/rdoc/RubyXL/CT_SchemeColor.html +1 -1
  144. data/rdoc/RubyXL/CT_Shape3D.html +1 -1
  145. data/rdoc/RubyXL/CT_ShapeStyle.html +1 -1
  146. data/rdoc/RubyXL/CT_SoftEdgesEffect.html +1 -1
  147. data/rdoc/RubyXL/CT_SphereCoords.html +1 -1
  148. data/rdoc/RubyXL/CT_StretchInfoProperties.html +1 -1
  149. data/rdoc/RubyXL/CT_StyleMatrix.html +1 -1
  150. data/rdoc/RubyXL/CT_StyleMatrixReference.html +1 -1
  151. data/rdoc/RubyXL/CT_SupplementalFont.html +1 -1
  152. data/rdoc/RubyXL/CT_SystemColor.html +1 -1
  153. data/rdoc/RubyXL/CT_TextAutonumberBullet.html +1 -1
  154. data/rdoc/RubyXL/CT_TextBlipBullet.html +1 -1
  155. data/rdoc/RubyXL/CT_TextCharBullet.html +1 -1
  156. data/rdoc/RubyXL/CT_TextCharacterProperties.html +1 -1
  157. data/rdoc/RubyXL/CT_TextFont.html +1 -1
  158. data/rdoc/RubyXL/CT_TextListStyle.html +1 -1
  159. data/rdoc/RubyXL/CT_TextNormalAutofit.html +1 -1
  160. data/rdoc/RubyXL/CT_TextParagraphProperties.html +1 -1
  161. data/rdoc/RubyXL/CT_TextSpacing.html +1 -1
  162. data/rdoc/RubyXL/CT_TextTabStop.html +1 -1
  163. data/rdoc/RubyXL/CT_TextTabStopList.html +1 -1
  164. data/rdoc/RubyXL/CT_TileInfoProperties.html +1 -1
  165. data/rdoc/RubyXL/CT_TintEffect.html +1 -1
  166. data/rdoc/RubyXL/CT_Transform2D.html +1 -1
  167. data/rdoc/RubyXL/CT_TransformEffect.html +1 -1
  168. data/rdoc/RubyXL/CT_Vector3D.html +1 -1
  169. data/rdoc/RubyXL/CT_XYAdjustHandle.html +1 -1
  170. data/rdoc/RubyXL/CalculationChain.html +1 -1
  171. data/rdoc/RubyXL/CalculationChainCell.html +1 -1
  172. data/rdoc/RubyXL/CalculationProperties.html +1 -1
  173. data/rdoc/RubyXL/Cell.html +16 -16
  174. data/rdoc/RubyXL/CellConvenienceMethods.html +67 -36
  175. data/rdoc/RubyXL/CellExt.html +1 -1
  176. data/rdoc/RubyXL/CellSmartTag.html +1 -1
  177. data/rdoc/RubyXL/CellSmartTagProperty.html +1 -1
  178. data/rdoc/RubyXL/CellSmartTags.html +1 -1
  179. data/rdoc/RubyXL/CellStyle.html +1 -1
  180. data/rdoc/RubyXL/CellStyleXFs.html +2 -2
  181. data/rdoc/RubyXL/CellStyles.html +2 -2
  182. data/rdoc/RubyXL/CellValue.html +2 -2
  183. data/rdoc/RubyXL/CellWatch.html +1 -1
  184. data/rdoc/RubyXL/CellWatches.html +1 -1
  185. data/rdoc/RubyXL/CellXFs.html +3 -5
  186. data/rdoc/RubyXL/ChartColorsFile.html +1 -1
  187. data/rdoc/RubyXL/ChartFile.html +2 -2
  188. data/rdoc/RubyXL/ChartStyleFile.html +1 -1
  189. data/rdoc/RubyXL/ChartUserShapesFile.html +1 -1
  190. data/rdoc/RubyXL/Chartsheet.html +2 -2
  191. data/rdoc/RubyXL/ChartsheetPageSetup.html +1 -1
  192. data/rdoc/RubyXL/ChartsheetProperties.html +1 -1
  193. data/rdoc/RubyXL/ChartsheetProtection.html +1 -1
  194. data/rdoc/RubyXL/ChartsheetView.html +1 -1
  195. data/rdoc/RubyXL/ChartsheetViews.html +1 -1
  196. data/rdoc/RubyXL/Color.html +2 -2
  197. data/rdoc/RubyXL/ColorConvenienceClasses/HlsColor.html +3 -3
  198. data/rdoc/RubyXL/ColorConvenienceClasses/RgbColor.html +7 -7
  199. data/rdoc/RubyXL/ColorConvenienceClasses.html +1 -1
  200. data/rdoc/RubyXL/ColorConvenienceMethods.html +2 -2
  201. data/rdoc/RubyXL/ColorFilter.html +1 -1
  202. data/rdoc/RubyXL/ColorScale.html +1 -1
  203. data/rdoc/RubyXL/ColorSet.html +1 -1
  204. data/rdoc/RubyXL/Colors.html +1 -1
  205. data/rdoc/RubyXL/ColumnRange.html +4 -4
  206. data/rdoc/RubyXL/ColumnRanges.html +5 -5
  207. data/rdoc/RubyXL/Comment.html +1 -1
  208. data/rdoc/RubyXL/CommentList.html +1 -1
  209. data/rdoc/RubyXL/CommentsFile.html +2 -2
  210. data/rdoc/RubyXL/ConditionalFormatValue.html +1 -1
  211. data/rdoc/RubyXL/ConditionalFormatting.html +1 -1
  212. data/rdoc/RubyXL/ConditionalFormattingRule.html +1 -1
  213. data/rdoc/RubyXL/Connection.html +1 -1
  214. data/rdoc/RubyXL/ConnectionTable.html +1 -1
  215. data/rdoc/RubyXL/ConnectionTables.html +1 -1
  216. data/rdoc/RubyXL/ConnectionTextField.html +1 -1
  217. data/rdoc/RubyXL/ConnectionTextFields.html +1 -1
  218. data/rdoc/RubyXL/Connections.html +1 -1
  219. data/rdoc/RubyXL/ContentTypeDefault.html +1 -1
  220. data/rdoc/RubyXL/ContentTypeOverride.html +1 -1
  221. data/rdoc/RubyXL/ContentTypes.html +5 -5
  222. data/rdoc/RubyXL/ControlPropertiesFile.html +1 -1
  223. data/rdoc/RubyXL/CorePropertiesFile.html +10 -10
  224. data/rdoc/RubyXL/CustomColor.html +1 -1
  225. data/rdoc/RubyXL/CustomColorList.html +1 -1
  226. data/rdoc/RubyXL/CustomFilter.html +1 -1
  227. data/rdoc/RubyXL/CustomFilters.html +1 -1
  228. data/rdoc/RubyXL/CustomGeometry.html +1 -1
  229. data/rdoc/RubyXL/CustomProperties.html +1 -1
  230. data/rdoc/RubyXL/CustomPropertiesFile.html +1 -1
  231. data/rdoc/RubyXL/CustomProperty.html +1 -1
  232. data/rdoc/RubyXL/CustomPropertyFile.html +1 -1
  233. data/rdoc/RubyXL/CustomSheetView.html +1 -1
  234. data/rdoc/RubyXL/CustomSheetViews.html +1 -1
  235. data/rdoc/RubyXL/CustomWorkbookView.html +1 -1
  236. data/rdoc/RubyXL/CustomWorkbookViews.html +1 -1
  237. data/rdoc/RubyXL/CustomXMLFile.html +1 -1
  238. data/rdoc/RubyXL/DXF.html +1 -1
  239. data/rdoc/RubyXL/DXFs.html +1 -1
  240. data/rdoc/RubyXL/DataBar.html +1 -1
  241. data/rdoc/RubyXL/DataConsolidate.html +1 -1
  242. data/rdoc/RubyXL/DataConsolidationReference.html +1 -1
  243. data/rdoc/RubyXL/DataConsolidationReferences.html +1 -1
  244. data/rdoc/RubyXL/DataType.html +1 -1
  245. data/rdoc/RubyXL/DataValidation.html +1 -1
  246. data/rdoc/RubyXL/DataValidations.html +1 -1
  247. data/rdoc/RubyXL/DateGroupItem.html +1 -1
  248. data/rdoc/RubyXL/DefinedName.html +1 -1
  249. data/rdoc/RubyXL/DefinedNameExt.html +1 -1
  250. data/rdoc/RubyXL/DefinedNames.html +1 -1
  251. data/rdoc/RubyXL/DefinedNamesExt.html +1 -1
  252. data/rdoc/RubyXL/DocumentPropertiesFile.html +3 -3
  253. data/rdoc/RubyXL/DrawingFile.html +2 -2
  254. data/rdoc/RubyXL/DynamicFilter.html +1 -1
  255. data/rdoc/RubyXL/EmbeddedControl.html +1 -1
  256. data/rdoc/RubyXL/EmbeddedControls.html +1 -1
  257. data/rdoc/RubyXL/Extension.html +1 -1
  258. data/rdoc/RubyXL/ExtensionStorageArea.html +1 -1
  259. data/rdoc/RubyXL/Extents.html +1 -1
  260. data/rdoc/RubyXL/ExternalBook.html +1 -1
  261. data/rdoc/RubyXL/ExternalLinksFile.html +2 -2
  262. data/rdoc/RubyXL/ExternalReference.html +1 -1
  263. data/rdoc/RubyXL/ExternalReferences.html +1 -1
  264. data/rdoc/RubyXL/ExtraColorSchemeList.html +1 -1
  265. data/rdoc/RubyXL/FieldItem.html +1 -1
  266. data/rdoc/RubyXL/FileRecoveryProperties.html +1 -1
  267. data/rdoc/RubyXL/FileSharing.html +1 -1
  268. data/rdoc/RubyXL/FileVersion.html +1 -1
  269. data/rdoc/RubyXL/Fill.html +2 -2
  270. data/rdoc/RubyXL/Fills.html +2 -2
  271. data/rdoc/RubyXL/FilterContainer.html +1 -1
  272. data/rdoc/RubyXL/FloatNode.html +1 -1
  273. data/rdoc/RubyXL/FloatValue.html +1 -1
  274. data/rdoc/RubyXL/Font.html +3 -3
  275. data/rdoc/RubyXL/FontConvenienceMethods.html +1 -1
  276. data/rdoc/RubyXL/FontScheme.html +1 -1
  277. data/rdoc/RubyXL/Fonts.html +2 -2
  278. data/rdoc/RubyXL/Formula.html +1 -1
  279. data/rdoc/RubyXL/FunctionGroup.html +1 -1
  280. data/rdoc/RubyXL/FunctionGroups.html +1 -1
  281. data/rdoc/RubyXL/GenericStorageObject.html +4 -4
  282. data/rdoc/RubyXL/GradientFill.html +1 -1
  283. data/rdoc/RubyXL/HeaderFooterSettings.html +1 -1
  284. data/rdoc/RubyXL/Hyperlink.html +1 -1
  285. data/rdoc/RubyXL/HyperlinkRelFile.html +1 -1
  286. data/rdoc/RubyXL/Hyperlinks.html +1 -1
  287. data/rdoc/RubyXL/IconFilter.html +1 -1
  288. data/rdoc/RubyXL/IconSet.html +1 -1
  289. data/rdoc/RubyXL/IgnoredError.html +1 -1
  290. data/rdoc/RubyXL/IgnoredErrors.html +1 -1
  291. data/rdoc/RubyXL/IndexedColors.html +1 -1
  292. data/rdoc/RubyXL/InputCells.html +1 -1
  293. data/rdoc/RubyXL/IntegerNode.html +1 -1
  294. data/rdoc/RubyXL/IntegerValue.html +1 -1
  295. data/rdoc/RubyXL/LegacyCell.html +2 -2
  296. data/rdoc/RubyXL/LegacyWorksheet.html +2 -2
  297. data/rdoc/RubyXL/MRUColors.html +1 -1
  298. data/rdoc/RubyXL/MacrosFile.html +1 -1
  299. data/rdoc/RubyXL/MergedCell.html +1 -1
  300. data/rdoc/RubyXL/MergedCells.html +1 -1
  301. data/rdoc/RubyXL/NumFmt.html +1 -1
  302. data/rdoc/RubyXL/NumberFormat.html +3 -3
  303. data/rdoc/RubyXL/NumberFormats.html +2 -2
  304. data/rdoc/RubyXL/OLEObject.html +1 -1
  305. data/rdoc/RubyXL/OLEObjectFile.html +1 -1
  306. data/rdoc/RubyXL/OLEObjects.html +1 -1
  307. data/rdoc/RubyXL/OLESize.html +1 -1
  308. data/rdoc/RubyXL/OOXMLContainerObject.html +7 -7
  309. data/rdoc/RubyXL/OOXMLIgnored.html +3 -3
  310. data/rdoc/RubyXL/OOXMLObject.html +1 -1
  311. data/rdoc/RubyXL/OOXMLObjectClassMethods.html +2 -3
  312. data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +9 -10
  313. data/rdoc/RubyXL/OOXMLRelationshipsFile.html +15 -15
  314. data/rdoc/RubyXL/OOXMLTopLevelObject.html +6 -6
  315. data/rdoc/RubyXL/OdbcOleDbProperties.html +1 -1
  316. data/rdoc/RubyXL/Offset.html +1 -1
  317. data/rdoc/RubyXL/OlapProperties.html +1 -1
  318. data/rdoc/RubyXL/OleItem.html +1 -1
  319. data/rdoc/RubyXL/OleItems.html +1 -1
  320. data/rdoc/RubyXL/OleLink.html +1 -1
  321. data/rdoc/RubyXL/OutlineProperties.html +1 -1
  322. data/rdoc/RubyXL/PageMargins.html +1 -1
  323. data/rdoc/RubyXL/PageSetup.html +1 -1
  324. data/rdoc/RubyXL/PageSetupProperties.html +1 -1
  325. data/rdoc/RubyXL/Pane.html +1 -1
  326. data/rdoc/RubyXL/Parser.html +4 -4
  327. data/rdoc/RubyXL/PatternFill.html +1 -1
  328. data/rdoc/RubyXL/PhoneticProperties.html +1 -1
  329. data/rdoc/RubyXL/PhoneticRun.html +1 -1
  330. data/rdoc/RubyXL/PivotArea.html +1 -1
  331. data/rdoc/RubyXL/PivotCache.html +1 -1
  332. data/rdoc/RubyXL/PivotCacheDefinitionFile.html +1 -1
  333. data/rdoc/RubyXL/PivotCacheRecordsFile.html +1 -1
  334. data/rdoc/RubyXL/PivotCaches.html +1 -1
  335. data/rdoc/RubyXL/PivotReference.html +1 -1
  336. data/rdoc/RubyXL/PivotReferences.html +1 -1
  337. data/rdoc/RubyXL/PivotTableFile.html +1 -1
  338. data/rdoc/RubyXL/PivotTableSelection.html +1 -1
  339. data/rdoc/RubyXL/PresetGeometry.html +1 -1
  340. data/rdoc/RubyXL/PrintOptions.html +1 -1
  341. data/rdoc/RubyXL/PrinterSettingsFile.html +1 -1
  342. data/rdoc/RubyXL/ProtectedRange.html +1 -1
  343. data/rdoc/RubyXL/ProtectedRanges.html +1 -1
  344. data/rdoc/RubyXL/Protection.html +1 -1
  345. data/rdoc/RubyXL/QueryParameter.html +1 -1
  346. data/rdoc/RubyXL/QueryParameters.html +1 -1
  347. data/rdoc/RubyXL/QueryTable.html +1 -1
  348. data/rdoc/RubyXL/QueryTableDeletedField.html +1 -1
  349. data/rdoc/RubyXL/QueryTableDeletedFields.html +1 -1
  350. data/rdoc/RubyXL/QueryTableField.html +1 -1
  351. data/rdoc/RubyXL/QueryTableFields.html +1 -1
  352. data/rdoc/RubyXL/QueryTableRefresh.html +1 -1
  353. data/rdoc/RubyXL/RID.html +1 -1
  354. data/rdoc/RubyXL/RawOOXML.html +3 -3
  355. data/rdoc/RubyXL/Reference.html +34 -12
  356. data/rdoc/RubyXL/Relationship.html +1 -1
  357. data/rdoc/RubyXL/RelationshipSupport/ClassMehods.html +2 -2
  358. data/rdoc/RubyXL/RelationshipSupport.html +7 -7
  359. data/rdoc/RubyXL/RevisionPointer.html +1 -1
  360. data/rdoc/RubyXL/RichText.html +2 -2
  361. data/rdoc/RubyXL/RichTextRun.html +2 -2
  362. data/rdoc/RubyXL/Row.html +10 -10
  363. data/rdoc/RubyXL/RowExt.html +1 -1
  364. data/rdoc/RubyXL/RunProperties.html +1 -1
  365. data/rdoc/RubyXL/Scenario.html +1 -1
  366. data/rdoc/RubyXL/Scenarios.html +1 -1
  367. data/rdoc/RubyXL/Selection.html +2 -2
  368. data/rdoc/RubyXL/ShapeGuide.html +1 -1
  369. data/rdoc/RubyXL/ShapeTextRectangle.html +1 -1
  370. data/rdoc/RubyXL/SharedStringsTable.html +8 -8
  371. data/rdoc/RubyXL/Sheet.html +1 -1
  372. data/rdoc/RubyXL/SheetCalculationProperties.html +1 -1
  373. data/rdoc/RubyXL/SheetData.html +3 -3
  374. data/rdoc/RubyXL/SheetDataExt.html +1 -1
  375. data/rdoc/RubyXL/SheetDataSet.html +1 -1
  376. data/rdoc/RubyXL/SheetMetadata.html +1 -1
  377. data/rdoc/RubyXL/SheetName.html +1 -1
  378. data/rdoc/RubyXL/SheetNames.html +1 -1
  379. data/rdoc/RubyXL/Sheets.html +1 -1
  380. data/rdoc/RubyXL/SlicerCacheFile.html +1 -1
  381. data/rdoc/RubyXL/SlicerFile.html +1 -1
  382. data/rdoc/RubyXL/SmartTagProperties.html +1 -1
  383. data/rdoc/RubyXL/SmartTagType.html +1 -1
  384. data/rdoc/RubyXL/SmartTagTypes.html +1 -1
  385. data/rdoc/RubyXL/SmartTags.html +1 -1
  386. data/rdoc/RubyXL/SortCondition.html +1 -1
  387. data/rdoc/RubyXL/SortState.html +1 -1
  388. data/rdoc/RubyXL/Sqref.html +3 -3
  389. data/rdoc/RubyXL/Stop.html +1 -1
  390. data/rdoc/RubyXL/StringNode.html +1 -1
  391. data/rdoc/RubyXL/StringNodeW3C.html +3 -3
  392. data/rdoc/RubyXL/StringValue.html +1 -1
  393. data/rdoc/RubyXL/Stylesheet.html +6 -6
  394. data/rdoc/RubyXL/TableFile.html +1 -1
  395. data/rdoc/RubyXL/TableParts.html +1 -1
  396. data/rdoc/RubyXL/TableStyle.html +1 -1
  397. data/rdoc/RubyXL/TableStyles.html +1 -1
  398. data/rdoc/RubyXL/Text.html +5 -5
  399. data/rdoc/RubyXL/TextImportSettings.html +1 -1
  400. data/rdoc/RubyXL/Theme.html +4 -4
  401. data/rdoc/RubyXL/ThemeElements.html +1 -1
  402. data/rdoc/RubyXL/ThumbnailFile.html +1 -1
  403. data/rdoc/RubyXL/Top10.html +1 -1
  404. data/rdoc/RubyXL/VMLDrawingFile.html +2 -2
  405. data/rdoc/RubyXL/Variant.html +1 -1
  406. data/rdoc/RubyXL/Vector.html +2 -2
  407. data/rdoc/RubyXL/VectorValue.html +1 -1
  408. data/rdoc/RubyXL/VisualProperties.html +1 -1
  409. data/rdoc/RubyXL/WebPublishObject.html +1 -1
  410. data/rdoc/RubyXL/WebPublishObjects.html +1 -1
  411. data/rdoc/RubyXL/WebPublishingItem.html +1 -1
  412. data/rdoc/RubyXL/WebPublishingItems.html +1 -1
  413. data/rdoc/RubyXL/WebPublishingProperties.html +1 -1
  414. data/rdoc/RubyXL/WebQueryProperties.html +1 -1
  415. data/rdoc/RubyXL/Workbook.html +29 -26
  416. data/rdoc/RubyXL/WorkbookConvenienceMethods.html +21 -21
  417. data/rdoc/RubyXL/WorkbookProperties.html +1 -1
  418. data/rdoc/RubyXL/WorkbookProtection.html +1 -1
  419. data/rdoc/RubyXL/WorkbookRoot.html +6 -6
  420. data/rdoc/RubyXL/WorkbookView.html +1 -1
  421. data/rdoc/RubyXL/WorkbookViews.html +1 -1
  422. data/rdoc/RubyXL/Worksheet.html +31 -7
  423. data/rdoc/RubyXL/WorksheetConvenienceMethods.html +72 -72
  424. data/rdoc/RubyXL/WorksheetDimensions.html +1 -1
  425. data/rdoc/RubyXL/WorksheetFormatProperties.html +1 -1
  426. data/rdoc/RubyXL/WorksheetProperties.html +1 -1
  427. data/rdoc/RubyXL/WorksheetProtection.html +1 -1
  428. data/rdoc/RubyXL/WorksheetView.html +1 -1
  429. data/rdoc/RubyXL/WorksheetViews.html +1 -1
  430. data/rdoc/RubyXL/XF.html +1 -1
  431. data/rdoc/RubyXL.html +1 -1
  432. data/rdoc/created.rid +44 -44
  433. data/rdoc/index.html +2 -2
  434. data/rdoc/js/search_index.js +1 -1
  435. data/rdoc/js/search_index.js.gz +0 -0
  436. data/rdoc/table_of_contents.html +18 -2
  437. data/rubyXL.gemspec +4 -4
  438. data/spec/lib/cell_spec.rb +5 -7
  439. data/spec/lib/parser_spec.rb +22 -26
  440. data/spec/lib/reference_spec.rb +8 -2
  441. data/spec/lib/rgb_color_spec.rb +0 -1
  442. data/spec/lib/stylesheet_spec.rb +3 -6
  443. data/spec/lib/text_spec.rb +1 -5
  444. data/spec/lib/workbook_spec.rb +1 -2
  445. data/spec/lib/worksheet_spec.rb +577 -535
  446. data/spec/spec_helper.rb +2 -0
  447. data/test/test_parse_write.rb +3 -3
  448. metadata +3 -3
@@ -3,11 +3,10 @@ require 'rubyXL/objects/container_nodes'
3
3
  require 'time'
4
4
 
5
5
  module RubyXL
6
-
7
6
  # http://www.datypic.com/sc/ooxml/e-extended-properties_Properties.html
8
7
  class DocumentPropertiesFile < OOXMLTopLevelObject
9
- CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.extended-properties+xml'
10
- REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties'
8
+ CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.extended-properties+xml'.freeze
9
+ REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties'.freeze
11
10
 
12
11
  attr_accessor :workbook
13
12
 
@@ -39,7 +38,7 @@ module RubyXL
39
38
  define_child_node(RubyXL::StringNode, :node_name => :AppVersion)
40
39
  define_child_node(RubyXL::IntegerNode, :node_name => :DocSecurity)
41
40
  set_namespaces('http://schemas.openxmlformats.org/officeDocument/2006/extended-properties' => nil,
42
- 'http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes' => 'vt')
41
+ 'http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes' => 'vt')
43
42
  define_element_name 'Properties'
44
43
 
45
44
  def add_parts_count(name, count)
@@ -84,13 +83,12 @@ module RubyXL
84
83
  def xlsx_path
85
84
  ROOT.join('docProps', 'app.xml')
86
85
  end
87
-
88
86
  end
89
87
 
90
88
 
91
89
  class CorePropertiesFile < OOXMLTopLevelObject
92
- CONTENT_TYPE = 'application/vnd.openxmlformats-package.core-properties+xml'
93
- REL_TYPE = 'http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties'
90
+ CONTENT_TYPE = 'application/vnd.openxmlformats-package.core-properties+xml'.freeze
91
+ REL_TYPE = 'http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties'.freeze
94
92
 
95
93
  attr_accessor :workbook
96
94
 
@@ -112,10 +110,10 @@ module RubyXL
112
110
  define_child_node(RubyXL::StringNode, :node_name => 'cp:version')
113
111
 
114
112
  set_namespaces('http://schemas.openxmlformats.org/package/2006/metadata/core-properties' => 'cp',
115
- 'http://purl.org/dc/elements/1.1/' => 'dc',
116
- 'http://purl.org/dc/terms/' => 'dcterms',
117
- 'http://purl.org/dc/dcmitype/' => 'dcmitype',
118
- 'http://www.w3.org/2001/XMLSchema-instance' => 'xsi')
113
+ 'http://purl.org/dc/elements/1.1/' => 'dc',
114
+ 'http://purl.org/dc/terms/' => 'dcterms',
115
+ 'http://purl.org/dc/dcmitype/' => 'dcmitype',
116
+ 'http://www.w3.org/2001/XMLSchema-instance' => 'xsi')
119
117
  define_element_name 'cp:coreProperties'
120
118
 
121
119
  def xlsx_path
@@ -153,7 +151,5 @@ module RubyXL
153
151
  def modified_at=(v)
154
152
  self.dcterms_modified = RubyXL::StringNodeW3C.default(v)
155
153
  end
156
-
157
154
  end
158
-
159
155
  end
@@ -1,7 +1,6 @@
1
1
  require 'rubyXL/objects/ooxml_object'
2
2
 
3
3
  module RubyXL
4
-
5
4
  # http://www.datypic.com/sc/ooxml/e-ssml_ext-1.html
6
5
  class RawOOXML < OOXMLObject
7
6
  attr_accessor :raw_xml
@@ -49,5 +48,4 @@ module RubyXL
49
48
  class RevisionPointer < OOXMLIgnored
50
49
  define_element_name 'xr:revisionPtr'
51
50
  end
52
-
53
51
  end
@@ -1,5 +1,4 @@
1
1
  module RubyXL
2
-
3
2
  # http://www.datypic.com/sc/ooxml/e-ssml_sheetName-1.html
4
3
  class SheetName < OOXMLObject
5
4
  define_attribute(:val, :string)
@@ -89,21 +88,20 @@ module RubyXL
89
88
  end
90
89
 
91
90
  class ExternalLinksFile < OOXMLTopLevelObject
92
- CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml'
93
- REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink'
91
+ CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml'.freeze
92
+ REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink'.freeze
94
93
 
95
94
  include RubyXL::RelationshipSupport
96
95
  define_child_node(RubyXL::ExternalBook)
97
96
  define_child_node(RubyXL::OleLink)
98
97
 
99
98
  define_element_name 'externalLink'
100
- set_namespaces('http://schemas.openxmlformats.org/spreadsheetml/2006/main' => nil,
101
- 'http://schemas.openxmlformats.org/markup-compatibility/2006' => 'mc',
99
+ set_namespaces('http://schemas.openxmlformats.org/spreadsheetml/2006/main' => nil,
100
+ 'http://schemas.openxmlformats.org/markup-compatibility/2006' => 'mc',
102
101
  'http://schemas.openxmlformats.org/officeDocument/2006/relationships' => 'r')
103
102
 
104
103
  def xlsx_path
105
104
  ROOT.join('xl', 'externalLinks', "externalLink#{file_index}.xml")
106
105
  end
107
106
  end
108
-
109
107
  end
@@ -2,7 +2,6 @@ require 'rubyXL/objects/ooxml_object'
2
2
  require 'rubyXL/objects/simple_types'
3
3
 
4
4
  module RubyXL
5
-
6
5
  # http://www.datypic.com/sc/ooxml/e-ssml_stop-1.html
7
6
  class Stop < OOXMLObject
8
7
  define_attribute(:position, :double, :required => true)
@@ -13,8 +12,8 @@ module RubyXL
13
12
  # http://www.datypic.com/sc/ooxml/e-ssml_patternFill-1.html
14
13
  class PatternFill < OOXMLObject
15
14
  define_attribute(:patternType, RubyXL::ST_PatternType)
16
- define_child_node(RubyXL::Color, :node_name => :fgColor )
17
- define_child_node(RubyXL::Color, :node_name => :bgColor )
15
+ define_child_node(RubyXL::Color, :node_name => :fgColor)
16
+ define_child_node(RubyXL::Color, :node_name => :bgColor)
18
17
  define_element_name 'patternFill'
19
18
  end
20
19
 
@@ -39,7 +38,6 @@ module RubyXL
39
38
  def self.default(pattern_type)
40
39
  self.new(:pattern_fill => RubyXL::PatternFill.new(:pattern_type => pattern_type))
41
40
  end
42
-
43
41
  end
44
42
 
45
43
  # http://www.datypic.com/sc/ooxml/e-ssml_fills-1.html
@@ -51,5 +49,4 @@ module RubyXL
51
49
  self.new(:_ => [ RubyXL::Fill.default('none'), RubyXL::Fill.default('gray125') ])
52
50
  end
53
51
  end
54
-
55
52
  end
@@ -3,7 +3,6 @@ require 'rubyXL/objects/simple_types'
3
3
  require 'rubyXL/objects/extensions'
4
4
 
5
5
  module RubyXL
6
-
7
6
  # http://www.datypic.com/sc/ooxml/e-ssml_dateGroupItem-1.html
8
7
  class DateGroupItem < OOXMLObject
9
8
  define_attribute(:year, :int, :required => true)
@@ -18,7 +17,7 @@ module RubyXL
18
17
 
19
18
  # http://www.datypic.com/sc/ooxml/e-ssml_filters-1.html
20
19
  class FilterContainer < OOXMLObject
21
- define_attribute(:blank, :bool, :default => false)
20
+ define_attribute(:blank, :bool, :default => false)
22
21
  define_attribute(:calendarType, RubyXL::ST_CalendarType, :default => 'none')
23
22
  define_child_node(RubyXL::StringValue, :collection => true, :accessor => :filters, :node_name => :filter)
24
23
  define_child_node(RubyXL::DateGroupItem, :collection => true, :accessor => :date_group_items)
@@ -43,7 +42,7 @@ module RubyXL
43
42
 
44
43
  # http://www.datypic.com/sc/ooxml/e-ssml_customFilters-1.html
45
44
  class CustomFilters < OOXMLContainerObject
46
- define_attribute(:and, :bool, :default => false)
45
+ define_attribute(:and, :bool, :default => false)
47
46
  define_child_node(RubyXL::CustomFilter, :collection => true)
48
47
  define_element_name 'customFilters'
49
48
  end
@@ -87,9 +86,9 @@ module RubyXL
87
86
 
88
87
  # http://www.datypic.com/sc/ooxml/e-ssml_sortCondition-1.html
89
88
  class SortCondition < OOXMLObject
90
- define_attribute(:descending, :bool, :default => false)
89
+ define_attribute(:descending, :bool, :default => false)
91
90
  define_attribute(:sortBy, RubyXL::ST_SortBy, :default => 'value')
92
- define_attribute(:ref, :ref, :required => true)
91
+ define_attribute(:ref, :ref, :required => true)
93
92
  define_attribute(:customList, :string)
94
93
  define_attribute(:dxfId, :int)
95
94
  define_attribute(:iconSet, RubyXL::ST_IconSetType, :required => true, :default => '3Arrows')
@@ -116,5 +115,4 @@ module RubyXL
116
115
  define_child_node(RubyXL::ExtensionStorageArea)
117
116
  define_element_name 'autoFilter'
118
117
  end
119
-
120
- end
118
+ end
@@ -3,7 +3,6 @@ require 'rubyXL/objects/container_nodes'
3
3
  require 'rubyXL/objects/color'
4
4
 
5
5
  module RubyXL
6
-
7
6
  # http://www.datypic.com/sc/ooxml/e-ssml_font-1.html
8
7
  class Font < OOXMLObject
9
8
  # Since we have no capability to load the actual fonts, we'll have to live with the default.
@@ -28,7 +27,7 @@ module RubyXL
28
27
 
29
28
  def self.default(size = 10)
30
29
  self.new(:name => RubyXL::StringValue.new(:val => 'Verdana'),
31
- :sz => RubyXL::FloatValue.new(:val => size) )
30
+ :sz => RubyXL::FloatValue.new(:val => size))
32
31
  end
33
32
  end
34
33
 
@@ -41,5 +40,4 @@ module RubyXL
41
40
  self.new(:_ => [ RubyXL::Font.default(10), RubyXL::Font.default(8) ])
42
41
  end
43
42
  end
44
-
45
43
  end
@@ -2,12 +2,11 @@ require 'rubyXL/objects/ooxml_object'
2
2
  require 'rubyXL/objects/simple_types'
3
3
 
4
4
  module RubyXL
5
-
6
5
  # http://www.datypic.com/sc/ooxml/e-ssml_f-1.html
7
6
  class Formula < OOXMLObject
8
7
  define_attribute(:_, :string, :accessor => :expression)
9
8
  define_attribute(:t, RubyXL::ST_CellFormulaType, :default => 'normal')
10
- define_attribute(:aca, :bool, :default => false)
9
+ define_attribute(:aca, :bool, :default => false)
11
10
  define_attribute(:ref, :ref)
12
11
  define_attribute(:dt2D, :bool, :default => false)
13
12
  define_attribute(:dtr, :bool, :default => false)
@@ -15,10 +14,9 @@ module RubyXL
15
14
  define_attribute(:del2, :bool, :default => false)
16
15
  define_attribute(:r1, :ref)
17
16
  define_attribute(:r2, :ref)
18
- define_attribute(:ca, :bool, :default => false)
17
+ define_attribute(:ca, :bool, :default => false)
19
18
  define_attribute(:si, :int)
20
- define_attribute(:bx, :bool, :default => false)
19
+ define_attribute(:bx, :bool, :default => false)
21
20
  define_element_name 'f'
22
21
  end
23
-
24
22
  end
@@ -85,7 +85,7 @@ module RubyXL
85
85
  accessor = (extra_params[:accessor] || accessorize(child_node_name)).to_sym
86
86
 
87
87
  child_nodes[child_node_name] = {
88
- :class => klass,
88
+ :class => klass,
89
89
  :is_array => extra_params[:collection],
90
90
  :accessor => accessor
91
91
  }
@@ -148,7 +148,6 @@ module RubyXL
148
148
  known_namespaces ||= obtain_class_variable(:@@ooxml_namespaces)
149
149
 
150
150
  node.element_children.each { |child_node|
151
-
152
151
  ns = child_node.namespace
153
152
  prefix = if known_namespaces.has_key?(ns.href) then known_namespaces[ns.href]
154
153
  else ns.prefix
@@ -186,21 +185,21 @@ module RubyXL
186
185
  private
187
186
  def accessorize(str)
188
187
  acc = str.to_s.dup
189
- acc.gsub!(/([A-Z\d]+)([A-Z][a-z])/,'\1_\2')
190
- acc.gsub!(/([a-z\d])([A-Z])/,'\1_\2')
191
- acc.gsub!(':','_')
188
+ acc.gsub!(/([A-Z\d]+)([A-Z][a-z])/, '\1_\2')
189
+ acc.gsub!(/([a-z\d])([A-Z])/, '\1_\2')
190
+ acc.gsub!(':', '_')
192
191
  acc.downcase.to_sym
193
192
  end
194
193
 
195
194
  def process_attribute(obj, raw_value, params)
196
195
  val = raw_value &&
197
196
  case params[:attr_type]
198
- when :double then Float(raw_value) # http://www.datypic.com/sc/xsd/t-xsd_double.html
197
+ when :double then Float(raw_value) # http://www.datypic.com/sc/xsd/t-xsd_double.html
199
198
  when :string then raw_value
200
199
  when Array then raw_value # Case of Simple Types
201
200
  when :sqref then RubyXL::Sqref.new(raw_value)
202
201
  when :ref then RubyXL::Reference.new(raw_value)
203
- when :bool then ['1', 'true'].include?(raw_value) # http://www.datypic.com/sc/xsd/t-xsd_boolean.html
202
+ when :bool then ['1', 'true'].include?(raw_value) # http://www.datypic.com/sc/xsd/t-xsd_boolean.html
204
203
  when :int then Integer(raw_value)
205
204
  when :uint then
206
205
  v = Integer(raw_value)
@@ -209,7 +208,6 @@ module RubyXL
209
208
  end
210
209
  obj.send("#{params[:accessor]}=", val)
211
210
  end
212
-
213
211
  end
214
212
 
215
213
 
@@ -238,7 +236,6 @@ module RubyXL
238
236
 
239
237
  def init_child_nodes(params)
240
238
  obtain_class_variable(:@@ooxml_child_nodes).each_value { |v|
241
-
242
239
  initial_value =
243
240
  if params.has_key?(v[:accessor]) then params[v[:accessor]]
244
241
  elsif v[:is_array] then []
@@ -363,7 +360,6 @@ module RubyXL
363
360
  }
364
361
  true
365
362
  end
366
-
367
363
  end
368
364
 
369
365
  # Parent class for defining OOXML based objects (not unlike Rails' +ActiveRecord+!)
@@ -417,7 +413,6 @@ module RubyXL
417
413
  end
418
414
  protected :define_count_attribute
419
415
  end
420
-
421
416
  end
422
417
 
423
418
  # Extension class providing functionality for top-level OOXML objects that are represented by
@@ -468,7 +463,5 @@ module RubyXL
468
463
  def file_index
469
464
  root.rels_hash[self.class].index{ |f| f.equal?(self) }.to_i + 1
470
465
  end
471
-
472
466
  end
473
-
474
467
  end
@@ -62,8 +62,8 @@ module RubyXL
62
62
 
63
63
  # http://www.datypic.com/sc/ooxml/e-ssml_queryTable.html
64
64
  class QueryTable < OOXMLTopLevelObject
65
- CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml'
66
- REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/queryTable'
65
+ CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml'.freeze
66
+ REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/queryTable'.freeze
67
67
 
68
68
  include RubyXL::RelationshipSupport
69
69
 
@@ -94,7 +94,7 @@ module RubyXL
94
94
  define_child_node(RubyXL::ExtensionStorageArea)
95
95
 
96
96
  define_element_name 'queryTable'
97
- set_namespaces('http://schemas.openxmlformats.org/spreadsheetml/2006/main' => nil,
97
+ set_namespaces('http://schemas.openxmlformats.org/spreadsheetml/2006/main' => nil,
98
98
  'http://schemas.openxmlformats.org/officeDocument/2006/relationships' => 'r')
99
99
 
100
100
  def xlsx_path
@@ -29,6 +29,10 @@ module RubyXL
29
29
  (@row_range.begin == @row_range.end) && (@col_range.begin == @col_range.end)
30
30
  end
31
31
 
32
+ def valid?
33
+ !(row_range.begin.negative? || col_range.begin.negative?)
34
+ end
35
+
32
36
  def first_row
33
37
  @row_range.begin
34
38
  end
@@ -88,13 +92,11 @@ module RubyXL
88
92
  # Converts Excel-style cell reference to +row+ and +col+ zero-based indices.
89
93
  def self.ref2ind(str)
90
94
  return [ -1, -1 ] unless str =~ /\A([A-Z]+)(\d+)\Z/
91
- [ $2.to_i - 1, $1.each_byte.inject(0) { |col, chr| col * 26 + (chr - 64) } - 1 ]
95
+ [ Regexp.last_match(2).to_i - 1, Regexp.last_match(1).each_byte.inject(0) { |col, chr| col * 26 + (chr - 64) } - 1 ]
92
96
  end
93
-
94
97
  end
95
98
 
96
99
  class Sqref < Array
97
-
98
100
  def initialize(str)
99
101
  str.split.each { |ref_str| self << RubyXL::Reference.new(ref_str) }
100
102
  end
@@ -102,6 +104,5 @@ module RubyXL
102
104
  def to_s
103
105
  self.collect{ |ref| ref.to_s }.join(' ')
104
106
  end
105
-
106
107
  end
107
108
  end
@@ -2,7 +2,6 @@ require 'pathname'
2
2
  require 'rubyXL/objects/ooxml_object'
3
3
 
4
4
  module RubyXL
5
-
6
5
  class RID < OOXMLObject
7
6
  define_relationship(:required => true)
8
7
  end
@@ -16,7 +15,7 @@ module RubyXL
16
15
  end
17
16
 
18
17
  class OOXMLRelationshipsFile < OOXMLTopLevelObject
19
- CONTENT_TYPE = 'application/vnd.openxmlformats-package.relationships+xml'
18
+ CONTENT_TYPE = 'application/vnd.openxmlformats-package.relationships+xml'.freeze
20
19
  SAVE_ORDER = 100
21
20
 
22
21
  define_child_node(RubyXL::Relationship, :collection => true, :accessor => :relationships)
@@ -28,8 +27,8 @@ module RubyXL
28
27
  @@debug_indent = ($DEBUG ? 0 : nil)
29
28
 
30
29
  def new_relationship(target, type)
31
- RubyXL::Relationship.new(:id => "rId#{relationships.size + 1}",
32
- :type => type,
30
+ RubyXL::Relationship.new(:id => "rId#{relationships.size + 1}",
31
+ :type => type,
33
32
  :target => target)
34
33
  end
35
34
  protected :new_relationship
@@ -37,8 +36,8 @@ module RubyXL
37
36
  def add_relationship(obj)
38
37
  return if obj.nil? || !defined?(obj.class::REL_TYPE) || (obj.respond_to?(:empty?) && obj.empty?)
39
38
 
40
- relationships << RubyXL::Relationship.new(:id => "rId#{relationships.size + 1}",
41
- :type => obj.class::REL_TYPE,
39
+ relationships << RubyXL::Relationship.new(:id => "rId#{relationships.size + 1}",
40
+ :type => obj.class::REL_TYPE,
42
41
  :target => obj.xlsx_path.relative_path_from(owner.xlsx_path.dirname))
43
42
  end
44
43
  protected :add_relationship
@@ -131,12 +130,10 @@ module RubyXL
131
130
  basename = base_file_path.root? ? '' : base_file_path.basename
132
131
  base_file_path.dirname.join('_rels', "#{basename}.rels").cleanpath
133
132
  end
134
-
135
133
  end
136
134
 
137
135
  # +RelationshipSupport+ module enables automatic loading and saving of _rels for the respective file
138
136
  module RelationshipSupport
139
-
140
137
  module ClassMehods
141
138
  def define_relationship(klass, accessor = nil)
142
139
  class_variable_get(:@@ooxml_relationships)[klass] = accessor
@@ -212,7 +209,5 @@ module RubyXL
212
209
  end
213
210
  self.generic_storage << related_file
214
211
  end
215
-
216
212
  end
217
-
218
213
  end
@@ -5,7 +5,6 @@ require 'rubyXL/objects/content_types'
5
5
  require 'rubyXL/objects/workbook'
6
6
 
7
7
  module RubyXL
8
-
9
8
  class WorkbookRoot
10
9
  @@debug = $DEBUG
11
10
 
@@ -82,5 +81,4 @@ module RubyXL
82
81
  root
83
82
  end
84
83
  end
85
-
86
84
  end
@@ -3,15 +3,14 @@ require 'rubyXL/objects/text'
3
3
  require 'rubyXL/objects/extensions'
4
4
 
5
5
  module RubyXL
6
-
7
6
  # http://www.datypic.com/sc/ooxml/e-ssml_sst.html
8
7
  class SharedStringsTable < OOXMLTopLevelObject
9
- CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml'
10
- REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings'
8
+ CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml'.freeze
9
+ REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings'.freeze
11
10
 
12
11
  # According to http://msdn.microsoft.com/en-us/library/office/gg278314.aspx,
13
12
  # +count+ and +uniqueCount+ may be either both missing, or both present. Need to validate.
14
- define_attribute(:uniqueCount, :int)
13
+ define_attribute(:uniqueCount, :int)
15
14
  define_child_node(RubyXL::RichText, :collection => :with_count, :node_name => 'si', :accessor => :strings)
16
15
  define_child_node(RubyXL::ExtensionStorageArea)
17
16
  define_element_name 'sst'
@@ -64,7 +63,5 @@ module RubyXL
64
63
  def xlsx_path
65
64
  ROOT.join('xl', 'sharedStrings.xml')
66
65
  end
67
-
68
66
  end
69
-
70
67
  end
@@ -2,7 +2,6 @@ require 'rubyXL/objects/ooxml_object'
2
2
  require 'rubyXL/objects/storage'
3
3
 
4
4
  module RubyXL
5
-
6
5
  # http://www.datypic.com/sc/ooxml/e-ssml_webPublishItem-1.html
7
6
  class WebPublishingItem < OOXMLObject
8
7
  define_attribute(:id, :int, :required => true)
@@ -12,7 +11,7 @@ module RubyXL
12
11
  define_attribute(:sourceObject, :string)
13
12
  define_attribute(:destinationFile, :string, :required => true)
14
13
  define_attribute(:title, :string)
15
- define_attribute(:autoRepublish, :bool, :default => false)
14
+ define_attribute(:autoRepublish, :bool, :default => false)
16
15
  define_element_name 'webPublishItem'
17
16
  end
18
17
 
@@ -47,5 +46,4 @@ module RubyXL
47
46
  define_child_node(RubyXL::StringNode, :node_name => :firstFooter)
48
47
  define_element_name 'headerFooter'
49
48
  end
50
-
51
49
  end
@@ -5,7 +5,6 @@ require 'rubyXL/objects/formula'
5
5
  require 'rubyXL/cell'
6
6
 
7
7
  module RubyXL
8
-
9
8
  # http://msdn.microsoft.com/en-us/library/documentformat.openxml.spreadsheet.cellvalues(v=office.14).aspx
10
9
  module DataType
11
10
  SHARED_STRING = 's'
@@ -14,7 +13,7 @@ module RubyXL
14
13
  ERROR = 'e'
15
14
  BOOLEAN = 'b'
16
15
  NUMBER = 'n'
17
- DATE = 'd' # Only available in Office2010.
16
+ DATE = 'd' # Only available in Office2010.
18
17
  end
19
18
 
20
19
  # http://www.datypic.com/sc/ooxml/e-ssml_v-1.html
@@ -35,13 +34,13 @@ module RubyXL
35
34
 
36
35
  define_attribute(:r, :ref)
37
36
  define_attribute(:s, :int, :default => 0, :accessor => :style_index)
38
- define_attribute(:t, RubyXL::ST_CellType, :accessor => :datatype, :default => 'n' )
37
+ define_attribute(:t, RubyXL::ST_CellType, :accessor => :datatype, :default => 'n')
39
38
  define_attribute(:cm, :int, :default => 0)
40
39
  define_attribute(:vm, :int, :default => 0)
41
40
  define_attribute(:ph, :bool, :default => false)
42
41
  define_child_node(RubyXL::Formula, :accessor => :formula)
43
42
  define_child_node(RubyXL::CellValue, :accessor => :value_container)
44
- define_child_node(RubyXL::RichText) # is
43
+ define_child_node(RubyXL::RichText) # is
45
44
  define_element_name 'c'
46
45
 
47
46
  attr_accessor :worksheet
@@ -116,7 +115,7 @@ module RubyXL
116
115
  if is then is.to_s
117
116
  elsif is_date? then workbook.num_to_date(r.to_f)
118
117
  elsif r.is_a?(String) && (r =~ NUMBER_REGEXP) then # Numeric
119
- if $1 != '' then r.to_f
118
+ if Regexp.last_match(1) != '' then r.to_f
120
119
  else r.to_i
121
120
  end
122
121
  else r
@@ -216,7 +215,5 @@ module RubyXL
216
215
  def size
217
216
  rows.size
218
217
  end
219
-
220
218
  end
221
-
222
219
  end
@@ -140,7 +140,7 @@ module RubyXL
140
140
  ST_TextHorzOverflowType = %w{ overflow clip }
141
141
  ST_TextVerticalType = %w{ horz vert vert270 wordArtVert eaVert mongolianVert wordArtVertRtl }
142
142
  ST_TextWrappingType = %w{ none square }
143
- ST_TextAnchoringType = %w{ t ctr b just dist }
143
+ ST_TextAnchoringType = %w{ t ctr b just dist }
144
144
  ST_TextShapeType = %w{ textNoShape textPlain textStop textTriangle textTriangleInverted textChevron
145
145
  textChevronInverted textRingInside textRingOutside textArchUp textArchDown
146
146
  textCircle textButton textArchUpPour textArchDownPour textCirclePour textButtonPour