rubyXL 3.3.21 → 3.4.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (456) hide show
  1. checksums.yaml +5 -5
  2. data/.circleci/config.yml +60 -0
  3. data/.codeclimate.yml +3 -0
  4. data/Gemfile +3 -2
  5. data/Gemfile.lock +96 -0
  6. data/LICENSE.txt +1 -1
  7. data/README.rdoc +47 -16
  8. data/Rakefile +3 -2
  9. data/VERSION +1 -1
  10. data/lib/rubyXL.rb +1 -0
  11. data/lib/rubyXL/cell.rb +1 -26
  12. data/lib/rubyXL/convenience_methods.rb +5 -982
  13. data/lib/rubyXL/convenience_methods/cell.rb +272 -0
  14. data/lib/rubyXL/convenience_methods/color.rb +160 -0
  15. data/lib/rubyXL/convenience_methods/font.rb +63 -0
  16. data/lib/rubyXL/convenience_methods/workbook.rb +136 -0
  17. data/lib/rubyXL/convenience_methods/worksheet.rb +710 -0
  18. data/lib/rubyXL/objects/border.rb +31 -3
  19. data/lib/rubyXL/objects/calculation_chain.rb +2 -2
  20. data/lib/rubyXL/objects/cell_style.rb +8 -8
  21. data/lib/rubyXL/objects/chartsheet.rb +10 -10
  22. data/lib/rubyXL/objects/color.rb +6 -4
  23. data/lib/rubyXL/objects/column_range.rb +10 -10
  24. data/lib/rubyXL/objects/comments.rb +6 -6
  25. data/lib/rubyXL/objects/connection.rb +175 -0
  26. data/lib/rubyXL/objects/container_nodes.rb +2 -2
  27. data/lib/rubyXL/objects/content_types.rb +2 -2
  28. data/lib/rubyXL/objects/data_validation.rb +4 -2
  29. data/lib/rubyXL/objects/document_properties.rb +3 -3
  30. data/lib/rubyXL/objects/extensions.rb +20 -3
  31. data/lib/rubyXL/objects/external_links.rb +26 -2
  32. data/lib/rubyXL/objects/fill.rb +4 -4
  33. data/lib/rubyXL/objects/filters.rb +12 -12
  34. data/lib/rubyXL/objects/font.rb +2 -60
  35. data/lib/rubyXL/objects/formula.rb +1 -1
  36. data/lib/rubyXL/objects/ooxml_object.rb +15 -3
  37. data/lib/rubyXL/objects/query_table.rb +104 -0
  38. data/lib/rubyXL/objects/relationships.rb +8 -3
  39. data/lib/rubyXL/objects/shared_strings.rb +1 -1
  40. data/lib/rubyXL/objects/sheet_common.rb +4 -4
  41. data/lib/rubyXL/objects/sheet_data.rb +48 -11
  42. data/lib/rubyXL/objects/simple_types.rb +18 -0
  43. data/lib/rubyXL/objects/storage.rb +25 -1
  44. data/lib/rubyXL/objects/stylesheet.rb +14 -14
  45. data/lib/rubyXL/objects/text.rb +8 -8
  46. data/lib/rubyXL/objects/theme.rb +138 -119
  47. data/lib/rubyXL/objects/workbook.rb +153 -43
  48. data/lib/rubyXL/objects/worksheet.rb +118 -107
  49. data/lib/rubyXL/worksheet.rb +19 -13
  50. data/rdoc/README_rdoc.html +109 -103
  51. data/rdoc/RubyXL.html +39 -296
  52. data/rdoc/RubyXL/AExtension.html +21 -60
  53. data/rdoc/RubyXL/AExtensionStorageArea.html +12 -17
  54. data/rdoc/RubyXL/ActiveX.html +154 -0
  55. data/rdoc/RubyXL/ActiveXBinary.html +106 -0
  56. data/rdoc/RubyXL/AdjustHandleList.html +13 -19
  57. data/rdoc/RubyXL/Alignment.html +13 -19
  58. data/rdoc/RubyXL/AlternateContent.html +12 -17
  59. data/rdoc/RubyXL/Authors.html +13 -19
  60. data/rdoc/RubyXL/AutoFilter.html +13 -19
  61. data/rdoc/RubyXL/AutoFilterColumn.html +13 -19
  62. data/rdoc/RubyXL/BinaryImageFile.html +12 -25
  63. data/rdoc/RubyXL/BodyProperties.html +13 -19
  64. data/rdoc/RubyXL/BooleanNode.html +12 -17
  65. data/rdoc/RubyXL/BooleanValue.html +12 -17
  66. data/rdoc/RubyXL/Border.html +76 -53
  67. data/rdoc/RubyXL/BorderEdge.html +71 -17
  68. data/rdoc/RubyXL/Borders.html +19 -39
  69. data/rdoc/RubyXL/Break.html +13 -19
  70. data/rdoc/RubyXL/BreakList.html +13 -19
  71. data/rdoc/RubyXL/CT_AdjPoint2D.html +13 -19
  72. data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +13 -19
  73. data/rdoc/RubyXL/CT_AlphaModulateEffect.html +13 -19
  74. data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +13 -19
  75. data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +13 -19
  76. data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +13 -19
  77. data/rdoc/RubyXL/CT_Backdrop.html +13 -19
  78. data/rdoc/RubyXL/CT_Bevel.html +13 -19
  79. data/rdoc/RubyXL/CT_BiLevelEffect.html +13 -19
  80. data/rdoc/RubyXL/CT_BlendEffect.html +13 -19
  81. data/rdoc/RubyXL/CT_Blip.html +13 -19
  82. data/rdoc/RubyXL/CT_BlipFillProperties.html +13 -19
  83. data/rdoc/RubyXL/CT_BlurEffect.html +13 -19
  84. data/rdoc/RubyXL/CT_Camera.html +13 -19
  85. data/rdoc/RubyXL/CT_Color.html +13 -19
  86. data/rdoc/RubyXL/CT_ColorChangeEffect.html +13 -19
  87. data/rdoc/RubyXL/CT_ColorMapping.html +13 -19
  88. data/rdoc/RubyXL/CT_ColorScheme.html +13 -19
  89. data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +13 -19
  90. data/rdoc/RubyXL/CT_ConnectionSite.html +13 -19
  91. data/rdoc/RubyXL/CT_ConnectionSiteList.html +13 -19
  92. data/rdoc/RubyXL/CT_DashStop.html +13 -19
  93. data/rdoc/RubyXL/CT_DashStopList.html +13 -19
  94. data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +13 -19
  95. data/rdoc/RubyXL/CT_DuotoneEffect.html +13 -19
  96. data/rdoc/RubyXL/CT_EffectContainer.html +13 -19
  97. data/rdoc/RubyXL/CT_EffectList.html +13 -19
  98. data/rdoc/RubyXL/CT_EffectReference.html +13 -19
  99. data/rdoc/RubyXL/CT_EffectStyleItem.html +13 -19
  100. data/rdoc/RubyXL/CT_EffectStyleList.html +13 -19
  101. data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +13 -19
  102. data/rdoc/RubyXL/CT_FillEffect.html +13 -19
  103. data/rdoc/RubyXL/CT_FillOverlayEffect.html +13 -19
  104. data/rdoc/RubyXL/CT_FillStyleList.html +13 -19
  105. data/rdoc/RubyXL/CT_FlatText.html +13 -19
  106. data/rdoc/RubyXL/CT_FontCollection.html +13 -19
  107. data/rdoc/RubyXL/CT_FontReference.html +13 -19
  108. data/rdoc/RubyXL/CT_GeomGuideList.html +13 -19
  109. data/rdoc/RubyXL/CT_GlowEffect.html +13 -19
  110. data/rdoc/RubyXL/CT_GradientFillProperties.html +13 -19
  111. data/rdoc/RubyXL/CT_GradientStop.html +13 -19
  112. data/rdoc/RubyXL/CT_GradientStopList.html +13 -19
  113. data/rdoc/RubyXL/CT_HSLEffect.html +13 -19
  114. data/rdoc/RubyXL/CT_HslColor.html +13 -19
  115. data/rdoc/RubyXL/CT_Hyperlink.html +13 -19
  116. data/rdoc/RubyXL/CT_InnerShadowEffect.html +13 -19
  117. data/rdoc/RubyXL/CT_LightRig.html +13 -19
  118. data/rdoc/RubyXL/CT_LineEndProperties.html +13 -19
  119. data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +13 -19
  120. data/rdoc/RubyXL/CT_LineProperties.html +13 -19
  121. data/rdoc/RubyXL/CT_LineStyleList.html +13 -19
  122. data/rdoc/RubyXL/CT_LinearShadeProperties.html +13 -19
  123. data/rdoc/RubyXL/CT_LuminanceEffect.html +13 -19
  124. data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +13 -19
  125. data/rdoc/RubyXL/CT_OuterShadowEffect.html +13 -19
  126. data/rdoc/RubyXL/CT_Path2D.html +13 -19
  127. data/rdoc/RubyXL/CT_Path2DArcTo.html +13 -19
  128. data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +13 -19
  129. data/rdoc/RubyXL/CT_Path2DList.html +13 -19
  130. data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +13 -19
  131. data/rdoc/RubyXL/CT_Path2DTo.html +13 -19
  132. data/rdoc/RubyXL/CT_PathShadeProperties.html +13 -19
  133. data/rdoc/RubyXL/CT_PatternFillProperties.html +13 -19
  134. data/rdoc/RubyXL/CT_Point3D.html +13 -19
  135. data/rdoc/RubyXL/CT_PolarAdjustHandle.html +13 -19
  136. data/rdoc/RubyXL/CT_PresetColor.html +13 -19
  137. data/rdoc/RubyXL/CT_PresetLineDashProperties.html +13 -19
  138. data/rdoc/RubyXL/CT_PresetShadowEffect.html +13 -19
  139. data/rdoc/RubyXL/CT_PresetTextShape.html +13 -19
  140. data/rdoc/RubyXL/CT_ReflectionEffect.html +13 -19
  141. data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +13 -19
  142. data/rdoc/RubyXL/CT_RelativeRect.html +13 -19
  143. data/rdoc/RubyXL/CT_SRgbColor.html +13 -19
  144. data/rdoc/RubyXL/CT_ScRgbColor.html +13 -19
  145. data/rdoc/RubyXL/CT_Scene3D.html +13 -19
  146. data/rdoc/RubyXL/CT_SchemeColor.html +13 -19
  147. data/rdoc/RubyXL/CT_Shape3D.html +13 -19
  148. data/rdoc/RubyXL/CT_ShapeStyle.html +13 -19
  149. data/rdoc/RubyXL/CT_SoftEdgesEffect.html +13 -19
  150. data/rdoc/RubyXL/CT_SphereCoords.html +13 -19
  151. data/rdoc/RubyXL/CT_StretchInfoProperties.html +13 -19
  152. data/rdoc/RubyXL/CT_StyleMatrix.html +13 -19
  153. data/rdoc/RubyXL/CT_StyleMatrixReference.html +13 -19
  154. data/rdoc/RubyXL/CT_SupplementalFont.html +13 -19
  155. data/rdoc/RubyXL/CT_SystemColor.html +13 -19
  156. data/rdoc/RubyXL/CT_TextAutonumberBullet.html +13 -19
  157. data/rdoc/RubyXL/CT_TextBlipBullet.html +13 -19
  158. data/rdoc/RubyXL/CT_TextCharBullet.html +13 -19
  159. data/rdoc/RubyXL/CT_TextCharacterProperties.html +13 -19
  160. data/rdoc/RubyXL/CT_TextFont.html +13 -19
  161. data/rdoc/RubyXL/CT_TextListStyle.html +13 -19
  162. data/rdoc/RubyXL/CT_TextNormalAutofit.html +13 -19
  163. data/rdoc/RubyXL/CT_TextParagraphProperties.html +13 -19
  164. data/rdoc/RubyXL/CT_TextSpacing.html +13 -19
  165. data/rdoc/RubyXL/CT_TextTabStop.html +13 -19
  166. data/rdoc/RubyXL/CT_TextTabStopList.html +13 -19
  167. data/rdoc/RubyXL/CT_TileInfoProperties.html +13 -19
  168. data/rdoc/RubyXL/CT_TintEffect.html +13 -19
  169. data/rdoc/RubyXL/CT_Transform2D.html +13 -19
  170. data/rdoc/RubyXL/CT_TransformEffect.html +13 -19
  171. data/rdoc/RubyXL/CT_Vector3D.html +13 -19
  172. data/rdoc/RubyXL/CT_XYAdjustHandle.html +13 -19
  173. data/rdoc/RubyXL/CalculationChain.html +17 -45
  174. data/rdoc/RubyXL/CalculationChainCell.html +13 -19
  175. data/rdoc/RubyXL/CalculationProperties.html +13 -19
  176. data/rdoc/RubyXL/Cell.html +144 -204
  177. data/rdoc/RubyXL/CellConvenienceMethods.html +240 -426
  178. data/rdoc/RubyXL/CellExt.html +13 -19
  179. data/rdoc/RubyXL/CellSmartTag.html +13 -19
  180. data/rdoc/RubyXL/CellSmartTagProperty.html +13 -19
  181. data/rdoc/RubyXL/CellSmartTags.html +13 -19
  182. data/rdoc/RubyXL/CellStyle.html +13 -19
  183. data/rdoc/RubyXL/CellStyleXFs.html +18 -38
  184. data/rdoc/RubyXL/CellStyles.html +18 -38
  185. data/rdoc/RubyXL/CellValue.html +18 -38
  186. data/rdoc/RubyXL/CellWatch.html +13 -19
  187. data/rdoc/RubyXL/CellWatches.html +13 -19
  188. data/rdoc/RubyXL/CellXFs.html +19 -39
  189. data/rdoc/RubyXL/ChartColorsFile.html +12 -25
  190. data/rdoc/RubyXL/ChartFile.html +19 -49
  191. data/rdoc/RubyXL/ChartStyleFile.html +12 -25
  192. data/rdoc/RubyXL/ChartUserShapesFile.html +12 -25
  193. data/rdoc/RubyXL/Chartsheet.html +19 -67
  194. data/rdoc/RubyXL/ChartsheetPageSetup.html +13 -19
  195. data/rdoc/RubyXL/ChartsheetProperties.html +13 -19
  196. data/rdoc/RubyXL/ChartsheetProtection.html +13 -19
  197. data/rdoc/RubyXL/ChartsheetView.html +13 -19
  198. data/rdoc/RubyXL/ChartsheetViews.html +13 -19
  199. data/rdoc/RubyXL/Color.html +28 -39
  200. data/rdoc/RubyXL/ColorConvenienceClasses.html +91 -0
  201. data/rdoc/RubyXL/ColorConvenienceClasses/HlsColor.html +242 -0
  202. data/rdoc/RubyXL/ColorConvenienceClasses/RgbColor.html +279 -0
  203. data/rdoc/RubyXL/ColorConvenienceMethods.html +137 -0
  204. data/rdoc/RubyXL/ColorFilter.html +13 -19
  205. data/rdoc/RubyXL/ColorScale.html +13 -19
  206. data/rdoc/RubyXL/ColorSet.html +13 -19
  207. data/rdoc/RubyXL/Colors.html +13 -19
  208. data/rdoc/RubyXL/ColumnRange.html +20 -71
  209. data/rdoc/RubyXL/ColumnRanges.html +20 -79
  210. data/rdoc/RubyXL/Comment.html +13 -19
  211. data/rdoc/RubyXL/CommentList.html +13 -19
  212. data/rdoc/RubyXL/CommentsFile.html +17 -50
  213. data/rdoc/RubyXL/ConditionalFormatValue.html +13 -19
  214. data/rdoc/RubyXL/ConditionalFormatting.html +13 -19
  215. data/rdoc/RubyXL/ConditionalFormattingRule.html +13 -19
  216. data/rdoc/RubyXL/Connection.html +99 -0
  217. data/rdoc/RubyXL/ConnectionTable.html +99 -0
  218. data/rdoc/RubyXL/ConnectionTables.html +99 -0
  219. data/rdoc/RubyXL/ConnectionTextField.html +99 -0
  220. data/rdoc/RubyXL/ConnectionTextFields.html +99 -0
  221. data/rdoc/RubyXL/Connections.html +147 -0
  222. data/rdoc/RubyXL/ContentTypeDefault.html +12 -17
  223. data/rdoc/RubyXL/ContentTypeOverride.html +12 -17
  224. data/rdoc/RubyXL/ContentTypes.html +23 -63
  225. data/rdoc/RubyXL/ControlPropertiesFile.html +14 -22
  226. data/rdoc/RubyXL/CorePropertiesFile.html +26 -162
  227. data/rdoc/RubyXL/CustomColor.html +13 -19
  228. data/rdoc/RubyXL/CustomColorList.html +13 -19
  229. data/rdoc/RubyXL/CustomFilter.html +13 -19
  230. data/rdoc/RubyXL/CustomFilters.html +13 -19
  231. data/rdoc/RubyXL/CustomGeometry.html +13 -19
  232. data/rdoc/RubyXL/CustomProperties.html +13 -19
  233. data/rdoc/RubyXL/CustomPropertiesFile.html +12 -25
  234. data/rdoc/RubyXL/CustomProperty.html +13 -19
  235. data/rdoc/RubyXL/CustomPropertyFile.html +108 -0
  236. data/rdoc/RubyXL/CustomSheetView.html +13 -19
  237. data/rdoc/RubyXL/CustomSheetViews.html +13 -19
  238. data/rdoc/RubyXL/CustomWorkbookView.html +13 -19
  239. data/rdoc/RubyXL/CustomWorkbookViews.html +13 -19
  240. data/rdoc/RubyXL/CustomXMLFile.html +12 -22
  241. data/rdoc/RubyXL/DXF.html +13 -19
  242. data/rdoc/RubyXL/DXFs.html +13 -19
  243. data/rdoc/RubyXL/DataBar.html +13 -19
  244. data/rdoc/RubyXL/DataConsolidate.html +13 -19
  245. data/rdoc/RubyXL/DataConsolidationReference.html +13 -19
  246. data/rdoc/RubyXL/DataConsolidationReferences.html +13 -19
  247. data/rdoc/RubyXL/DataType.html +11 -39
  248. data/rdoc/RubyXL/DataValidation.html +13 -19
  249. data/rdoc/RubyXL/DataValidations.html +13 -19
  250. data/rdoc/RubyXL/DateGroupItem.html +13 -19
  251. data/rdoc/RubyXL/DefinedName.html +13 -19
  252. data/rdoc/RubyXL/DefinedNameExt.html +13 -19
  253. data/rdoc/RubyXL/DefinedNames.html +13 -19
  254. data/rdoc/RubyXL/DefinedNamesExt.html +13 -19
  255. data/rdoc/RubyXL/DocumentPropertiesFile.html +20 -66
  256. data/rdoc/RubyXL/DrawingFile.html +19 -49
  257. data/rdoc/RubyXL/DynamicFilter.html +13 -19
  258. data/rdoc/RubyXL/EmbeddedControl.html +13 -19
  259. data/rdoc/RubyXL/EmbeddedControls.html +13 -19
  260. data/rdoc/RubyXL/Extension.html +13 -19
  261. data/rdoc/RubyXL/ExtensionStorageArea.html +13 -19
  262. data/rdoc/RubyXL/Extents.html +13 -19
  263. data/rdoc/RubyXL/ExternalBook.html +13 -19
  264. data/rdoc/RubyXL/ExternalLinksFile.html +19 -49
  265. data/rdoc/RubyXL/ExternalReference.html +13 -19
  266. data/rdoc/RubyXL/ExternalReferences.html +13 -19
  267. data/rdoc/RubyXL/ExtraColorSchemeList.html +13 -19
  268. data/rdoc/RubyXL/FieldItem.html +13 -19
  269. data/rdoc/RubyXL/FileRecoveryProperties.html +13 -19
  270. data/rdoc/RubyXL/FileSharing.html +13 -19
  271. data/rdoc/RubyXL/FileVersion.html +13 -19
  272. data/rdoc/RubyXL/Fill.html +18 -38
  273. data/rdoc/RubyXL/Fills.html +18 -38
  274. data/rdoc/RubyXL/FilterContainer.html +13 -19
  275. data/rdoc/RubyXL/FloatNode.html +12 -17
  276. data/rdoc/RubyXL/FloatValue.html +12 -17
  277. data/rdoc/RubyXL/Font.html +20 -544
  278. data/rdoc/RubyXL/FontConvenienceMethods.html +414 -0
  279. data/rdoc/RubyXL/FontScheme.html +13 -19
  280. data/rdoc/RubyXL/Fonts.html +19 -39
  281. data/rdoc/RubyXL/Formula.html +13 -19
  282. data/rdoc/RubyXL/FunctionGroup.html +13 -19
  283. data/rdoc/RubyXL/FunctionGroups.html +13 -19
  284. data/rdoc/RubyXL/GenericStorageObject.html +19 -81
  285. data/rdoc/RubyXL/GradientFill.html +13 -19
  286. data/rdoc/RubyXL/HeaderFooterSettings.html +13 -19
  287. data/rdoc/RubyXL/Hyperlink.html +13 -19
  288. data/rdoc/RubyXL/HyperlinkRelFile.html +12 -22
  289. data/rdoc/RubyXL/Hyperlinks.html +13 -19
  290. data/rdoc/RubyXL/IconFilter.html +13 -19
  291. data/rdoc/RubyXL/IconSet.html +13 -19
  292. data/rdoc/RubyXL/IgnoredError.html +13 -19
  293. data/rdoc/RubyXL/IgnoredErrors.html +13 -19
  294. data/rdoc/RubyXL/IndexedColors.html +13 -19
  295. data/rdoc/RubyXL/InputCells.html +13 -19
  296. data/rdoc/RubyXL/IntegerNode.html +12 -17
  297. data/rdoc/RubyXL/IntegerValue.html +12 -17
  298. data/rdoc/RubyXL/LegacyCell.html +14 -66
  299. data/rdoc/RubyXL/LegacyWorksheet.html +40 -100
  300. data/rdoc/RubyXL/MRUColors.html +13 -19
  301. data/rdoc/RubyXL/MacrosFile.html +12 -25
  302. data/rdoc/RubyXL/MergedCell.html +13 -19
  303. data/rdoc/RubyXL/MergedCells.html +13 -19
  304. data/rdoc/RubyXL/NumFmt.html +13 -19
  305. data/rdoc/RubyXL/NumberFormat.html +18 -38
  306. data/rdoc/RubyXL/NumberFormats.html +18 -44
  307. data/rdoc/RubyXL/OLEObject.html +13 -19
  308. data/rdoc/RubyXL/OLEObjectFile.html +12 -25
  309. data/rdoc/RubyXL/OLEObjects.html +13 -19
  310. data/rdoc/RubyXL/OLESize.html +13 -19
  311. data/rdoc/RubyXL/OOXMLContainerObject.html +36 -132
  312. data/rdoc/RubyXL/OOXMLIgnored.html +163 -0
  313. data/rdoc/RubyXL/OOXMLObject.html +15 -25
  314. data/rdoc/RubyXL/OOXMLObjectClassMethods.html +88 -179
  315. data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +47 -183
  316. data/rdoc/RubyXL/OOXMLRelationshipsFile.html +42 -194
  317. data/rdoc/RubyXL/OOXMLTopLevelObject.html +37 -133
  318. data/rdoc/RubyXL/OdbcOleDbProperties.html +99 -0
  319. data/rdoc/RubyXL/Offset.html +13 -19
  320. data/rdoc/RubyXL/OlapProperties.html +99 -0
  321. data/rdoc/RubyXL/OleItem.html +99 -0
  322. data/rdoc/RubyXL/OleItems.html +99 -0
  323. data/rdoc/RubyXL/OleLink.html +99 -0
  324. data/rdoc/RubyXL/OutlineProperties.html +13 -19
  325. data/rdoc/RubyXL/PageMargins.html +13 -19
  326. data/rdoc/RubyXL/PageSetup.html +13 -19
  327. data/rdoc/RubyXL/PageSetupProperties.html +13 -19
  328. data/rdoc/RubyXL/Pane.html +13 -19
  329. data/rdoc/RubyXL/Parser.html +20 -53
  330. data/rdoc/RubyXL/PatternFill.html +13 -19
  331. data/rdoc/RubyXL/PhoneticProperties.html +13 -19
  332. data/rdoc/RubyXL/PhoneticRun.html +13 -19
  333. data/rdoc/RubyXL/PivotArea.html +13 -19
  334. data/rdoc/RubyXL/PivotCache.html +13 -19
  335. data/rdoc/RubyXL/PivotCacheDefinitionFile.html +14 -30
  336. data/rdoc/RubyXL/PivotCacheRecordsFile.html +12 -25
  337. data/rdoc/RubyXL/PivotCaches.html +13 -19
  338. data/rdoc/RubyXL/PivotReference.html +13 -19
  339. data/rdoc/RubyXL/PivotReferences.html +13 -19
  340. data/rdoc/RubyXL/PivotTableFile.html +14 -30
  341. data/rdoc/RubyXL/PivotTableSelection.html +13 -19
  342. data/rdoc/RubyXL/PresetGeometry.html +13 -19
  343. data/rdoc/RubyXL/PrintOptions.html +13 -19
  344. data/rdoc/RubyXL/PrinterSettingsFile.html +12 -25
  345. data/rdoc/RubyXL/ProtectedRange.html +13 -19
  346. data/rdoc/RubyXL/ProtectedRanges.html +13 -19
  347. data/rdoc/RubyXL/Protection.html +13 -19
  348. data/rdoc/RubyXL/QueryParameter.html +99 -0
  349. data/rdoc/RubyXL/QueryParameters.html +99 -0
  350. data/rdoc/RubyXL/QueryTable.html +155 -0
  351. data/rdoc/RubyXL/QueryTableDeletedField.html +99 -0
  352. data/rdoc/RubyXL/QueryTableDeletedFields.html +99 -0
  353. data/rdoc/RubyXL/QueryTableField.html +99 -0
  354. data/rdoc/RubyXL/QueryTableFields.html +99 -0
  355. data/rdoc/RubyXL/QueryTableRefresh.html +99 -0
  356. data/rdoc/RubyXL/RID.html +12 -17
  357. data/rdoc/RubyXL/RawOOXML.html +19 -58
  358. data/rdoc/RubyXL/Reference.html +31 -215
  359. data/rdoc/RubyXL/Relationship.html +12 -17
  360. data/rdoc/RubyXL/RelationshipSupport.html +32 -126
  361. data/rdoc/RubyXL/RelationshipSupport/ClassMehods.html +15 -33
  362. data/rdoc/RubyXL/RevisionPointer.html +99 -0
  363. data/rdoc/RubyXL/RichText.html +18 -38
  364. data/rdoc/RubyXL/RichTextRun.html +17 -37
  365. data/rdoc/RubyXL/Row.html +53 -152
  366. data/rdoc/RubyXL/RowExt.html +13 -19
  367. data/rdoc/RubyXL/RunProperties.html +13 -19
  368. data/rdoc/RubyXL/Scenario.html +13 -19
  369. data/rdoc/RubyXL/Scenarios.html +13 -19
  370. data/rdoc/RubyXL/Selection.html +20 -40
  371. data/rdoc/RubyXL/ShapeGuide.html +13 -19
  372. data/rdoc/RubyXL/ShapeTextRectangle.html +13 -19
  373. data/rdoc/RubyXL/SharedStringsTable.html +31 -140
  374. data/rdoc/RubyXL/Sheet.html +13 -19
  375. data/rdoc/RubyXL/SheetCalculationProperties.html +13 -19
  376. data/rdoc/RubyXL/SheetData.html +20 -53
  377. data/rdoc/RubyXL/SheetDataExt.html +13 -19
  378. data/rdoc/RubyXL/SheetDataSet.html +13 -19
  379. data/rdoc/RubyXL/SheetName.html +13 -19
  380. data/rdoc/RubyXL/SheetNames.html +13 -19
  381. data/rdoc/RubyXL/Sheets.html +13 -19
  382. data/rdoc/RubyXL/SlicerCacheFile.html +12 -25
  383. data/rdoc/RubyXL/SlicerFile.html +12 -25
  384. data/rdoc/RubyXL/SmartTagProperties.html +13 -19
  385. data/rdoc/RubyXL/SmartTagType.html +13 -19
  386. data/rdoc/RubyXL/SmartTagTypes.html +13 -19
  387. data/rdoc/RubyXL/SmartTags.html +13 -19
  388. data/rdoc/RubyXL/SortCondition.html +13 -19
  389. data/rdoc/RubyXL/SortState.html +13 -19
  390. data/rdoc/RubyXL/Sqref.html +18 -51
  391. data/rdoc/RubyXL/Stop.html +13 -19
  392. data/rdoc/RubyXL/StringNode.html +12 -17
  393. data/rdoc/RubyXL/StringNodeW3C.html +19 -52
  394. data/rdoc/RubyXL/StringValue.html +12 -17
  395. data/rdoc/RubyXL/Stylesheet.html +30 -112
  396. data/rdoc/RubyXL/TableFile.html +12 -25
  397. data/rdoc/RubyXL/TableParts.html +12 -17
  398. data/rdoc/RubyXL/TableStyle.html +13 -19
  399. data/rdoc/RubyXL/TableStyles.html +13 -19
  400. data/rdoc/RubyXL/Text.html +19 -63
  401. data/rdoc/RubyXL/TextImportSettings.html +99 -0
  402. data/rdoc/RubyXL/Theme.html +58 -63
  403. data/rdoc/RubyXL/ThemeElements.html +13 -19
  404. data/rdoc/RubyXL/ThumbnailFile.html +12 -25
  405. data/rdoc/RubyXL/Top10.html +13 -19
  406. data/rdoc/RubyXL/VMLDrawingFile.html +15 -32
  407. data/rdoc/RubyXL/Variant.html +13 -19
  408. data/rdoc/RubyXL/Vector.html +17 -37
  409. data/rdoc/RubyXL/VectorValue.html +12 -17
  410. data/rdoc/RubyXL/VisualProperties.html +13 -19
  411. data/rdoc/RubyXL/WebPublishObject.html +13 -19
  412. data/rdoc/RubyXL/WebPublishObjects.html +13 -19
  413. data/rdoc/RubyXL/WebPublishingItem.html +13 -19
  414. data/rdoc/RubyXL/WebPublishingItems.html +13 -19
  415. data/rdoc/RubyXL/WebPublishingProperties.html +13 -19
  416. data/rdoc/RubyXL/WebQueryProperties.html +99 -0
  417. data/rdoc/RubyXL/Workbook.html +483 -226
  418. data/rdoc/RubyXL/WorkbookConvenienceMethods.html +149 -857
  419. data/rdoc/RubyXL/WorkbookProperties.html +13 -19
  420. data/rdoc/RubyXL/WorkbookProtection.html +13 -19
  421. data/rdoc/RubyXL/WorkbookRoot.html +23 -109
  422. data/rdoc/RubyXL/WorkbookView.html +13 -19
  423. data/rdoc/RubyXL/WorkbookViews.html +13 -19
  424. data/rdoc/RubyXL/Worksheet.html +70 -122
  425. data/rdoc/RubyXL/WorksheetConvenienceMethods.html +398 -1049
  426. data/rdoc/RubyXL/WorksheetDimensions.html +13 -19
  427. data/rdoc/RubyXL/WorksheetFormatProperties.html +12 -17
  428. data/rdoc/RubyXL/WorksheetProperties.html +13 -19
  429. data/rdoc/RubyXL/WorksheetProtection.html +13 -19
  430. data/rdoc/RubyXL/WorksheetView.html +13 -19
  431. data/rdoc/RubyXL/WorksheetViews.html +13 -19
  432. data/rdoc/RubyXL/XF.html +13 -19
  433. data/rdoc/created.rid +45 -38
  434. data/rdoc/css/fonts.css +6 -6
  435. data/rdoc/css/rdoc.css +35 -6
  436. data/rdoc/index.html +43 -363
  437. data/rdoc/js/darkfish.js +23 -100
  438. data/rdoc/js/navigation.js +4 -41
  439. data/rdoc/js/navigation.js.gz +0 -0
  440. data/rdoc/js/search.js +32 -31
  441. data/rdoc/js/search_index.js +1 -1
  442. data/rdoc/js/search_index.js.gz +0 -0
  443. data/rdoc/js/searcher.js +7 -6
  444. data/rdoc/js/searcher.js.gz +0 -0
  445. data/rdoc/table_of_contents.html +368 -75
  446. data/rubyXL.gemspec +60 -26
  447. data/spec/lib/cell_spec.rb +147 -2
  448. data/spec/lib/color_spec.rb +1 -0
  449. data/spec/lib/parser_spec.rb +1 -1
  450. data/spec/lib/rgb_color_spec.rb +16 -0
  451. data/spec/lib/text_spec.rb +8 -0
  452. data/spec/lib/workbook_spec.rb +12 -1
  453. data/spec/lib/worksheet_spec.rb +353 -37
  454. data/test/test_parse_write.rb +15 -15
  455. metadata +63 -9
  456. data/rdoc/js/jquery.js +0 -4
@@ -4,20 +4,23 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>class RubyXL::OOXMLObject - rubyXL 3.3.21</title>
7
+ <title>class RubyXL::OOXMLObject - rubyXL 3.4.17</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
11
+ var index_rel_prefix = "../";
11
12
  </script>
12
13
 
13
- <script src="../js/jquery.js"></script>
14
- <script src="../js/darkfish.js"></script>
14
+ <script src="../js/navigation.js" defer></script>
15
+ <script src="../js/search.js" defer></script>
16
+ <script src="../js/search_index.js" defer></script>
17
+ <script src="../js/searcher.js" defer></script>
18
+ <script src="../js/darkfish.js" defer></script>
15
19
 
16
20
  <link href="../css/fonts.css" rel="stylesheet">
17
21
  <link href="../css/rdoc.css" rel="stylesheet">
18
22
 
19
23
 
20
-
21
24
  <body id="top" role="document" class="class">
22
25
  <nav role="navigation">
23
26
  <div id="project-navigation">
@@ -54,23 +57,19 @@
54
57
 
55
58
  <div id="class-metadata">
56
59
 
57
- <div id="parent-class-section" class="nav-section">
60
+
61
+ <div id="parent-class-section" class="nav-section">
58
62
  <h3>Parent</h3>
59
63
 
60
-
61
64
  <p class="link">Object
62
-
63
65
  </div>
64
66
 
65
- <div id="includes-section" class="nav-section">
67
+
68
+ <div id="includes-section" class="nav-section">
66
69
  <h3>Included Modules</h3>
67
70
 
68
71
  <ul class="link-list">
69
-
70
-
71
72
  <li><a class="include" href="OOXMLObjectInstanceMethods.html">RubyXL::OOXMLObjectInstanceMethods</a>
72
-
73
-
74
73
  </ul>
75
74
  </div>
76
75
 
@@ -86,32 +85,23 @@
86
85
 
87
86
  <section class="description">
88
87
 
89
- <p>Parent class for defining OOXML based objects (not unlike Rails&#39;
90
- <code>ActiveRecord</code>!) Most importantly, provides functionality of
91
- parsing such objects from XML, and marshalling them to XML.</p>
88
+ <p>Parent class for defining OOXML based objects (not unlike Rails&#39; <code>ActiveRecord</code>!) Most importantly, provides functionality of parsing such objects from XML, and marshalling them to XML.</p>
92
89
 
93
90
  </section>
94
91
 
95
-
96
-
97
-
98
92
  <section id="5Buntitled-5D" class="documentation-section">
99
-
100
93
 
101
-
102
94
 
103
-
104
95
 
105
-
106
96
 
107
-
97
+
108
98
  </section>
109
99
  </main>
110
100
 
111
101
 
112
102
  <footer id="validator-badges" role="contentinfo">
113
- <p><a href="http://validator.w3.org/check/referer">Validate</a>
114
- <p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.2.
103
+ <p><a href="https://validator.w3.org/check/referer">Validate</a>
104
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.0.
115
105
  <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
116
106
  </footer>
117
107
 
@@ -4,20 +4,23 @@
4
4
  <head>
5
5
  <meta charset="UTF-8">
6
6
 
7
- <title>module RubyXL::OOXMLObjectClassMethods - rubyXL 3.3.21</title>
7
+ <title>module RubyXL::OOXMLObjectClassMethods - rubyXL 3.4.17</title>
8
8
 
9
9
  <script type="text/javascript">
10
10
  var rdoc_rel_prefix = "../";
11
+ var index_rel_prefix = "../";
11
12
  </script>
12
13
 
13
- <script src="../js/jquery.js"></script>
14
- <script src="../js/darkfish.js"></script>
14
+ <script src="../js/navigation.js" defer></script>
15
+ <script src="../js/search.js" defer></script>
16
+ <script src="../js/search_index.js" defer></script>
17
+ <script src="../js/searcher.js" defer></script>
18
+ <script src="../js/darkfish.js" defer></script>
15
19
 
16
20
  <link href="../css/fonts.css" rel="stylesheet">
17
21
  <link href="../css/rdoc.css" rel="stylesheet">
18
22
 
19
23
 
20
-
21
24
  <body id="top" role="document" class="module">
22
25
  <nav role="navigation">
23
26
  <div id="project-navigation">
@@ -57,22 +60,18 @@
57
60
 
58
61
 
59
62
 
60
- <!-- Method Quickref -->
63
+
64
+ <!-- Method Quickref -->
61
65
  <div id="method-list-section" class="nav-section">
62
66
  <h3>Methods</h3>
63
67
 
64
68
  <ul class="link-list" role="directory">
65
-
66
69
  <li ><a href="#method-i-define_attribute">#define_attribute</a>
67
-
68
70
  <li ><a href="#method-i-define_child_node">#define_child_node</a>
69
-
70
71
  <li ><a href="#method-i-define_element_name">#define_element_name</a>
71
-
72
+ <li ><a href="#method-i-define_relationship">#define_relationship</a>
72
73
  <li ><a href="#method-i-obtain_class_variable">#obtain_class_variable</a>
73
-
74
74
  <li ><a href="#method-i-parse">#parse</a>
75
-
76
75
  </ul>
77
76
  </div>
78
77
 
@@ -88,52 +87,35 @@
88
87
 
89
88
  </section>
90
89
 
91
-
92
-
93
-
94
90
  <section id="5Buntitled-5D" class="documentation-section">
95
-
96
91
 
97
-
98
92
 
99
-
100
93
 
101
-
102
94
 
103
-
95
+
104
96
  <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
105
97
  <header>
106
98
  <h3>Public Instance Methods</h3>
107
99
  </header>
108
100
 
109
-
110
101
  <div id="method-i-define_attribute" class="method-detail ">
111
-
112
102
  <div class="method-heading">
113
103
  <span class="method-name">define_attribute</span><span
114
104
  class="method-args">(attr_name, attr_type, extra_params = {})</span>
115
-
116
105
  <span class="method-click-advice">click to toggle source</span>
117
-
118
106
  </div>
119
-
120
107
 
121
108
  <div class="method-description">
122
-
123
109
  <p>Defines an attribute of OOXML object.</p>
124
110
 
125
111
  <h3 id="method-i-define_attribute-label-Parameters">Parameters<span><a href="#method-i-define_attribute-label-Parameters">&para;</a> <a href="#top">&uarr;</a></span></h3>
126
112
  <ul><li>
127
- <p><code>attribute_name</code> - Name of the element attribute as seen in the
128
- source XML. Can be either <code>&quot;String&quot;</code> or
129
- <code>:Symbol</code></p>
113
+ <p><code>attribute_name</code> - Name of the element attribute as seen in the source XML. Can be either <code>&quot;String&quot;</code> or <code>:Symbol</code></p>
130
114
  <ul><li>
131
- <p>Special attibute name <code>&#39;_&#39;</code> (underscore) denotes the
132
- value of the element rather than attribute.</p>
115
+ <p>Special attibute name <code>&#39;_&#39;</code> (underscore) denotes the value of the element rather than attribute.</p>
133
116
  </li></ul>
134
117
  </li><li>
135
- <p><code>attribute_type</code> - Specifies the conversion type for the
136
- attribute when parsing. Available options are:</p>
118
+ <p><code>attribute_type</code> - Specifies the conversion type for the attribute when parsing. Available options are:</p>
137
119
  <ul><li>
138
120
  <p><code>:int</code> - <code>Integer</code></p>
139
121
  </li><li>
@@ -143,129 +125,91 @@ attribute when parsing. Available options are:</p>
143
125
  </li><li>
144
126
  <p><code>:string</code> - <code>String</code> (no conversion)</p>
145
127
  </li><li>
146
- <p><code>:sqref</code> - <a href="Sqref.html">RubyXL::Sqref</a></p>
128
+ <p><code>:sqref</code> - <a href="Sqref.html"><code>RubyXL::Sqref</code></a></p>
147
129
  </li><li>
148
- <p><code>:ref</code> - <a href="Reference.html">RubyXL::Reference</a></p>
130
+ <p><code>:ref</code> - <a href="Reference.html"><code>RubyXL::Reference</code></a></p>
149
131
  </li><li>
150
- <p><code>:bool</code> - <code>Boolean</code> (“1” and “true” convert to
151
- <code>true</code>, others to <code>false</code>)</p>
132
+ <p><code>:bool</code> - <code>Boolean</code> (“1” and “true” convert to <code>true</code>, others to <code>false</code>)</p>
152
133
  </li><li>
153
- <p>one of <code>simple_types</code> - <code>String</code>, plus the list of
154
- acceptable values is saved for future validation (not used yet).</p>
134
+ <p>one of <code>simple_types</code> - <code>String</code>, plus the list of acceptable values is saved for future validation (not used yet).</p>
155
135
  </li></ul>
156
136
  </li><li>
157
137
  <p><code>extra_parameters</code> - Hash of optional parameters as follows:</p>
158
138
  <ul><li>
159
- <p><code>:accessor</code> - Name of the accessor for this attribute to be
160
- defined on the object. If not provided, defaults to classidied
161
- <code>attribute_name</code>.</p>
139
+ <p><code>:accessor</code> - Name of the accessor for this attribute to be defined on the object. If not provided, defaults to classidied <code>attribute_name</code>.</p>
162
140
  </li><li>
163
- <p><code>:default</code> - Value this attribute defaults to if not explicitly
164
- provided.</p>
141
+ <p><code>:default</code> - Value this attribute defaults to if not explicitly provided.</p>
165
142
  </li><li>
166
- <p><code>:required</code> - Whether this attribute is required when writing
167
- XML. If the value of the attrinute is not explicitly provided,
168
- <code>:default</code> is written instead.</p>
143
+ <p><code>:required</code> - Whether this attribute is required when writing XML. If the value of the attrinute is not explicitly provided, <code>:default</code> is written instead.</p>
169
144
  </li><li>
170
- <p><code>:computed</code> - Do not store this attribute on <code>parse</code>,
171
- but do call the object-provided read accessor on <code>write_xml</code>.</p>
145
+ <p><code>:computed</code> - Do not store this attribute on <code>parse</code>, but do call the object-provided read accessor on <code>write_xml</code>.</p>
172
146
  </li></ul>
173
147
  </li></ul>
174
148
 
175
149
  <h4 id="method-i-define_attribute-label-Examples">Examples<span><a href="#method-i-define_attribute-label-Examples">&para;</a> <a href="#top">&uarr;</a></span></h4>
176
150
 
177
- <pre class="ruby"><span class="ruby-identifier">define_attribute</span>(:<span class="ruby-identifier">outline</span>, :<span class="ruby-identifier">bool</span>, :<span class="ruby-identifier">default</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span>)
151
+ <pre class="ruby"><span class="ruby-identifier">define_attribute</span>(<span class="ruby-value">:outline</span>, <span class="ruby-value">:bool</span>, <span class="ruby-value">:default</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-keyword">true</span>)
178
152
  </pre>
179
153
 
180
- <p>A <code>Boolean</code> attribute &#39;outline&#39; with default value
181
- <code>true</code> will be accessible by calling <code>obj.outline</code></p>
154
+ <p>A <code>Boolean</code> attribute &#39;outline&#39; with default value <code>true</code> will be accessible by calling <code>obj.outline</code></p>
182
155
 
183
- <pre class="ruby"><span class="ruby-identifier">define_attribute</span>(:<span class="ruby-identifier">uniqueCount</span>, :<span class="ruby-identifier">int</span>)
156
+ <pre class="ruby"><span class="ruby-identifier">define_attribute</span>(<span class="ruby-value">:uniqueCount</span>, <span class="ruby-value">:int</span>)
184
157
  </pre>
185
158
 
186
- <p>An <code>Integer</code> attribute &#39;uniqueCount&#39; accessible as
187
- <code>obj.unique_count</code></p>
159
+ <p>An <code>Integer</code> attribute &#39;uniqueCount&#39; accessible as <code>obj.unique_count</code></p>
188
160
 
189
- <pre class="ruby"><span class="ruby-identifier">define_attribute</span>(:<span class="ruby-identifier">_</span>, :<span class="ruby-identifier">string</span>, :<span class="ruby-identifier">accessor</span> =<span class="ruby-operator">&gt;</span> :<span class="ruby-identifier">expression</span>)
161
+ <pre class="ruby"><span class="ruby-identifier">define_attribute</span>(<span class="ruby-value">:_</span>, <span class="ruby-value">:string</span>, <span class="ruby-value">:accessor</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-value">:expression</span>)
190
162
  </pre>
191
163
 
192
- <p>The value of the element will be accessible as a <code>String</code> by
193
- calling <code>obj.expression</code></p>
164
+ <p>The value of the element will be accessible as a <code>String</code> by calling <code>obj.expression</code></p>
194
165
 
195
- <pre class="ruby"><span class="ruby-identifier">define_attribute</span>(:<span class="ruby-identifier">errorStyle</span>, <span class="ruby-node">%w{ stop warning information }</span>, :<span class="ruby-identifier">default</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-string">&#39;stop&#39;</span>,)
166
+ <pre class="ruby"><span class="ruby-identifier">define_attribute</span>(<span class="ruby-value">:errorStyle</span>, <span class="ruby-node">%w{ stop warning information }</span>, <span class="ruby-value">:default</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-string">&#39;stop&#39;</span>,)
196
167
  </pre>
197
168
 
198
- <p>A <code>String</code> attribute named &#39;errorStyle&#39; will be
199
- accessible as <code>obj.error_style</code>, valid values are
200
- <code>&quot;stop&quot;</code>, <code>&quot;warning&quot;</code>,
201
- <code>&quot;information&quot;</code></p>
202
-
203
-
169
+ <p>A <code>String</code> attribute named &#39;errorStyle&#39; will be accessible as <code>obj.error_style</code>, valid values are <code>&quot;stop&quot;</code>, <code>&quot;warning&quot;</code>, <code>&quot;information&quot;</code></p>
204
170
 
205
-
206
171
  <div class="method-source-code" id="define_attribute-source">
207
172
  <pre><span class="ruby-comment"># File lib/rubyXL/objects/ooxml_object.rb, line 48</span>
208
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">define_attribute</span>(<span class="ruby-identifier">attr_name</span>, <span class="ruby-identifier">attr_type</span>, <span class="ruby-identifier">extra_params</span> = {})
173
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">define_attribute</span>(<span class="ruby-identifier">attr_name</span>, <span class="ruby-identifier">attr_type</span>, <span class="ruby-identifier">extra_params</span> = {})
209
174
  <span class="ruby-identifier">attrs</span> = <span class="ruby-identifier">obtain_class_variable</span>(<span class="ruby-value">:@@ooxml_attributes</span>)
210
- <span class="ruby-identifier">attr_hash</span> = <span class="ruby-identifier">extra_params</span>.<span class="ruby-identifier">merge</span>({ <span class="ruby-value">:attr_type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">attr_type</span> })
175
+ <span class="ruby-identifier">attr_hash</span> = <span class="ruby-identifier">extra_params</span>.<span class="ruby-identifier">merge</span>({ <span class="ruby-value">:attr_type</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">attr_type</span> })
211
176
  <span class="ruby-identifier">attr_hash</span>[<span class="ruby-value">:accessor</span>] <span class="ruby-operator">||=</span> <span class="ruby-identifier">accessorize</span>(<span class="ruby-identifier">attr_name</span>)
212
177
  <span class="ruby-identifier">attrs</span>[<span class="ruby-identifier">attr_name</span>.<span class="ruby-identifier">to_s</span>] = <span class="ruby-identifier">attr_hash</span>
213
178
  <span class="ruby-keyword">self</span>.<span class="ruby-identifier">send</span>(<span class="ruby-value">:attr_accessor</span>, <span class="ruby-identifier">attr_hash</span>[<span class="ruby-value">:accessor</span>]) <span class="ruby-keyword">unless</span> <span class="ruby-identifier">attr_hash</span>[<span class="ruby-value">:computed</span>]
214
179
  <span class="ruby-keyword">end</span></pre>
215
180
  </div>
216
-
217
181
  </div>
218
182
 
219
-
220
183
 
221
-
222
184
  </div>
223
185
 
224
-
225
186
  <div id="method-i-define_child_node" class="method-detail ">
226
-
227
187
  <div class="method-heading">
228
188
  <span class="method-name">define_child_node</span><span
229
189
  class="method-args">(klass, extra_params = {})</span>
230
-
231
190
  <span class="method-click-advice">click to toggle source</span>
232
-
233
191
  </div>
234
-
235
192
 
236
193
  <div class="method-description">
237
-
238
194
  <p>Defines a child node of OOXML object.</p>
239
195
 
240
196
  <h3 id="method-i-define_child_node-label-Parameters">Parameters<span><a href="#method-i-define_child_node-label-Parameters">&para;</a> <a href="#top">&uarr;</a></span></h3>
241
197
  <ul><li>
242
- <p><code>klass</code> - Class (descendant of <a
243
- href="OOXMLObject.html">RubyXL::OOXMLObject</a>) of the child nodes. Child
244
- node objects will be produced by calling <code>parse</code> method of that
245
- class.</p>
198
+ <p><code>klass</code> - Class (descendant of <a href="OOXMLObject.html"><code>RubyXL::OOXMLObject</code></a>) of the child nodes. Child node objects will be produced by calling <code>parse</code> method of that class.</p>
246
199
  </li><li>
247
200
  <p><code>extra_parameters</code> - Hash of optional parameters as follows:</p>
248
201
  <ul><li>
249
- <p><code>:accessor</code> - Name of the accessor for this attribute to be
250
- defined on the object. If not provided, defaults to classidied
251
- <code>attribute_name</code>.</p>
202
+ <p><code>:accessor</code> - Name of the accessor for this attribute to be defined on the object. If not provided, defaults to classidied <code>attribute_name</code>.</p>
252
203
  </li><li>
253
- <p><code>:node_name</code> - Node name for the child node, in case it does not
254
- match the one defined by the <code>klass</code>.</p>
204
+ <p><code>:node_name</code> - Node name for the child node, in case it does not match the one defined by the <code>klass</code>.</p>
255
205
  </li><li>
256
- <p><code>:collection</code> - Whether the child node should be treated as a
257
- single node or a collection of nodes:</p>
206
+ <p><code>:collection</code> - Whether the child node should be treated as a single node or a collection of nodes:</p>
258
207
  <ul><li>
259
- <p><code>false</code> (default) - child node is directly accessible through
260
- the respective accessor;</p>
208
+ <p><code>false</code> (default) - child node is directly accessible through the respective accessor;</p>
261
209
  </li><li>
262
- <p><code>true</code> - a collection of child nodes is accessed as
263
- <code>Array</code> through the respective accessor;</p>
210
+ <p><code>true</code> - a collection of child nodes is accessed as <code>Array</code> through the respective accessor;</p>
264
211
  </li><li>
265
- <p><code>:with_count</code> - same as <code>true</code>, but in addition, the
266
- attribute <code>count</code> is defined on the current object, that will be
267
- automatically set to the number of elements in the collection at the start
268
- of <code>write_xml</code> call.</p>
212
+ <p><code>:with_count</code> - same as <code>true</code>, but in addition, the attribute <code>count</code> is defined on the current object, that will be automatically set to the number of elements in the collection at the start of <code>write_xml</code> call.</p>
269
213
  </li></ul>
270
214
  </li></ul>
271
215
  </li></ul>
@@ -275,43 +219,35 @@ of <code>write_xml</code> call.</p>
275
219
  <pre class="ruby"><span class="ruby-identifier">define_child_node</span>(<span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Alignment</span>)
276
220
  </pre>
277
221
 
278
- <p>Define a singular child node parsed by the RubyXL::BorderEdge.parse() and
279
- accessed by the default <code>obj.alignment</code> accessor</p>
222
+ <p>Define a singular child node parsed by the RubyXL::BorderEdge.parse() and accessed by the default <code>obj.alignment</code> accessor</p>
280
223
 
281
- <pre class="ruby"><span class="ruby-identifier">define_child_node</span>(<span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Hyperlink</span>, :<span class="ruby-identifier">collection</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword">true</span>, :<span class="ruby-identifier">accessor</span> =<span class="ruby-operator">&gt;</span> :<span class="ruby-identifier">hyperlinks</span>)
224
+ <pre class="ruby"><span class="ruby-identifier">define_child_node</span>(<span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Hyperlink</span>, <span class="ruby-value">:collection</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-keyword">true</span>, <span class="ruby-value">:accessor</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-value">:hyperlinks</span>)
282
225
  </pre>
283
226
 
284
- <p>Define an array of nodes accessed by <code>obj.hyperlinks</code> accessor,
285
- each of which will be parsed by the RubyXL::Hyperlink.parse()</p>
227
+ <p>Define an array of nodes accessed by <code>obj.hyperlinks</code> accessor, each of which will be parsed by the RubyXL::Hyperlink.parse()</p>
286
228
 
287
- <pre class="ruby"><span class="ruby-identifier">define_child_node</span>(<span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">BorderEdge</span>, :<span class="ruby-identifier">node_name</span> =<span class="ruby-operator">&gt;</span> :<span class="ruby-identifier">left</span>)
288
- <span class="ruby-identifier">define_child_node</span>(<span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">BorderEdge</span>, :<span class="ruby-identifier">node_name</span> =<span class="ruby-operator">&gt;</span> :<span class="ruby-identifier">right</span>)
229
+ <pre class="ruby"><span class="ruby-identifier">define_child_node</span>(<span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">BorderEdge</span>, <span class="ruby-value">:node_name</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-value">:left</span>)
230
+ <span class="ruby-identifier">define_child_node</span>(<span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">BorderEdge</span>, <span class="ruby-value">:node_name</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-value">:right</span>)
289
231
  </pre>
290
232
 
291
- <p>Use class <a href="BorderEdge.html">RubyXL::BorderEdge</a> when parsing
292
- both the elements <code>&lt;left ...&gt;</code> and <code>&lt;right
293
- ...&gt;</code> elements.</p>
233
+ <p>Use class <a href="BorderEdge.html"><code>RubyXL::BorderEdge</code></a> when parsing both the elements <code>&lt;left ...&gt;</code> and <code>&lt;right ...&gt;</code> elements.</p>
294
234
 
295
- <pre class="ruby"><span class="ruby-identifier">define_child_node</span>(<span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Font</span>, :<span class="ruby-identifier">collection</span> =<span class="ruby-operator">&gt;</span> :<span class="ruby-identifier">with_count</span>, :<span class="ruby-identifier">accessor</span> =<span class="ruby-operator">&gt;</span> :<span class="ruby-identifier">fonts</span>)
235
+ <pre class="ruby"><span class="ruby-identifier">define_child_node</span>(<span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">Font</span>, <span class="ruby-value">:collection</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-value">:with_count</span>, <span class="ruby-value">:accessor</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-value">:fonts</span>)
296
236
  </pre>
297
237
 
298
- <p>Upon writing of the object this was defined on, its <code>count</code>
299
- attribute will be set to the count of nodes in <code>fonts</code> array</p>
300
-
301
-
238
+ <p>Upon writing of the object this was defined on, its <code>count</code> attribute will be set to the count of nodes in <code>fonts</code> array</p>
302
239
 
303
-
304
240
  <div class="method-source-code" id="define_child_node-source">
305
- <pre><span class="ruby-comment"># File lib/rubyXL/objects/ooxml_object.rb, line 76</span>
306
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">define_child_node</span>(<span class="ruby-identifier">klass</span>, <span class="ruby-identifier">extra_params</span> = {})
241
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/ooxml_object.rb, line 81</span>
242
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">define_child_node</span>(<span class="ruby-identifier">klass</span>, <span class="ruby-identifier">extra_params</span> = {})
307
243
  <span class="ruby-identifier">child_nodes</span> = <span class="ruby-identifier">obtain_class_variable</span>(<span class="ruby-value">:@@ooxml_child_nodes</span>)
308
244
  <span class="ruby-identifier">child_node_name</span> = (<span class="ruby-identifier">extra_params</span>[<span class="ruby-value">:node_name</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">class_variable_get</span>(<span class="ruby-value">:@@ooxml_tag_name</span>)).<span class="ruby-identifier">to_s</span>
309
245
  <span class="ruby-identifier">accessor</span> = (<span class="ruby-identifier">extra_params</span>[<span class="ruby-value">:accessor</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">accessorize</span>(<span class="ruby-identifier">child_node_name</span>)).<span class="ruby-identifier">to_sym</span>
310
246
 
311
247
  <span class="ruby-identifier">child_nodes</span>[<span class="ruby-identifier">child_node_name</span>] = {
312
- <span class="ruby-value">:class</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">klass</span>,
313
- <span class="ruby-value">:is_array</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">extra_params</span>[<span class="ruby-value">:collection</span>],
314
- <span class="ruby-value">:accessor</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">accessor</span>
248
+ <span class="ruby-value">:class</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">klass</span>,
249
+ <span class="ruby-value">:is_array</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">extra_params</span>[<span class="ruby-value">:collection</span>],
250
+ <span class="ruby-value">:accessor</span> <span class="ruby-operator">=&gt;</span> <span class="ruby-identifier">accessor</span>
315
251
  }
316
252
 
317
253
  <span class="ruby-identifier">define_count_attribute</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">extra_params</span>[<span class="ruby-value">:collection</span>] <span class="ruby-operator">==</span> <span class="ruby-value">:with_count</span>
@@ -319,33 +255,20 @@ attribute will be set to the count of nodes in <code>fonts</code> array</p>
319
255
  <span class="ruby-keyword">self</span>.<span class="ruby-identifier">send</span>(<span class="ruby-value">:attr_accessor</span>, <span class="ruby-identifier">accessor</span>)
320
256
  <span class="ruby-keyword">end</span></pre>
321
257
  </div>
322
-
323
258
  </div>
324
259
 
325
-
326
260
 
327
-
328
261
  </div>
329
262
 
330
-
331
263
  <div id="method-i-define_element_name" class="method-detail ">
332
-
333
264
  <div class="method-heading">
334
265
  <span class="method-name">define_element_name</span><span
335
266
  class="method-args">(element_name)</span>
336
-
337
267
  <span class="method-click-advice">click to toggle source</span>
338
-
339
268
  </div>
340
-
341
269
 
342
270
  <div class="method-description">
343
-
344
- <p>Defines the name of the element that represents the current OOXML object.
345
- Should only be used once per object. In case of different objects
346
- represented by the same class in different parts of OOXML tree,
347
- <code>:node_name</code> extra parameter can be used to override the default
348
- element name.</p>
271
+ <p>Defines the name of the element that represents the current OOXML object. Should only be used once per object. In case of different objects represented by the same class in different parts of OOXML tree, <code>:node_name</code> extra parameter can be used to override the default element name.</p>
349
272
 
350
273
  <h3 id="method-i-define_element_name-label-Parameters">Parameters<span><a href="#method-i-define_element_name-label-Parameters">&para;</a> <a href="#top">&uarr;</a></span></h3>
351
274
  <ul><li>
@@ -356,89 +279,77 @@ element name.</p>
356
279
 
357
280
  <pre class="ruby"><span class="ruby-identifier">define_element_name</span> <span class="ruby-string">&#39;externalReference&#39;</span>
358
281
  </pre>
359
-
360
-
361
282
 
362
-
363
283
  <div class="method-source-code" id="define_element_name-source">
364
- <pre><span class="ruby-comment"># File lib/rubyXL/objects/ooxml_object.rb, line 104</span>
365
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">define_element_name</span>(<span class="ruby-identifier">element_name</span>)
284
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/ooxml_object.rb, line 109</span>
285
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">define_element_name</span>(<span class="ruby-identifier">element_name</span>)
366
286
  <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class_variable_set</span>(<span class="ruby-value">:@@ooxml_tag_name</span>, <span class="ruby-identifier">element_name</span>)
367
287
  <span class="ruby-keyword">end</span></pre>
368
288
  </div>
369
-
370
289
  </div>
371
290
 
372
-
373
291
 
374
-
375
292
  </div>
376
293
 
377
-
294
+ <div id="method-i-define_relationship" class="method-detail ">
295
+ <div class="method-heading">
296
+ <span class="method-name">define_relationship</span><span
297
+ class="method-args">(extra_params = {})</span>
298
+ <span class="method-click-advice">click to toggle source</span>
299
+ </div>
300
+
301
+ <div class="method-description">
302
+ <p>Defines a `r:id` attribute</p>
303
+
304
+ <div class="method-source-code" id="define_relationship-source">
305
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/ooxml_object.rb, line 57</span>
306
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">define_relationship</span>(<span class="ruby-identifier">extra_params</span> = {})
307
+ <span class="ruby-identifier">define_attribute</span>(<span class="ruby-value">:&#39;r:id&#39;</span>, <span class="ruby-value">:string</span>, <span class="ruby-identifier">extra_params</span>)
308
+ <span class="ruby-keyword">end</span></pre>
309
+ </div>
310
+ </div>
311
+
312
+
313
+ </div>
314
+
378
315
  <div id="method-i-obtain_class_variable" class="method-detail ">
379
-
380
316
  <div class="method-heading">
381
317
  <span class="method-name">obtain_class_variable</span><span
382
318
  class="method-args">(var_name, default = {})</span>
383
-
384
319
  <span class="method-click-advice">click to toggle source</span>
385
-
386
320
  </div>
387
-
388
321
 
389
322
  <div class="method-description">
390
-
391
- <p>Get the value of a [sub]class variable if it exists, or create the
392
- respective variable with the passed-in <code>default</code> (or +{}+, if
393
- not specified)</p>
394
-
395
- <p>Throughout this class, we are setting class variables through explicit
396
- method calls rather than by directly addressing the name of the variable
397
- because of context issues: addressing variable by name creates it in the
398
- context of defining class, while calling the setter/getter method addresses
399
- it in the context of descendant class, which is what we need.</p>
400
-
401
-
323
+ <p>Get the value of a [sub]class variable if it exists, or create the respective variable with the passed-in <code>default</code> (or +{}+, if not specified)</p>
324
+
325
+ <p>Throughout this class, we are setting class variables through explicit method calls rather than by directly addressing the name of the variable because of context issues: addressing variable by name creates it in the context of defining class, while calling the setter/getter method addresses it in the context of descendant class, which is what we need.</p>
402
326
 
403
-
404
327
  <div class="method-source-code" id="obtain_class_variable-source">
405
328
  <pre><span class="ruby-comment"># File lib/rubyXL/objects/ooxml_object.rb, line 15</span>
406
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">obtain_class_variable</span>(<span class="ruby-identifier">var_name</span>, <span class="ruby-identifier">default</span> = {})
329
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">obtain_class_variable</span>(<span class="ruby-identifier">var_name</span>, <span class="ruby-identifier">default</span> = {})
407
330
  <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class_variable_get</span>(<span class="ruby-identifier">var_name</span>)
408
331
  <span class="ruby-keyword">rescue</span> <span class="ruby-constant">NameError</span>
409
332
  <span class="ruby-keyword">self</span>.<span class="ruby-identifier">class_variable_set</span>(<span class="ruby-identifier">var_name</span>, <span class="ruby-identifier">default</span>)
410
333
  <span class="ruby-keyword">end</span></pre>
411
334
  </div>
412
-
413
335
  </div>
414
336
 
415
-
416
337
 
417
-
418
338
  </div>
419
339
 
420
-
421
340
  <div id="method-i-parse" class="method-detail ">
422
-
423
341
  <div class="method-heading">
424
342
  <span class="method-name">parse</span><span
425
343
  class="method-args">(node, known_namespaces = nil)</span>
426
-
427
344
  <span class="method-click-advice">click to toggle source</span>
428
-
429
345
  </div>
430
-
431
346
 
432
347
  <div class="method-description">
433
348
 
434
-
435
-
436
-
437
349
 
438
-
439
350
  <div class="method-source-code" id="parse-source">
440
- <pre><span class="ruby-comment"># File lib/rubyXL/objects/ooxml_object.rb, line 108</span>
441
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">parse</span>(<span class="ruby-identifier">node</span>, <span class="ruby-identifier">known_namespaces</span> = <span class="ruby-keyword">nil</span>)
351
+ <pre><span class="ruby-comment"># File lib/rubyXL/objects/ooxml_object.rb, line 113</span>
352
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">parse</span>(<span class="ruby-identifier">node</span>, <span class="ruby-identifier">known_namespaces</span> = <span class="ruby-keyword">nil</span>)
442
353
  <span class="ruby-keyword">case</span> <span class="ruby-identifier">node</span>
443
354
  <span class="ruby-keyword">when</span> <span class="ruby-constant">String</span>, <span class="ruby-constant">IO</span>, <span class="ruby-constant">Zip</span><span class="ruby-operator">::</span><span class="ruby-constant">InputStream</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">node</span> = <span class="ruby-constant">Nokogiri</span><span class="ruby-operator">::</span><span class="ruby-constant">XML</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">node</span>)
444
355
  <span class="ruby-keyword">end</span>
@@ -477,7 +388,9 @@ it in the context of descendant class, which is what we need.</p>
477
388
  <span class="ruby-identifier">node</span>.<span class="ruby-identifier">element_children</span>.<span class="ruby-identifier">each</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">child_node</span><span class="ruby-operator">|</span>
478
389
 
479
390
  <span class="ruby-identifier">ns</span> = <span class="ruby-identifier">child_node</span>.<span class="ruby-identifier">namespace</span>
480
- <span class="ruby-identifier">prefix</span> = <span class="ruby-identifier">known_namespaces</span>[<span class="ruby-identifier">ns</span>.<span class="ruby-identifier">href</span>] <span class="ruby-operator">||</span> <span class="ruby-identifier">ns</span>.<span class="ruby-identifier">prefix</span>
391
+ <span class="ruby-identifier">prefix</span> = <span class="ruby-keyword">if</span> <span class="ruby-identifier">known_namespaces</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">ns</span>.<span class="ruby-identifier">href</span>) <span class="ruby-keyword">then</span> <span class="ruby-identifier">known_namespaces</span>[<span class="ruby-identifier">ns</span>.<span class="ruby-identifier">href</span>]
392
+ <span class="ruby-keyword">else</span> <span class="ruby-identifier">ns</span>.<span class="ruby-identifier">prefix</span>
393
+ <span class="ruby-keyword">end</span>
481
394
 
482
395
  <span class="ruby-identifier">child_node_name</span> = <span class="ruby-keyword">case</span> <span class="ruby-identifier">prefix</span>
483
396
  <span class="ruby-keyword">when</span> <span class="ruby-string">&#39;&#39;</span>, <span class="ruby-keyword">nil</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">child_node</span>.<span class="ruby-identifier">name</span>
@@ -508,24 +421,20 @@ it in the context of descendant class, which is what we need.</p>
508
421
  <span class="ruby-identifier">obj</span>
509
422
  <span class="ruby-keyword">end</span></pre>
510
423
  </div>
511
-
512
424
  </div>
513
425
 
514
-
515
426
 
516
-
517
427
  </div>
518
428
 
519
-
520
429
  </section>
521
-
430
+
522
431
  </section>
523
432
  </main>
524
433
 
525
434
 
526
435
  <footer id="validator-badges" role="contentinfo">
527
- <p><a href="http://validator.w3.org/check/referer">Validate</a>
528
- <p>Generated by <a href="http://docs.seattlerb.org/rdoc/">RDoc</a> 4.2.2.
436
+ <p><a href="https://validator.w3.org/check/referer">Validate</a>
437
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.3.0.
529
438
  <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
530
439
  </footer>
531
440