rubyXL 3.3.14 → 3.3.15

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 (368) hide show
  1. data/VERSION +1 -1
  2. data/lib/rubyXL/convenience_methods.rb +160 -4
  3. data/lib/rubyXL/objects/ooxml_object.rb +2 -1
  4. data/lib/rubyXL/objects/root.rb +1 -1
  5. data/lib/rubyXL/objects/storage.rb +2 -1
  6. data/lib/rubyXL/objects/worksheet.rb +5 -5
  7. data/lib/rubyXL/worksheet.rb +1 -160
  8. data/rdoc/README_rdoc.html +1 -1
  9. data/rdoc/RubyXL.html +1 -1
  10. data/rdoc/RubyXL/AExtension.html +1 -1
  11. data/rdoc/RubyXL/AExtensionStorageArea.html +1 -1
  12. data/rdoc/RubyXL/AdjustHandleList.html +1 -1
  13. data/rdoc/RubyXL/Alignment.html +1 -1
  14. data/rdoc/RubyXL/AlternateContent.html +1 -1
  15. data/rdoc/RubyXL/Authors.html +1 -1
  16. data/rdoc/RubyXL/AutoFilter.html +1 -1
  17. data/rdoc/RubyXL/AutoFilterColumn.html +1 -1
  18. data/rdoc/RubyXL/BinaryImageFile.html +1 -1
  19. data/rdoc/RubyXL/BodyProperties.html +1 -1
  20. data/rdoc/RubyXL/BooleanNode.html +1 -1
  21. data/rdoc/RubyXL/BooleanValue.html +1 -1
  22. data/rdoc/RubyXL/Border.html +1 -1
  23. data/rdoc/RubyXL/BorderEdge.html +1 -1
  24. data/rdoc/RubyXL/Borders.html +1 -1
  25. data/rdoc/RubyXL/Break.html +1 -1
  26. data/rdoc/RubyXL/BreakList.html +1 -1
  27. data/rdoc/RubyXL/CT_AdjPoint2D.html +1 -1
  28. data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +1 -1
  29. data/rdoc/RubyXL/CT_AlphaModulateEffect.html +1 -1
  30. data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +1 -1
  31. data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +1 -1
  32. data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +1 -1
  33. data/rdoc/RubyXL/CT_Backdrop.html +1 -1
  34. data/rdoc/RubyXL/CT_Bevel.html +1 -1
  35. data/rdoc/RubyXL/CT_BiLevelEffect.html +1 -1
  36. data/rdoc/RubyXL/CT_BlendEffect.html +1 -1
  37. data/rdoc/RubyXL/CT_Blip.html +1 -1
  38. data/rdoc/RubyXL/CT_BlipFillProperties.html +1 -1
  39. data/rdoc/RubyXL/CT_BlurEffect.html +1 -1
  40. data/rdoc/RubyXL/CT_Camera.html +1 -1
  41. data/rdoc/RubyXL/CT_Color.html +1 -1
  42. data/rdoc/RubyXL/CT_ColorChangeEffect.html +1 -1
  43. data/rdoc/RubyXL/CT_ColorMapping.html +1 -1
  44. data/rdoc/RubyXL/CT_ColorScheme.html +1 -1
  45. data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +1 -1
  46. data/rdoc/RubyXL/CT_ConnectionSite.html +1 -1
  47. data/rdoc/RubyXL/CT_ConnectionSiteList.html +1 -1
  48. data/rdoc/RubyXL/CT_DashStop.html +1 -1
  49. data/rdoc/RubyXL/CT_DashStopList.html +1 -1
  50. data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +1 -1
  51. data/rdoc/RubyXL/CT_DuotoneEffect.html +1 -1
  52. data/rdoc/RubyXL/CT_EffectContainer.html +1 -1
  53. data/rdoc/RubyXL/CT_EffectList.html +1 -1
  54. data/rdoc/RubyXL/CT_EffectReference.html +1 -1
  55. data/rdoc/RubyXL/CT_EffectStyleItem.html +1 -1
  56. data/rdoc/RubyXL/CT_EffectStyleList.html +1 -1
  57. data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +1 -1
  58. data/rdoc/RubyXL/CT_FillEffect.html +1 -1
  59. data/rdoc/RubyXL/CT_FillOverlayEffect.html +1 -1
  60. data/rdoc/RubyXL/CT_FillStyleList.html +1 -1
  61. data/rdoc/RubyXL/CT_FlatText.html +1 -1
  62. data/rdoc/RubyXL/CT_FontCollection.html +1 -1
  63. data/rdoc/RubyXL/CT_FontReference.html +1 -1
  64. data/rdoc/RubyXL/CT_GeomGuideList.html +1 -1
  65. data/rdoc/RubyXL/CT_GlowEffect.html +1 -1
  66. data/rdoc/RubyXL/CT_GradientFillProperties.html +1 -1
  67. data/rdoc/RubyXL/CT_GradientStop.html +1 -1
  68. data/rdoc/RubyXL/CT_GradientStopList.html +1 -1
  69. data/rdoc/RubyXL/CT_HSLEffect.html +1 -1
  70. data/rdoc/RubyXL/CT_HslColor.html +1 -1
  71. data/rdoc/RubyXL/CT_Hyperlink.html +1 -1
  72. data/rdoc/RubyXL/CT_InnerShadowEffect.html +1 -1
  73. data/rdoc/RubyXL/CT_LightRig.html +1 -1
  74. data/rdoc/RubyXL/CT_LineEndProperties.html +1 -1
  75. data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +1 -1
  76. data/rdoc/RubyXL/CT_LineProperties.html +1 -1
  77. data/rdoc/RubyXL/CT_LineStyleList.html +1 -1
  78. data/rdoc/RubyXL/CT_LinearShadeProperties.html +1 -1
  79. data/rdoc/RubyXL/CT_LuminanceEffect.html +1 -1
  80. data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +1 -1
  81. data/rdoc/RubyXL/CT_OuterShadowEffect.html +1 -1
  82. data/rdoc/RubyXL/CT_Path2D.html +1 -1
  83. data/rdoc/RubyXL/CT_Path2DArcTo.html +1 -1
  84. data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +1 -1
  85. data/rdoc/RubyXL/CT_Path2DList.html +1 -1
  86. data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +1 -1
  87. data/rdoc/RubyXL/CT_Path2DTo.html +1 -1
  88. data/rdoc/RubyXL/CT_PathShadeProperties.html +1 -1
  89. data/rdoc/RubyXL/CT_PatternFillProperties.html +1 -1
  90. data/rdoc/RubyXL/CT_Point3D.html +1 -1
  91. data/rdoc/RubyXL/CT_PolarAdjustHandle.html +1 -1
  92. data/rdoc/RubyXL/CT_PresetColor.html +1 -1
  93. data/rdoc/RubyXL/CT_PresetLineDashProperties.html +1 -1
  94. data/rdoc/RubyXL/CT_PresetShadowEffect.html +1 -1
  95. data/rdoc/RubyXL/CT_PresetTextShape.html +1 -1
  96. data/rdoc/RubyXL/CT_ReflectionEffect.html +1 -1
  97. data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +1 -1
  98. data/rdoc/RubyXL/CT_RelativeRect.html +1 -1
  99. data/rdoc/RubyXL/CT_SRgbColor.html +1 -1
  100. data/rdoc/RubyXL/CT_ScRgbColor.html +1 -1
  101. data/rdoc/RubyXL/CT_Scene3D.html +1 -1
  102. data/rdoc/RubyXL/CT_SchemeColor.html +1 -1
  103. data/rdoc/RubyXL/CT_Shape3D.html +1 -1
  104. data/rdoc/RubyXL/CT_ShapeStyle.html +1 -1
  105. data/rdoc/RubyXL/CT_SoftEdgesEffect.html +1 -1
  106. data/rdoc/RubyXL/CT_SphereCoords.html +1 -1
  107. data/rdoc/RubyXL/CT_StretchInfoProperties.html +1 -1
  108. data/rdoc/RubyXL/CT_StyleMatrix.html +1 -1
  109. data/rdoc/RubyXL/CT_StyleMatrixReference.html +1 -1
  110. data/rdoc/RubyXL/CT_SupplementalFont.html +1 -1
  111. data/rdoc/RubyXL/CT_SystemColor.html +1 -1
  112. data/rdoc/RubyXL/CT_TextAutonumberBullet.html +1 -1
  113. data/rdoc/RubyXL/CT_TextBlipBullet.html +1 -1
  114. data/rdoc/RubyXL/CT_TextCharBullet.html +1 -1
  115. data/rdoc/RubyXL/CT_TextCharacterProperties.html +1 -1
  116. data/rdoc/RubyXL/CT_TextFont.html +1 -1
  117. data/rdoc/RubyXL/CT_TextListStyle.html +1 -1
  118. data/rdoc/RubyXL/CT_TextNormalAutofit.html +1 -1
  119. data/rdoc/RubyXL/CT_TextParagraphProperties.html +1 -1
  120. data/rdoc/RubyXL/CT_TextSpacing.html +1 -1
  121. data/rdoc/RubyXL/CT_TextTabStop.html +1 -1
  122. data/rdoc/RubyXL/CT_TextTabStopList.html +1 -1
  123. data/rdoc/RubyXL/CT_TileInfoProperties.html +1 -1
  124. data/rdoc/RubyXL/CT_TintEffect.html +1 -1
  125. data/rdoc/RubyXL/CT_Transform2D.html +1 -1
  126. data/rdoc/RubyXL/CT_TransformEffect.html +1 -1
  127. data/rdoc/RubyXL/CT_Vector3D.html +1 -1
  128. data/rdoc/RubyXL/CT_XYAdjustHandle.html +1 -1
  129. data/rdoc/RubyXL/CalculationChain.html +1 -1
  130. data/rdoc/RubyXL/CalculationChainCell.html +1 -1
  131. data/rdoc/RubyXL/CalculationProperties.html +1 -1
  132. data/rdoc/RubyXL/Cell.html +1 -1
  133. data/rdoc/RubyXL/CellConvenienceMethods.html +28 -28
  134. data/rdoc/RubyXL/CellExt.html +1 -1
  135. data/rdoc/RubyXL/CellSmartTag.html +1 -1
  136. data/rdoc/RubyXL/CellSmartTagProperty.html +1 -1
  137. data/rdoc/RubyXL/CellSmartTags.html +1 -1
  138. data/rdoc/RubyXL/CellStyle.html +1 -1
  139. data/rdoc/RubyXL/CellStyleXFs.html +1 -1
  140. data/rdoc/RubyXL/CellStyles.html +1 -1
  141. data/rdoc/RubyXL/CellValue.html +1 -1
  142. data/rdoc/RubyXL/CellWatch.html +1 -1
  143. data/rdoc/RubyXL/CellWatches.html +1 -1
  144. data/rdoc/RubyXL/CellXFs.html +1 -1
  145. data/rdoc/RubyXL/ChartColorsFile.html +1 -1
  146. data/rdoc/RubyXL/ChartFile.html +2 -2
  147. data/rdoc/RubyXL/ChartStyleFile.html +1 -1
  148. data/rdoc/RubyXL/ChartUserShapesFile.html +1 -1
  149. data/rdoc/RubyXL/Chartsheet.html +1 -1
  150. data/rdoc/RubyXL/ChartsheetPageSetup.html +1 -1
  151. data/rdoc/RubyXL/ChartsheetProperties.html +1 -1
  152. data/rdoc/RubyXL/ChartsheetProtection.html +1 -1
  153. data/rdoc/RubyXL/ChartsheetView.html +1 -1
  154. data/rdoc/RubyXL/ChartsheetViews.html +1 -1
  155. data/rdoc/RubyXL/Color.html +1 -1
  156. data/rdoc/RubyXL/ColorFilter.html +1 -1
  157. data/rdoc/RubyXL/ColorScale.html +1 -1
  158. data/rdoc/RubyXL/ColorSet.html +1 -1
  159. data/rdoc/RubyXL/Colors.html +1 -1
  160. data/rdoc/RubyXL/ColumnRange.html +1 -1
  161. data/rdoc/RubyXL/ColumnRanges.html +1 -1
  162. data/rdoc/RubyXL/Comment.html +1 -1
  163. data/rdoc/RubyXL/CommentList.html +1 -1
  164. data/rdoc/RubyXL/CommentsFile.html +1 -1
  165. data/rdoc/RubyXL/ConditionalFormatValue.html +1 -1
  166. data/rdoc/RubyXL/ConditionalFormatting.html +1 -1
  167. data/rdoc/RubyXL/ConditionalFormattingRule.html +1 -1
  168. data/rdoc/RubyXL/ContentTypeDefault.html +1 -1
  169. data/rdoc/RubyXL/ContentTypeOverride.html +1 -1
  170. data/rdoc/RubyXL/ContentTypes.html +1 -1
  171. data/rdoc/RubyXL/ControlPropertiesFile.html +1 -1
  172. data/rdoc/RubyXL/CorePropertiesFile.html +1 -1
  173. data/rdoc/RubyXL/CustomColor.html +1 -1
  174. data/rdoc/RubyXL/CustomColorList.html +1 -1
  175. data/rdoc/RubyXL/CustomFilter.html +1 -1
  176. data/rdoc/RubyXL/CustomFilters.html +1 -1
  177. data/rdoc/RubyXL/CustomGeometry.html +1 -1
  178. data/rdoc/RubyXL/CustomProperties.html +1 -1
  179. data/rdoc/RubyXL/CustomPropertiesFile.html +1 -1
  180. data/rdoc/RubyXL/CustomProperty.html +1 -1
  181. data/rdoc/RubyXL/CustomSheetView.html +1 -1
  182. data/rdoc/RubyXL/CustomSheetViews.html +1 -1
  183. data/rdoc/RubyXL/CustomWorkbookView.html +1 -1
  184. data/rdoc/RubyXL/CustomWorkbookViews.html +1 -1
  185. data/rdoc/RubyXL/CustomXMLFile.html +1 -1
  186. data/rdoc/RubyXL/DXF.html +1 -1
  187. data/rdoc/RubyXL/DXFs.html +1 -1
  188. data/rdoc/RubyXL/DataBar.html +1 -1
  189. data/rdoc/RubyXL/DataConsolidate.html +1 -1
  190. data/rdoc/RubyXL/DataConsolidationReference.html +1 -1
  191. data/rdoc/RubyXL/DataConsolidationReferences.html +1 -1
  192. data/rdoc/RubyXL/DataType.html +1 -1
  193. data/rdoc/RubyXL/DataValidation.html +1 -1
  194. data/rdoc/RubyXL/DataValidations.html +1 -1
  195. data/rdoc/RubyXL/DateGroupItem.html +1 -1
  196. data/rdoc/RubyXL/DefinedName.html +1 -1
  197. data/rdoc/RubyXL/DefinedNameExt.html +1 -1
  198. data/rdoc/RubyXL/DefinedNames.html +1 -1
  199. data/rdoc/RubyXL/DefinedNamesExt.html +1 -1
  200. data/rdoc/RubyXL/DocumentPropertiesFile.html +1 -1
  201. data/rdoc/RubyXL/DrawingFile.html +2 -2
  202. data/rdoc/RubyXL/DynamicFilter.html +1 -1
  203. data/rdoc/RubyXL/EmbeddedControl.html +1 -1
  204. data/rdoc/RubyXL/EmbeddedControls.html +1 -1
  205. data/rdoc/RubyXL/Extension.html +1 -1
  206. data/rdoc/RubyXL/ExtensionStorageArea.html +1 -1
  207. data/rdoc/RubyXL/Extents.html +1 -1
  208. data/rdoc/RubyXL/ExternalBook.html +1 -1
  209. data/rdoc/RubyXL/ExternalLinksFile.html +1 -1
  210. data/rdoc/RubyXL/ExternalReference.html +1 -1
  211. data/rdoc/RubyXL/ExternalReferences.html +1 -1
  212. data/rdoc/RubyXL/ExtraColorSchemeList.html +1 -1
  213. data/rdoc/RubyXL/FieldItem.html +1 -1
  214. data/rdoc/RubyXL/FileRecoveryProperties.html +1 -1
  215. data/rdoc/RubyXL/FileSharing.html +1 -1
  216. data/rdoc/RubyXL/FileVersion.html +1 -1
  217. data/rdoc/RubyXL/Fill.html +1 -1
  218. data/rdoc/RubyXL/Fills.html +1 -1
  219. data/rdoc/RubyXL/FilterContainer.html +1 -1
  220. data/rdoc/RubyXL/FloatNode.html +1 -1
  221. data/rdoc/RubyXL/FloatValue.html +1 -1
  222. data/rdoc/RubyXL/Font.html +1 -1
  223. data/rdoc/RubyXL/FontScheme.html +1 -1
  224. data/rdoc/RubyXL/Fonts.html +1 -1
  225. data/rdoc/RubyXL/Formula.html +1 -1
  226. data/rdoc/RubyXL/FunctionGroup.html +1 -1
  227. data/rdoc/RubyXL/FunctionGroups.html +1 -1
  228. data/rdoc/RubyXL/GenericStorageObject.html +3 -2
  229. data/rdoc/RubyXL/GradientFill.html +1 -1
  230. data/rdoc/RubyXL/HeaderFooterSettings.html +1 -1
  231. data/rdoc/RubyXL/Hyperlink.html +1 -1
  232. data/rdoc/RubyXL/HyperlinkRelFile.html +1 -1
  233. data/rdoc/RubyXL/Hyperlinks.html +1 -1
  234. data/rdoc/RubyXL/IconFilter.html +1 -1
  235. data/rdoc/RubyXL/IconSet.html +1 -1
  236. data/rdoc/RubyXL/IgnoredError.html +1 -1
  237. data/rdoc/RubyXL/IgnoredErrors.html +1 -1
  238. data/rdoc/RubyXL/IndexedColors.html +1 -1
  239. data/rdoc/RubyXL/InputCells.html +1 -1
  240. data/rdoc/RubyXL/IntegerNode.html +1 -1
  241. data/rdoc/RubyXL/IntegerValue.html +1 -1
  242. data/rdoc/RubyXL/LegacyCell.html +1 -1
  243. data/rdoc/RubyXL/LegacyWorksheet.html +1 -266
  244. data/rdoc/RubyXL/MRUColors.html +1 -1
  245. data/rdoc/RubyXL/MacrosFile.html +1 -1
  246. data/rdoc/RubyXL/MergedCell.html +1 -1
  247. data/rdoc/RubyXL/MergedCells.html +1 -1
  248. data/rdoc/RubyXL/NumFmt.html +1 -1
  249. data/rdoc/RubyXL/NumberFormat.html +1 -1
  250. data/rdoc/RubyXL/NumberFormats.html +1 -1
  251. data/rdoc/RubyXL/OLEObject.html +1 -1
  252. data/rdoc/RubyXL/OLEObjectFile.html +1 -1
  253. data/rdoc/RubyXL/OLEObjects.html +1 -1
  254. data/rdoc/RubyXL/OLESize.html +1 -1
  255. data/rdoc/RubyXL/OOXMLContainerObject.html +1 -1
  256. data/rdoc/RubyXL/OOXMLObject.html +1 -1
  257. data/rdoc/RubyXL/OOXMLObjectClassMethods.html +1 -1
  258. data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +1 -1
  259. data/rdoc/RubyXL/OOXMLRelationshipsFile.html +1 -1
  260. data/rdoc/RubyXL/OOXMLTopLevelObject.html +4 -3
  261. data/rdoc/RubyXL/Offset.html +1 -1
  262. data/rdoc/RubyXL/OutlineProperties.html +1 -1
  263. data/rdoc/RubyXL/PageMargins.html +1 -1
  264. data/rdoc/RubyXL/PageSetup.html +1 -1
  265. data/rdoc/RubyXL/PageSetupProperties.html +1 -1
  266. data/rdoc/RubyXL/Pane.html +1 -1
  267. data/rdoc/RubyXL/Parser.html +1 -1
  268. data/rdoc/RubyXL/PatternFill.html +1 -1
  269. data/rdoc/RubyXL/PhoneticProperties.html +1 -1
  270. data/rdoc/RubyXL/PhoneticRun.html +1 -1
  271. data/rdoc/RubyXL/PivotArea.html +1 -1
  272. data/rdoc/RubyXL/PivotCache.html +1 -1
  273. data/rdoc/RubyXL/PivotCacheDefinitionFile.html +1 -1
  274. data/rdoc/RubyXL/PivotCacheRecordsFile.html +1 -1
  275. data/rdoc/RubyXL/PivotCaches.html +1 -1
  276. data/rdoc/RubyXL/PivotReference.html +1 -1
  277. data/rdoc/RubyXL/PivotReferences.html +1 -1
  278. data/rdoc/RubyXL/PivotTableFile.html +1 -1
  279. data/rdoc/RubyXL/PivotTableSelection.html +1 -1
  280. data/rdoc/RubyXL/PresetGeometry.html +1 -1
  281. data/rdoc/RubyXL/PrintOptions.html +1 -1
  282. data/rdoc/RubyXL/PrinterSettingsFile.html +1 -1
  283. data/rdoc/RubyXL/ProtectedRange.html +1 -1
  284. data/rdoc/RubyXL/ProtectedRanges.html +1 -1
  285. data/rdoc/RubyXL/Protection.html +1 -1
  286. data/rdoc/RubyXL/RID.html +1 -1
  287. data/rdoc/RubyXL/RawOOXML.html +1 -1
  288. data/rdoc/RubyXL/Reference.html +1 -1
  289. data/rdoc/RubyXL/Relationship.html +1 -1
  290. data/rdoc/RubyXL/RelationshipSupport.html +1 -1
  291. data/rdoc/RubyXL/RelationshipSupport/ClassMehods.html +1 -1
  292. data/rdoc/RubyXL/RichText.html +1 -1
  293. data/rdoc/RubyXL/RichTextRun.html +1 -1
  294. data/rdoc/RubyXL/Row.html +1 -1
  295. data/rdoc/RubyXL/RowExt.html +1 -1
  296. data/rdoc/RubyXL/RunProperties.html +1 -1
  297. data/rdoc/RubyXL/Scenario.html +1 -1
  298. data/rdoc/RubyXL/Scenarios.html +1 -1
  299. data/rdoc/RubyXL/Selection.html +1 -1
  300. data/rdoc/RubyXL/ShapeGuide.html +1 -1
  301. data/rdoc/RubyXL/ShapeTextRectangle.html +1 -1
  302. data/rdoc/RubyXL/SharedStringsTable.html +1 -1
  303. data/rdoc/RubyXL/Sheet.html +1 -1
  304. data/rdoc/RubyXL/SheetCalculationProperties.html +1 -1
  305. data/rdoc/RubyXL/SheetData.html +1 -1
  306. data/rdoc/RubyXL/SheetDataExt.html +1 -1
  307. data/rdoc/RubyXL/SheetDataSet.html +1 -1
  308. data/rdoc/RubyXL/SheetName.html +1 -1
  309. data/rdoc/RubyXL/SheetNames.html +1 -1
  310. data/rdoc/RubyXL/Sheets.html +1 -1
  311. data/rdoc/RubyXL/SlicerCacheFile.html +1 -1
  312. data/rdoc/RubyXL/SlicerFile.html +1 -1
  313. data/rdoc/RubyXL/SmartTagProperties.html +1 -1
  314. data/rdoc/RubyXL/SmartTagType.html +1 -1
  315. data/rdoc/RubyXL/SmartTagTypes.html +1 -1
  316. data/rdoc/RubyXL/SmartTags.html +1 -1
  317. data/rdoc/RubyXL/SortCondition.html +1 -1
  318. data/rdoc/RubyXL/SortState.html +1 -1
  319. data/rdoc/RubyXL/Sqref.html +1 -1
  320. data/rdoc/RubyXL/Stop.html +1 -1
  321. data/rdoc/RubyXL/StringNode.html +1 -1
  322. data/rdoc/RubyXL/StringNodeW3C.html +1 -1
  323. data/rdoc/RubyXL/StringValue.html +1 -1
  324. data/rdoc/RubyXL/Stylesheet.html +1 -1
  325. data/rdoc/RubyXL/TableFile.html +1 -1
  326. data/rdoc/RubyXL/TableParts.html +1 -1
  327. data/rdoc/RubyXL/TableStyle.html +1 -1
  328. data/rdoc/RubyXL/TableStyles.html +1 -1
  329. data/rdoc/RubyXL/Text.html +1 -1
  330. data/rdoc/RubyXL/Theme.html +1 -1
  331. data/rdoc/RubyXL/ThemeElements.html +1 -1
  332. data/rdoc/RubyXL/ThumbnailFile.html +1 -1
  333. data/rdoc/RubyXL/Top10.html +1 -1
  334. data/rdoc/RubyXL/VMLDrawingFile.html +1 -1
  335. data/rdoc/RubyXL/Variant.html +1 -1
  336. data/rdoc/RubyXL/Vector.html +1 -1
  337. data/rdoc/RubyXL/VectorValue.html +1 -1
  338. data/rdoc/RubyXL/VisualProperties.html +1 -1
  339. data/rdoc/RubyXL/WebPublishObject.html +1 -1
  340. data/rdoc/RubyXL/WebPublishObjects.html +1 -1
  341. data/rdoc/RubyXL/WebPublishingItem.html +1 -1
  342. data/rdoc/RubyXL/WebPublishingItems.html +1 -1
  343. data/rdoc/RubyXL/WebPublishingProperties.html +1 -1
  344. data/rdoc/RubyXL/Workbook.html +1 -1
  345. data/rdoc/RubyXL/WorkbookConvenienceMethods.html +1 -1
  346. data/rdoc/RubyXL/WorkbookProperties.html +1 -1
  347. data/rdoc/RubyXL/WorkbookProtection.html +1 -1
  348. data/rdoc/RubyXL/WorkbookRoot.html +2 -2
  349. data/rdoc/RubyXL/WorkbookView.html +1 -1
  350. data/rdoc/RubyXL/WorkbookViews.html +1 -1
  351. data/rdoc/RubyXL/Worksheet.html +1 -1
  352. data/rdoc/RubyXL/WorksheetConvenienceMethods.html +591 -58
  353. data/rdoc/RubyXL/WorksheetDimensions.html +1 -1
  354. data/rdoc/RubyXL/WorksheetFormatProperties.html +1 -1
  355. data/rdoc/RubyXL/WorksheetProperties.html +1 -1
  356. data/rdoc/RubyXL/WorksheetProtection.html +1 -1
  357. data/rdoc/RubyXL/WorksheetView.html +1 -1
  358. data/rdoc/RubyXL/WorksheetViews.html +1 -1
  359. data/rdoc/RubyXL/XF.html +1 -1
  360. data/rdoc/created.rid +8 -8
  361. data/rdoc/index.html +2 -2
  362. data/rdoc/js/navigation.js.gz +0 -0
  363. data/rdoc/js/search_index.js +1 -1
  364. data/rdoc/js/search_index.js.gz +0 -0
  365. data/rdoc/js/searcher.js.gz +0 -0
  366. data/rdoc/table_of_contents.html +188 -153
  367. data/rubyXL.gemspec +2 -2
  368. metadata +3 -3
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.3.14
1
+ 3.3.15
@@ -183,6 +183,13 @@ module RubyXL
183
183
 
184
184
 
185
185
  module WorksheetConvenienceMethods
186
+ NAME = 0
187
+ SIZE = 1
188
+ COLOR = 2
189
+ ITALICS = 3
190
+ BOLD = 4
191
+ UNDERLINE = 5
192
+ STRIKETHROUGH = 6
186
193
 
187
194
  def insert_cell(row = 0, col = 0, data = nil, formula = nil, shift = nil)
188
195
  validate_workbook
@@ -232,6 +239,109 @@ module RubyXL
232
239
  return old_cell
233
240
  end
234
241
 
242
+ # Inserts row at row_index, pushes down, copies style from the row above (that's what Excel 2013 does!)
243
+ # NOTE: use of this method will break formulas which reference cells which are being "pushed down"
244
+ def insert_row(row_index = 0)
245
+ validate_workbook
246
+ ensure_cell_exists(row_index)
247
+
248
+ old_row = new_cells = nil
249
+
250
+ if row_index > 0 then
251
+ old_row = sheet_data.rows[row_index - 1]
252
+ if old_row then
253
+ new_cells = old_row.cells.collect { |c|
254
+ if c.nil? then nil
255
+ else nc = RubyXL::Cell.new(:style_index => c.style_index)
256
+ nc.worksheet = self
257
+ nc
258
+ end
259
+ }
260
+ end
261
+ end
262
+
263
+ row0 = sheet_data.rows[0]
264
+ new_cells ||= Array.new((row0 && row0.cells.size) || 0)
265
+
266
+ sheet_data.rows.insert(row_index, nil)
267
+ new_row = add_row(row_index, :cells => new_cells, :style_index => old_row && old_row.style_index)
268
+
269
+ # Update row values for all rows below
270
+ row_index.upto(sheet_data.rows.size - 1) { |i|
271
+ row = sheet_data.rows[i]
272
+ next if row.nil?
273
+ row.cells.each { |c| c.row = i unless c.nil? }
274
+ }
275
+
276
+ return new_row
277
+ end
278
+
279
+ def delete_row(row_index=0)
280
+ validate_workbook
281
+ validate_nonnegative(row_index)
282
+
283
+ deleted = sheet_data.rows.delete_at(row_index)
284
+
285
+ # Update row number of each cell
286
+ row_index.upto(sheet_data.size - 1) { |index|
287
+ row = sheet_data[index]
288
+ row && row.cells.each{ |c| c.row -= 1 unless c.nil? }
289
+ }
290
+
291
+ return deleted
292
+ end
293
+
294
+ # Inserts column at +column_index+, pushes everything right, takes styles from column to left
295
+ # NOTE: use of this method will break formulas which reference cells which are being "pushed right"
296
+ def insert_column(column_index = 0)
297
+ validate_workbook
298
+ ensure_cell_exists(0, column_index)
299
+
300
+ old_range = cols.get_range(column_index)
301
+
302
+ #go through each cell in column
303
+ sheet_data.rows.each_with_index { |row, row_index|
304
+ old_cell = row[column_index]
305
+ c = nil
306
+
307
+ if old_cell && old_cell.style_index != 0 &&
308
+ old_range && old_range.style_index != old_cell.style_index then
309
+
310
+ c = RubyXL::Cell.new(:style_index => old_cell.style_index, :worksheet => self,
311
+ :row => row_index, :column => column_index,
312
+ :datatype => RubyXL::DataType::SHARED_STRING)
313
+ end
314
+
315
+ row.insert_cell_shift_right(c, column_index)
316
+ }
317
+
318
+ cols.insert_column(column_index)
319
+
320
+ # TODO: update column numbers
321
+ end
322
+
323
+ def delete_column(column_index = 0)
324
+ validate_workbook
325
+ validate_nonnegative(column_index)
326
+
327
+ #delete column
328
+ sheet_data.rows.each { |row| row.cells.delete_at(column_index) }
329
+
330
+ # Change column numbers for cells to the right of the deleted column
331
+ sheet_data.rows.each_with_index { |row, row_index|
332
+ row.cells.each_with_index { |c, column_index|
333
+ c.column = column_index if c.is_a?(Cell)
334
+ }
335
+ }
336
+
337
+ cols.each { |range| range.delete_column(column_index) }
338
+ end
339
+
340
+ def get_row_style(row_index)
341
+ row = sheet_data.rows[row_index]
342
+ (row && row.style_index) || 0
343
+ end
344
+
235
345
  def get_row_fill(row = 0)
236
346
  (row = sheet_data.rows[row]) && row.get_fill_color
237
347
  end
@@ -275,15 +385,17 @@ module RubyXL
275
385
 
276
386
  def get_row_border(row, border_direction)
277
387
  validate_workbook
278
- validate_nonnegative(row)
279
388
 
280
389
  border = @workbook.borders[get_row_xf(row).border_id]
281
390
  border && border.get_edge_style(border_direction)
282
391
  end
283
392
 
393
+ def row_font(row)
394
+ (row = sheet_data.rows[row]) && row.get_font
395
+ end
396
+
284
397
  def get_row_alignment(row, is_horizontal)
285
398
  validate_workbook
286
- validate_nonnegative(row)
287
399
 
288
400
  xf_obj = get_row_xf(row)
289
401
  return nil if xf_obj.alignment.nil?
@@ -303,6 +415,12 @@ module RubyXL
303
415
  return get_row_alignment(row, false)
304
416
  end
305
417
 
418
+ def get_cols_style_index(column_index)
419
+ validate_nonnegative(column_index)
420
+ range = cols.locate_range(column_index)
421
+ (range && range.style_index) || 0
422
+ end
423
+
306
424
  def get_column_font_name(col = 0)
307
425
  font = column_font(col)
308
426
  font && font.get_name
@@ -355,6 +473,12 @@ module RubyXL
355
473
  (width - (5.0 / RubyXL::Font::MAX_DIGIT_WIDTH)).round
356
474
  end
357
475
 
476
+ # Helper method to get the style index for a column
477
+ def get_col_style(column_index)
478
+ range = cols.locate_range(column_index)
479
+ (range && range.style_index) || 0
480
+ end
481
+
358
482
  def get_column_fill(col=0)
359
483
  validate_workbook
360
484
  validate_nonnegative(col)
@@ -364,16 +488,20 @@ module RubyXL
364
488
 
365
489
  def get_column_border(col, border_direction)
366
490
  validate_workbook
367
- validate_nonnegative(col)
368
491
 
369
492
  xf = @workbook.cell_xfs[get_cols_style_index(col)]
370
493
  border = @workbook.borders[xf.border_id]
371
494
  border && border.get_edge_style(border_direction)
372
495
  end
373
496
 
497
+ def column_font(col)
498
+ validate_workbook
499
+
500
+ @workbook.fonts[@workbook.cell_xfs[get_cols_style_index(col)].font_id]
501
+ end
502
+
374
503
  def get_column_alignment(col, type)
375
504
  validate_workbook
376
- validate_nonnegative(col)
377
505
 
378
506
  xf = @workbook.cell_xfs[get_cols_style_index(col)]
379
507
  xf.alignment && xf.alignment.send(type)
@@ -411,6 +539,19 @@ module RubyXL
411
539
  sheet_data[row_index].cells.each { |c| c.change_fill(rgb) unless c.nil? }
412
540
  end
413
541
 
542
+ # Helper method to update the row styles array
543
+ # change_type - NAME or SIZE or COLOR etc
544
+ # main method to change font, called from each separate font mutator method
545
+ def change_row_font(row_index, change_type, arg, font)
546
+ validate_workbook
547
+ ensure_cell_exists(row_index)
548
+
549
+ xf = workbook.register_new_font(font, get_row_xf(row_index))
550
+ row = sheet_data[row_index]
551
+ row.style_index = workbook.register_new_xf(xf)
552
+ row.cells.each { |c| c.font_switch(change_type, arg) unless c.nil? }
553
+ end
554
+
414
555
  def change_row_font_name(row = 0, font_name = 'Verdana')
415
556
  ensure_cell_exists(row)
416
557
  font = row_font(row).dup
@@ -470,6 +611,21 @@ module RubyXL
470
611
  c.custom_height = true
471
612
  end
472
613
 
614
+ # Helper method to update the fonts and cell styles array
615
+ # main method to change font, called from each separate font mutator method
616
+ def change_column_font(column_index, change_type, arg, font, xf)
617
+ validate_workbook
618
+ ensure_cell_exists(0, column_index)
619
+
620
+ xf = workbook.register_new_font(font, xf)
621
+ cols.get_range(column_index).style_index = workbook.register_new_xf(xf)
622
+
623
+ sheet_data.rows.each { |row|
624
+ c = row && row[column_index]
625
+ c.font_switch(change_type, arg) unless c.nil?
626
+ }
627
+ end
628
+
473
629
  def change_column_font_name(column_index = 0, font_name = 'Verdana')
474
630
  xf = get_col_xf(column_index)
475
631
  font = @workbook.fonts[xf.font_id].dup
@@ -443,9 +443,10 @@ module RubyXL
443
443
  # * +zipfile+ - ::Zip::File to which the resulting XNMML should be added.
444
444
  def add_to_zip(zip_stream)
445
445
  xml_string = write_xml
446
- return if xml_string.empty?
446
+ return false if xml_string.empty?
447
447
  zip_stream.put_next_entry(RubyXL::from_root(self.xlsx_path))
448
448
  zip_stream.write(xml_string)
449
+ true
449
450
  end
450
451
 
451
452
  def file_index
@@ -46,7 +46,7 @@ module RubyXL
46
46
 
47
47
  self.rels_hash.keys.sort_by{ |c| c::SAVE_ORDER }.each { |klass|
48
48
  puts "<-- DEBUG: saving related #{klass} files" if @@debug
49
- self.rels_hash[klass].each { |obj|
49
+ self.rels_hash[klass].select! { |obj|
50
50
  puts "<-- DEBUG: > #{obj.xlsx_path}" if @@debug
51
51
  obj.add_to_zip(zipstream)
52
52
  }
@@ -16,9 +16,10 @@ module RubyXL
16
16
  end
17
17
 
18
18
  def add_to_zip(zip_stream)
19
- return if @data.nil?
19
+ return false if @data.nil?
20
20
  zip_stream.put_next_entry(RubyXL::from_root(self.xlsx_path))
21
21
  zip_stream.write(@data)
22
+ true
22
23
  end
23
24
  end
24
25
 
@@ -189,11 +189,11 @@ module RubyXL
189
189
 
190
190
  # http://www.schemacentral.com/sc/ooxml/e-ssml_iconSet-1.html
191
191
  class IconSet < OOXMLObject
192
- define_attribute(:type, RubyXL::ST_IconSetType, :required => true, :default => '3TrafficLights1')
193
- define_attribute(:showValue, :bool, :default => true)
194
- define_attribute(:percent, :bool, :default => true)
195
- define_attribute(:reverse, :bool, :default => false)
196
- define_child_node(RubyXL::ConditionalFormatValue, :collection => true, :accessor => :cfvo)
192
+ define_attribute(:iconSet, RubyXL::ST_IconSetType, :default => '3TrafficLights1')
193
+ define_attribute(:showValue, :bool, :default => true)
194
+ define_attribute(:percent, :bool, :default => true)
195
+ define_attribute(:reverse, :bool, :default => false)
196
+ define_child_node(RubyXL::ConditionalFormatValue, :collection => [2..-1], :accessor => :cfvo)
197
197
  define_element_name 'iconSet'
198
198
  end
199
199
 
@@ -107,124 +107,8 @@ module LegacyWorksheet
107
107
  c
108
108
  end
109
109
 
110
- def delete_row(row_index=0)
111
- validate_workbook
112
- validate_nonnegative(row_index)
113
-
114
- deleted = sheet_data.rows.delete_at(row_index)
115
-
116
- # Change cell row numbers
117
- row_index.upto(sheet_data.size - 1) { |index|
118
- sheet_data[index].cells.each{ |c| c.row -= 1 unless c.nil? }
119
- }
120
-
121
- return deleted
122
- end
123
-
124
- # Inserts row at row_index, pushes down, copies style from the row above (that's what Excel 2013 does!)
125
- # NOTE: use of this method will break formulas which reference cells which are being "pushed down"
126
- def insert_row(row_index = 0)
127
- validate_workbook
128
- ensure_cell_exists(row_index)
129
-
130
- old_row = new_cells = nil
131
-
132
- if row_index > 0 then
133
- old_row = sheet_data.rows[row_index - 1]
134
- if old_row then
135
- new_cells = old_row.cells.collect { |c|
136
- if c.nil? then nil
137
- else nc = RubyXL::Cell.new(:style_index => c.style_index)
138
- nc.worksheet = self
139
- nc
140
- end
141
- }
142
- end
143
- end
144
-
145
- row0 = sheet_data.rows[0]
146
- new_cells ||= Array.new((row0 && row0.cells.size) || 0)
147
-
148
- sheet_data.rows.insert(row_index, nil)
149
- new_row = add_row(row_index, :cells => new_cells, :style_index => old_row && old_row.style_index)
150
-
151
- # Update row values for all rows below
152
- row_index.upto(sheet_data.rows.size - 1) { |i|
153
- row = sheet_data.rows[i]
154
- next if row.nil?
155
- row.cells.each { |c| c.row = i unless c.nil? }
156
- }
157
-
158
- return new_row
159
- end
160
-
161
- def delete_column(column_index = 0)
162
- validate_workbook
163
- validate_nonnegative(column_index)
164
-
165
- #delete column
166
- sheet_data.rows.each { |row| row.cells.delete_at(column_index) }
167
-
168
- # Change column numbers for cells to the right of the deleted column
169
- sheet_data.rows.each_with_index { |row, row_index|
170
- row.cells.each_with_index { |c, column_index|
171
- c.column = column_index if c.is_a?(Cell)
172
- }
173
- }
174
-
175
- cols.each { |range| range.delete_column(column_index) }
176
- end
177
-
178
- # Inserts column at +column_index+, pushes everything right, takes styles from column to left
179
- # NOTE: use of this method will break formulas which reference cells which are being "pushed right"
180
- def insert_column(column_index = 0)
181
- validate_workbook
182
- ensure_cell_exists(0, column_index)
183
-
184
- old_range = cols.get_range(column_index)
185
-
186
- #go through each cell in column
187
- sheet_data.rows.each_with_index { |row, row_index|
188
- old_cell = row[column_index]
189
- c = nil
190
-
191
- if old_cell && old_cell.style_index != 0 &&
192
- old_range && old_range.style_index != old_cell.style_index then
193
-
194
- c = RubyXL::Cell.new(:style_index => old_cell.style_index, :worksheet => self,
195
- :row => row_index, :column => column_index,
196
- :datatype => RubyXL::DataType::SHARED_STRING)
197
- end
198
-
199
- row.insert_cell_shift_right(c, column_index)
200
- }
201
-
202
- cols.insert_column(column_index)
203
-
204
- # TODO: update column numbers
205
- end
206
-
207
110
  private
208
111
 
209
- NAME = 0
210
- SIZE = 1
211
- COLOR = 2
212
- ITALICS = 3
213
- BOLD = 4
214
- UNDERLINE = 5
215
- STRIKETHROUGH = 6
216
-
217
- def row_font(row)
218
- (row = sheet_data.rows[row]) && row.get_font
219
- end
220
-
221
- def column_font(col)
222
- validate_workbook
223
- validate_nonnegative(col)
224
-
225
- @workbook.fonts[@workbook.cell_xfs[get_cols_style_index(col)].font_id]
226
- end
227
-
228
112
  #validates Workbook, ensures that this worksheet is in @workbook
229
113
  def validate_workbook()
230
114
  unless @workbook.nil? || @workbook.worksheets.nil?
@@ -234,39 +118,6 @@ module LegacyWorksheet
234
118
  raise "This worksheet #{self} is not in workbook #{@workbook}"
235
119
  end
236
120
 
237
- def get_cols_style_index(column_index)
238
- range = cols.locate_range(column_index)
239
- (range && range.style_index) || 0
240
- end
241
-
242
- # Helper method to update the row styles array
243
- # change_type - NAME or SIZE or COLOR etc
244
- # main method to change font, called from each separate font mutator method
245
- def change_row_font(row_index, change_type, arg, font)
246
- validate_workbook
247
- ensure_cell_exists(row_index)
248
-
249
- xf = workbook.register_new_font(font, get_row_xf(row_index))
250
- row = sheet_data[row_index]
251
- row.style_index = workbook.register_new_xf(xf)
252
- row.cells.each { |c| c.font_switch(change_type, arg) unless c.nil? }
253
- end
254
-
255
- # Helper method to update the fonts and cell styles array
256
- # main method to change font, called from each separate font mutator method
257
- def change_column_font(column_index, change_type, arg, font, xf)
258
- validate_workbook
259
- ensure_cell_exists(0, column_index)
260
-
261
- xf = workbook.register_new_font(font, xf)
262
- cols.get_range(column_index).style_index = workbook.register_new_xf(xf)
263
-
264
- sheet_data.rows.each { |row|
265
- c = row && row[column_index]
266
- c.font_switch(change_type, arg) unless c.nil?
267
- }
268
- end
269
-
270
121
  # Ensures that cell with +row_index+ and +column_index+ exists in
271
122
  # +sheet_data+ arrays, growing them up if necessary.
272
123
  def ensure_cell_exists(row_index, column_index = 0)
@@ -276,22 +127,12 @@ module LegacyWorksheet
276
127
  row = sheet_data.rows[row_index] || add_row(row_index)
277
128
  end
278
129
 
279
- # Helper method to get the style index for a column
280
- def get_col_style(column_index)
281
- range = cols.locate_range(column_index)
282
- (range && range.style_index) || 0
283
- end
284
-
285
- def get_row_style(row_index)
286
- row = sheet_data.rows[row_index]
287
- (row && row.style_index) || 0
288
- end
289
-
290
130
  def get_col_xf(column_index)
291
131
  @workbook.cell_xfs[get_col_style(column_index)]
292
132
  end
293
133
 
294
134
  def get_row_xf(row)
135
+ validate_nonnegative(row)
295
136
  @workbook.cell_xfs[get_row_style(row)]
296
137
  end
297
138