rubyXL 2.5.7 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/lib/rubyXL.rb +4 -1
- data/lib/rubyXL/objects/calculation_chain.rb +4 -6
- data/lib/rubyXL/objects/chartsheet.rb +16 -13
- data/lib/rubyXL/objects/color.rb +1 -1
- data/lib/rubyXL/objects/comments.rb +46 -0
- data/lib/rubyXL/objects/content_types.rb +17 -55
- data/lib/rubyXL/objects/document_properties.rb +13 -15
- data/lib/rubyXL/objects/filters.rb +1 -1
- data/lib/rubyXL/objects/ooxml_object.rb +24 -11
- data/lib/rubyXL/objects/reference.rb +1 -1
- data/lib/rubyXL/objects/relationships.rb +147 -31
- data/lib/rubyXL/objects/root.rb +57 -0
- data/lib/rubyXL/objects/shared_strings.rb +4 -5
- data/lib/rubyXL/objects/sheet_data.rb +8 -2
- data/lib/rubyXL/objects/storage.rb +169 -0
- data/lib/rubyXL/objects/stylesheet.rb +4 -5
- data/lib/rubyXL/objects/text.rb +3 -3
- data/lib/rubyXL/objects/theme.rb +4 -6
- data/lib/rubyXL/objects/workbook.rb +50 -22
- data/lib/rubyXL/objects/worksheet.rb +36 -12
- data/lib/rubyXL/parser.rb +23 -97
- data/lib/rubyXL/workbook.rb +29 -41
- data/lib/rubyXL/worksheet.rb +3 -0
- data/rdoc/README_rdoc.html +1 -1
- data/rdoc/RubyXL.html +1 -1
- data/rdoc/RubyXL/AExtension.html +1 -1
- data/rdoc/RubyXL/AExtensionStorageArea.html +1 -1
- data/rdoc/RubyXL/AdjustHandleList.html +1 -1
- data/rdoc/RubyXL/Alignment.html +1 -1
- data/rdoc/RubyXL/AlternateContent.html +1 -1
- data/rdoc/RubyXL/Authors.html +105 -0
- data/rdoc/RubyXL/AutoFilter.html +1 -1
- data/rdoc/RubyXL/AutoFilterColumn.html +1 -1
- data/rdoc/RubyXL/BinaryImageFile.html +105 -0
- data/rdoc/RubyXL/BodyProperties.html +1 -1
- data/rdoc/RubyXL/BooleanNode.html +1 -1
- data/rdoc/RubyXL/BooleanValue.html +1 -1
- data/rdoc/RubyXL/Border.html +1 -1
- data/rdoc/RubyXL/BorderEdge.html +1 -1
- data/rdoc/RubyXL/Borders.html +1 -1
- data/rdoc/RubyXL/Break.html +1 -1
- data/rdoc/RubyXL/BreakList.html +1 -1
- data/rdoc/RubyXL/CT_AdjPoint2D.html +1 -1
- data/rdoc/RubyXL/CT_AlphaBiLevelEffect.html +1 -1
- data/rdoc/RubyXL/CT_AlphaModulateEffect.html +1 -1
- data/rdoc/RubyXL/CT_AlphaModulateFixedEffect.html +1 -1
- data/rdoc/RubyXL/CT_AlphaOutsetEffect.html +1 -1
- data/rdoc/RubyXL/CT_AlphaReplaceEffect.html +1 -1
- data/rdoc/RubyXL/CT_Backdrop.html +1 -1
- data/rdoc/RubyXL/CT_Bevel.html +1 -1
- data/rdoc/RubyXL/CT_BiLevelEffect.html +1 -1
- data/rdoc/RubyXL/CT_BlendEffect.html +1 -1
- data/rdoc/RubyXL/CT_Blip.html +1 -1
- data/rdoc/RubyXL/CT_BlipFillProperties.html +1 -1
- data/rdoc/RubyXL/CT_BlurEffect.html +1 -1
- data/rdoc/RubyXL/CT_Camera.html +1 -1
- data/rdoc/RubyXL/CT_Color.html +1 -1
- data/rdoc/RubyXL/CT_ColorChangeEffect.html +1 -1
- data/rdoc/RubyXL/CT_ColorMapping.html +1 -1
- data/rdoc/RubyXL/CT_ColorScheme.html +1 -1
- data/rdoc/RubyXL/CT_ColorSchemeAndMapping.html +1 -1
- data/rdoc/RubyXL/CT_ConnectionSite.html +1 -1
- data/rdoc/RubyXL/CT_ConnectionSiteList.html +1 -1
- data/rdoc/RubyXL/CT_DashStop.html +1 -1
- data/rdoc/RubyXL/CT_DashStopList.html +1 -1
- data/rdoc/RubyXL/CT_DefaultShapeDefinition.html +1 -1
- data/rdoc/RubyXL/CT_DuotoneEffect.html +1 -1
- data/rdoc/RubyXL/CT_EffectContainer.html +1 -1
- data/rdoc/RubyXL/CT_EffectList.html +1 -1
- data/rdoc/RubyXL/CT_EffectReference.html +1 -1
- data/rdoc/RubyXL/CT_EffectStyleItem.html +1 -1
- data/rdoc/RubyXL/CT_EffectStyleList.html +1 -1
- data/rdoc/RubyXL/CT_EmbeddedWAVAudioFile.html +1 -1
- data/rdoc/RubyXL/CT_FillEffect.html +1 -1
- data/rdoc/RubyXL/CT_FillOverlayEffect.html +1 -1
- data/rdoc/RubyXL/CT_FillStyleList.html +1 -1
- data/rdoc/RubyXL/CT_FlatText.html +1 -1
- data/rdoc/RubyXL/CT_FontCollection.html +1 -1
- data/rdoc/RubyXL/CT_FontReference.html +1 -1
- data/rdoc/RubyXL/CT_GeomGuideList.html +1 -1
- data/rdoc/RubyXL/CT_GlowEffect.html +1 -1
- data/rdoc/RubyXL/CT_GradientFillProperties.html +1 -1
- data/rdoc/RubyXL/CT_GradientStop.html +1 -1
- data/rdoc/RubyXL/CT_GradientStopList.html +1 -1
- data/rdoc/RubyXL/CT_HSLEffect.html +1 -1
- data/rdoc/RubyXL/CT_HslColor.html +1 -1
- data/rdoc/RubyXL/CT_Hyperlink.html +1 -1
- data/rdoc/RubyXL/CT_InnerShadowEffect.html +1 -1
- data/rdoc/RubyXL/CT_LightRig.html +1 -1
- data/rdoc/RubyXL/CT_LineEndProperties.html +1 -1
- data/rdoc/RubyXL/CT_LineJoinMiterProperties.html +1 -1
- data/rdoc/RubyXL/CT_LineProperties.html +1 -1
- data/rdoc/RubyXL/CT_LineStyleList.html +1 -1
- data/rdoc/RubyXL/CT_LinearShadeProperties.html +1 -1
- data/rdoc/RubyXL/CT_LuminanceEffect.html +1 -1
- data/rdoc/RubyXL/CT_ObjectStyleDefaults.html +1 -1
- data/rdoc/RubyXL/CT_OuterShadowEffect.html +1 -1
- data/rdoc/RubyXL/CT_Path2D.html +1 -1
- data/rdoc/RubyXL/CT_Path2DArcTo.html +1 -1
- data/rdoc/RubyXL/CT_Path2DCubicBezierTo.html +1 -1
- data/rdoc/RubyXL/CT_Path2DList.html +1 -1
- data/rdoc/RubyXL/CT_Path2DQuadBezierTo.html +1 -1
- data/rdoc/RubyXL/CT_Path2DTo.html +1 -1
- data/rdoc/RubyXL/CT_PathShadeProperties.html +1 -1
- data/rdoc/RubyXL/CT_PatternFillProperties.html +1 -1
- data/rdoc/RubyXL/CT_Point3D.html +1 -1
- data/rdoc/RubyXL/CT_PolarAdjustHandle.html +1 -1
- data/rdoc/RubyXL/CT_PresetColor.html +1 -1
- data/rdoc/RubyXL/CT_PresetLineDashProperties.html +1 -1
- data/rdoc/RubyXL/CT_PresetShadowEffect.html +1 -1
- data/rdoc/RubyXL/CT_PresetTextShape.html +1 -1
- data/rdoc/RubyXL/CT_ReflectionEffect.html +1 -1
- data/rdoc/RubyXL/CT_RelativeOffsetEffect.html +1 -1
- data/rdoc/RubyXL/CT_RelativeRect.html +1 -1
- data/rdoc/RubyXL/CT_SRgbColor.html +1 -1
- data/rdoc/RubyXL/CT_ScRgbColor.html +1 -1
- data/rdoc/RubyXL/CT_Scene3D.html +1 -1
- data/rdoc/RubyXL/CT_SchemeColor.html +1 -1
- data/rdoc/RubyXL/CT_Shape3D.html +1 -1
- data/rdoc/RubyXL/CT_ShapeStyle.html +1 -1
- data/rdoc/RubyXL/CT_SoftEdgesEffect.html +1 -1
- data/rdoc/RubyXL/CT_SphereCoords.html +1 -1
- data/rdoc/RubyXL/CT_StretchInfoProperties.html +1 -1
- data/rdoc/RubyXL/CT_StyleMatrix.html +1 -1
- data/rdoc/RubyXL/CT_StyleMatrixReference.html +1 -1
- data/rdoc/RubyXL/CT_SupplementalFont.html +1 -1
- data/rdoc/RubyXL/CT_SystemColor.html +1 -1
- data/rdoc/RubyXL/CT_TextAutonumberBullet.html +1 -1
- data/rdoc/RubyXL/CT_TextBlipBullet.html +1 -1
- data/rdoc/RubyXL/CT_TextCharBullet.html +1 -1
- data/rdoc/RubyXL/CT_TextCharacterProperties.html +1 -1
- data/rdoc/RubyXL/CT_TextFont.html +1 -1
- data/rdoc/RubyXL/CT_TextListStyle.html +1 -1
- data/rdoc/RubyXL/CT_TextNormalAutofit.html +1 -1
- data/rdoc/RubyXL/CT_TextParagraphProperties.html +1 -1
- data/rdoc/RubyXL/CT_TextSpacing.html +1 -1
- data/rdoc/RubyXL/CT_TextTabStop.html +1 -1
- data/rdoc/RubyXL/CT_TextTabStopList.html +1 -1
- data/rdoc/RubyXL/CT_TileInfoProperties.html +1 -1
- data/rdoc/RubyXL/CT_TintEffect.html +1 -1
- data/rdoc/RubyXL/CT_Transform2D.html +1 -1
- data/rdoc/RubyXL/CT_TransformEffect.html +1 -1
- data/rdoc/RubyXL/CT_Vector3D.html +1 -1
- data/rdoc/RubyXL/CT_XYAdjustHandle.html +1 -1
- data/rdoc/RubyXL/CalculationChain.html +26 -42
- data/rdoc/RubyXL/CalculationChainCell.html +1 -1
- data/rdoc/RubyXL/CalculationProperties.html +1 -1
- data/rdoc/RubyXL/Cell.html +13 -13
- data/rdoc/RubyXL/CellSmartTag.html +1 -1
- data/rdoc/RubyXL/CellSmartTagProperty.html +1 -1
- data/rdoc/RubyXL/CellSmartTags.html +1 -1
- data/rdoc/RubyXL/CellStyle.html +1 -1
- data/rdoc/RubyXL/CellStyleXFs.html +1 -1
- data/rdoc/RubyXL/CellStyles.html +1 -1
- data/rdoc/RubyXL/CellValue.html +53 -1
- data/rdoc/RubyXL/CellWatch.html +1 -1
- data/rdoc/RubyXL/CellWatches.html +1 -1
- data/rdoc/RubyXL/CellXFs.html +1 -1
- data/rdoc/RubyXL/ChartColorsFile.html +105 -0
- data/rdoc/RubyXL/ChartFile.html +105 -0
- data/rdoc/RubyXL/ChartRelationshipsFile.html +105 -0
- data/rdoc/RubyXL/ChartStyleFile.html +105 -0
- data/rdoc/RubyXL/ChartUserShapesFile.html +105 -0
- data/rdoc/RubyXL/Chartsheet.html +1 -1
- data/rdoc/RubyXL/ChartsheetPageSetup.html +1 -1
- data/rdoc/RubyXL/ChartsheetProperties.html +1 -1
- data/rdoc/RubyXL/ChartsheetProtection.html +1 -1
- data/rdoc/RubyXL/ChartsheetView.html +1 -1
- data/rdoc/RubyXL/ChartsheetViews.html +1 -1
- data/rdoc/RubyXL/Color.html +2 -2
- data/rdoc/RubyXL/ColorFilter.html +1 -1
- data/rdoc/RubyXL/ColorScale.html +1 -1
- data/rdoc/RubyXL/ColorSet.html +1 -1
- data/rdoc/RubyXL/Colors.html +1 -1
- data/rdoc/RubyXL/ColumnRange.html +1 -1
- data/rdoc/RubyXL/ColumnRanges.html +1 -1
- data/rdoc/RubyXL/Comment.html +108 -0
- data/rdoc/RubyXL/CommentList.html +105 -0
- data/rdoc/RubyXL/{CoreProperties.html → CommentsFile.html} +4 -4
- data/rdoc/RubyXL/ConditionalFormatValue.html +1 -1
- data/rdoc/RubyXL/ConditionalFormatting.html +1 -1
- data/rdoc/RubyXL/ConditionalFormattingRule.html +1 -1
- data/rdoc/RubyXL/ContentTypeDefault.html +1 -1
- data/rdoc/RubyXL/ContentTypeOverride.html +1 -1
- data/rdoc/RubyXL/ContentTypes.html +87 -63
- data/rdoc/RubyXL/ControlPropertiesFile.html +105 -0
- data/rdoc/RubyXL/CorePropertiesFile.html +105 -0
- data/rdoc/RubyXL/CustomColor.html +1 -1
- data/rdoc/RubyXL/CustomColorList.html +1 -1
- data/rdoc/RubyXL/CustomFilter.html +1 -1
- data/rdoc/RubyXL/CustomFilters.html +1 -1
- data/rdoc/RubyXL/CustomGeometry.html +1 -1
- data/rdoc/RubyXL/CustomProperties.html +1 -1
- data/rdoc/RubyXL/CustomPropertiesFile.html +105 -0
- data/rdoc/RubyXL/CustomProperty.html +1 -1
- data/rdoc/RubyXL/CustomSheetView.html +1 -1
- data/rdoc/RubyXL/CustomSheetViews.html +1 -1
- data/rdoc/RubyXL/CustomWorkbookView.html +1 -1
- data/rdoc/RubyXL/CustomWorkbookViews.html +1 -1
- data/rdoc/RubyXL/CustomXMLFile.html +105 -0
- data/rdoc/RubyXL/DXF.html +1 -1
- data/rdoc/RubyXL/DXFs.html +1 -1
- data/rdoc/RubyXL/DataBar.html +1 -1
- data/rdoc/RubyXL/DataConsolidate.html +1 -1
- data/rdoc/RubyXL/DataConsolidationReference.html +1 -1
- data/rdoc/RubyXL/DataConsolidationReferences.html +1 -1
- data/rdoc/RubyXL/DataType.html +1 -1
- data/rdoc/RubyXL/DataValidation.html +1 -1
- data/rdoc/RubyXL/DataValidations.html +1 -1
- data/rdoc/RubyXL/DateGroupItem.html +1 -1
- data/rdoc/RubyXL/DefinedName.html +1 -1
- data/rdoc/RubyXL/DefinedNames.html +1 -1
- data/rdoc/RubyXL/{DocumentProperties.html → DocumentPropertiesFile.html} +59 -83
- data/rdoc/RubyXL/DrawingFile.html +225 -0
- data/rdoc/RubyXL/DrawingRelationshipsFile.html +105 -0
- data/rdoc/RubyXL/DynamicFilter.html +1 -1
- data/rdoc/RubyXL/EmbeddedControl.html +1 -1
- data/rdoc/RubyXL/EmbeddedControls.html +1 -1
- data/rdoc/RubyXL/Extension.html +1 -1
- data/rdoc/RubyXL/ExtensionStorageArea.html +1 -1
- data/rdoc/RubyXL/Extents.html +1 -1
- data/rdoc/RubyXL/ExternalLinksFile.html +105 -0
- data/rdoc/RubyXL/ExternalReference.html +1 -1
- data/rdoc/RubyXL/ExternalReferences.html +1 -1
- data/rdoc/RubyXL/ExtraColorSchemeList.html +1 -1
- data/rdoc/RubyXL/FieldItem.html +1 -1
- data/rdoc/RubyXL/FileRecoveryProperties.html +1 -1
- data/rdoc/RubyXL/FileSharing.html +1 -1
- data/rdoc/RubyXL/FileVersion.html +1 -1
- data/rdoc/RubyXL/Fill.html +1 -1
- data/rdoc/RubyXL/Fills.html +1 -1
- data/rdoc/RubyXL/FilterContainer.html +1 -1
- data/rdoc/RubyXL/FloatNode.html +1 -1
- data/rdoc/RubyXL/FloatValue.html +1 -1
- data/rdoc/RubyXL/Font.html +1 -1
- data/rdoc/RubyXL/FontScheme.html +1 -1
- data/rdoc/RubyXL/Fonts.html +1 -1
- data/rdoc/RubyXL/Formula.html +1 -1
- data/rdoc/RubyXL/FunctionGroup.html +1 -1
- data/rdoc/RubyXL/FunctionGroups.html +1 -1
- data/rdoc/RubyXL/GenericStorageObject.html +352 -0
- data/rdoc/RubyXL/GradientFill.html +1 -1
- data/rdoc/RubyXL/HeaderFooterSettings.html +1 -1
- data/rdoc/RubyXL/Hyperlink.html +1 -1
- data/rdoc/RubyXL/HyperlinkRelFile.html +105 -0
- data/rdoc/RubyXL/Hyperlinks.html +1 -1
- data/rdoc/RubyXL/IconFilter.html +1 -1
- data/rdoc/RubyXL/IconSet.html +1 -1
- data/rdoc/RubyXL/IgnoredError.html +1 -1
- data/rdoc/RubyXL/IgnoredErrors.html +1 -1
- data/rdoc/RubyXL/IndexedColors.html +1 -1
- data/rdoc/RubyXL/InputCells.html +1 -1
- data/rdoc/RubyXL/IntegerNode.html +1 -1
- data/rdoc/RubyXL/IntegerValue.html +1 -1
- data/rdoc/RubyXL/LegacyCell.html +1 -1
- data/rdoc/RubyXL/LegacyWorkbook.html +48 -343
- data/rdoc/RubyXL/LegacyWorksheet.html +83 -80
- data/rdoc/RubyXL/MRUColors.html +1 -1
- data/rdoc/RubyXL/MacrosFile.html +105 -0
- data/rdoc/RubyXL/MergedCell.html +1 -1
- data/rdoc/RubyXL/MergedCells.html +1 -1
- data/rdoc/RubyXL/NumFmt.html +1 -1
- data/rdoc/RubyXL/NumberFormat.html +1 -1
- data/rdoc/RubyXL/NumberFormats.html +1 -1
- data/rdoc/RubyXL/OLEObject.html +1 -1
- data/rdoc/RubyXL/OLEObjects.html +1 -1
- data/rdoc/RubyXL/OLESize.html +1 -1
- data/rdoc/RubyXL/OOXMLContainerObject.html +1 -1
- data/rdoc/RubyXL/OOXMLObject.html +1 -1
- data/rdoc/RubyXL/OOXMLObjectClassMethods.html +3 -3
- data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +1 -1
- data/rdoc/RubyXL/OOXMLRelationshipsFile.html +283 -20
- data/rdoc/RubyXL/OOXMLTopLevelObject.html +1 -1
- data/rdoc/RubyXL/Offset.html +1 -1
- data/rdoc/RubyXL/OutlineProperties.html +1 -1
- data/rdoc/RubyXL/PageMargins.html +1 -1
- data/rdoc/RubyXL/PageSetup.html +1 -1
- data/rdoc/RubyXL/PageSetupProperties.html +1 -1
- data/rdoc/RubyXL/Pane.html +1 -1
- data/rdoc/RubyXL/Parser.html +35 -139
- data/rdoc/RubyXL/PatternFill.html +1 -1
- data/rdoc/RubyXL/PhoneticProperties.html +1 -1
- data/rdoc/RubyXL/PhoneticRun.html +1 -1
- data/rdoc/RubyXL/PivotArea.html +1 -1
- data/rdoc/RubyXL/PivotCache.html +1 -1
- data/rdoc/RubyXL/PivotCacheDefinitionFile.html +105 -0
- data/rdoc/RubyXL/PivotCaches.html +1 -1
- data/rdoc/RubyXL/PivotReference.html +1 -1
- data/rdoc/RubyXL/PivotReferences.html +1 -1
- data/rdoc/RubyXL/PivotTableFile.html +105 -0
- data/rdoc/RubyXL/PivotTableSelection.html +1 -1
- data/rdoc/RubyXL/PresetGeometry.html +1 -1
- data/rdoc/RubyXL/PrintOptions.html +1 -1
- data/rdoc/RubyXL/PrinterSettingsFile.html +119 -0
- data/rdoc/RubyXL/ProtectedRange.html +1 -1
- data/rdoc/RubyXL/ProtectedRanges.html +1 -1
- data/rdoc/RubyXL/Protection.html +1 -1
- data/rdoc/RubyXL/RID.html +1 -1
- data/rdoc/RubyXL/RawOOXML.html +1 -1
- data/rdoc/RubyXL/Reference.html +2 -2
- data/rdoc/RubyXL/Relationship.html +1 -1
- data/rdoc/RubyXL/RelationshipSupport.html +98 -0
- data/rdoc/RubyXL/RichText.html +1 -1
- data/rdoc/RubyXL/RichTextRun.html +1 -1
- data/rdoc/RubyXL/RootRelationships.html +1 -1
- data/rdoc/RubyXL/Row.html +1 -1
- data/rdoc/RubyXL/RunProperties.html +1 -1
- data/rdoc/RubyXL/Scenario.html +1 -1
- data/rdoc/RubyXL/Scenarios.html +1 -1
- data/rdoc/RubyXL/Selection.html +1 -1
- data/rdoc/RubyXL/ShapeGuide.html +1 -1
- data/rdoc/RubyXL/ShapeTextRectangle.html +1 -1
- data/rdoc/RubyXL/SharedStringsTable.html +61 -77
- data/rdoc/RubyXL/Sheet.html +1 -1
- data/rdoc/RubyXL/SheetCalculationProperties.html +1 -1
- data/rdoc/RubyXL/SheetData.html +1 -1
- data/rdoc/RubyXL/SheetRelationshipsFile.html +105 -0
- data/rdoc/RubyXL/Sheets.html +1 -1
- data/rdoc/RubyXL/SlicerCacheFile.html +105 -0
- data/rdoc/RubyXL/SlicerFile.html +105 -0
- data/rdoc/RubyXL/SmartTagProperties.html +1 -1
- data/rdoc/RubyXL/SmartTagType.html +1 -1
- data/rdoc/RubyXL/SmartTagTypes.html +1 -1
- data/rdoc/RubyXL/SmartTags.html +1 -1
- data/rdoc/RubyXL/SortCondition.html +1 -1
- data/rdoc/RubyXL/SortState.html +1 -1
- data/rdoc/RubyXL/Sqref.html +1 -1
- data/rdoc/RubyXL/Stop.html +1 -1
- data/rdoc/RubyXL/StringNode.html +1 -1
- data/rdoc/RubyXL/StringNodeW3C.html +1 -1
- data/rdoc/RubyXL/StringValue.html +1 -1
- data/rdoc/RubyXL/Stylesheet.html +1 -1
- data/rdoc/RubyXL/TableFile.html +105 -0
- data/rdoc/RubyXL/TableParts.html +1 -1
- data/rdoc/RubyXL/TableStyle.html +1 -1
- data/rdoc/RubyXL/TableStyles.html +1 -1
- data/rdoc/RubyXL/Text.html +2 -2
- data/rdoc/RubyXL/Theme.html +1 -1
- data/rdoc/RubyXL/ThemeElements.html +1 -1
- data/rdoc/RubyXL/ThumbnailFile.html +105 -0
- data/rdoc/RubyXL/Top10.html +1 -1
- data/rdoc/RubyXL/VMLDrawingFile.html +105 -0
- data/rdoc/RubyXL/Variant.html +1 -1
- data/rdoc/RubyXL/Vector.html +1 -1
- data/rdoc/RubyXL/VectorValue.html +1 -1
- data/rdoc/RubyXL/VisualProperties.html +1 -1
- data/rdoc/RubyXL/WebPublishObject.html +1 -1
- data/rdoc/RubyXL/WebPublishObjects.html +1 -1
- data/rdoc/RubyXL/WebPublishingItem.html +1 -1
- data/rdoc/RubyXL/WebPublishingItems.html +1 -1
- data/rdoc/RubyXL/WebPublishingProperties.html +1 -1
- data/rdoc/RubyXL/Workbook.html +1 -1
- data/rdoc/RubyXL/WorkbookProperties.html +1 -1
- data/rdoc/RubyXL/WorkbookProtection.html +1 -1
- data/rdoc/RubyXL/WorkbookRelationships.html +1 -1
- data/rdoc/RubyXL/WorkbookRoot.html +449 -0
- data/rdoc/RubyXL/WorkbookView.html +1 -1
- data/rdoc/RubyXL/WorkbookViews.html +1 -1
- data/rdoc/RubyXL/Worksheet.html +1 -1
- data/rdoc/RubyXL/WorksheetDimensions.html +1 -1
- data/rdoc/RubyXL/WorksheetFormatProperties.html +1 -1
- data/rdoc/RubyXL/WorksheetProperties.html +1 -1
- data/rdoc/RubyXL/WorksheetProtection.html +1 -1
- data/rdoc/RubyXL/WorksheetView.html +1 -1
- data/rdoc/RubyXL/WorksheetViews.html +1 -1
- data/rdoc/RubyXL/XF.html +1 -1
- data/rdoc/created.rid +30 -28
- data/rdoc/index.html +12 -4
- data/rdoc/js/search_index.js +1 -1
- data/rdoc/table_of_contents.html +160 -98
- data/rubyXL.gemspec +38 -7
- data/test/test_parse_write.rb +4 -4
- metadata +37 -6
- data/lib/rubyXL/generic_storage.rb +0 -42
- data/rdoc/RubyXL/GenericStorage.html +0 -346
@@ -0,0 +1,57 @@
|
|
1
|
+
require 'zip'
|
2
|
+
require 'rubyXL/objects/relationships'
|
3
|
+
|
4
|
+
module RubyXL
|
5
|
+
|
6
|
+
class WorkbookRoot
|
7
|
+
attr_accessor :filepath
|
8
|
+
attr_accessor :thumbnail, :core_properties, :document_properties, :custom_properties, :workbook
|
9
|
+
attr_accessor :content_types, :rels_hash
|
10
|
+
|
11
|
+
include RubyXL::RelationshipSupport
|
12
|
+
|
13
|
+
def related_objects
|
14
|
+
[ content_types, thumbnail, core_properties, document_properties, workbook ]
|
15
|
+
end
|
16
|
+
|
17
|
+
def relationship_file_class
|
18
|
+
RubyXL::RootRelationships
|
19
|
+
end
|
20
|
+
|
21
|
+
def attach_relationship(rid, rf)
|
22
|
+
case rf
|
23
|
+
when RubyXL::ThumbnailFile then self.thumbnail = rf
|
24
|
+
when RubyXL::CorePropertiesFile then self.core_properties = rf
|
25
|
+
when RubyXL::DocumentPropertiesFile then self.document_properties = rf
|
26
|
+
when RubyXL::CustomPropertiesFile then self.custom_properties = rf
|
27
|
+
when RubyXL::Workbook then self.workbook = rf
|
28
|
+
else store_relationship(rf, :unknown)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def self.default
|
33
|
+
obj = self.new
|
34
|
+
obj.document_properties = RubyXL::DocumentPropertiesFile.new
|
35
|
+
obj.core_properties = RubyXL::CorePropertiesFile.new
|
36
|
+
obj.relationship_container = RubyXL::RootRelationships.new
|
37
|
+
obj.content_types = RubyXL::ContentTypes.new
|
38
|
+
obj
|
39
|
+
end
|
40
|
+
|
41
|
+
def self.parse_file(xl_file_path, opts)
|
42
|
+
raise 'Not .xlsx or .xlsm excel file' unless opts[:skip_filename_check] ||
|
43
|
+
%w{.xlsx .xlsm}.include?(File.extname(xl_file_path))
|
44
|
+
|
45
|
+
::Zip::File.open(xl_file_path) { |zip_file|
|
46
|
+
root = self.new
|
47
|
+
root.filepath = xl_file_path
|
48
|
+
root.content_types = RubyXL::ContentTypes.parse_file(zip_file)
|
49
|
+
root.load_relationships(zip_file)
|
50
|
+
root.workbook.root = root
|
51
|
+
root
|
52
|
+
}
|
53
|
+
end
|
54
|
+
|
55
|
+
end
|
56
|
+
|
57
|
+
end
|
@@ -6,6 +6,9 @@ module RubyXL
|
|
6
6
|
|
7
7
|
# http://www.schemacentral.com/sc/ooxml/e-ssml_sst.html
|
8
8
|
class SharedStringsTable < OOXMLTopLevelObject
|
9
|
+
CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml'
|
10
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings'
|
11
|
+
|
9
12
|
# According to http://msdn.microsoft.com/en-us/library/office/gg278314.aspx,
|
10
13
|
# +count+ and +uniqueCount+ may be either both missing, or both present. Need to validate.
|
11
14
|
define_attribute(:uniqueCount, :int)
|
@@ -48,14 +51,10 @@ module RubyXL
|
|
48
51
|
index
|
49
52
|
end
|
50
53
|
|
51
|
-
def
|
54
|
+
def xlsx_path
|
52
55
|
File.join('xl', 'sharedStrings.xml')
|
53
56
|
end
|
54
57
|
|
55
|
-
def self.content_type
|
56
|
-
'application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml'
|
57
|
-
end
|
58
|
-
|
59
58
|
end
|
60
59
|
|
61
60
|
end
|
@@ -8,7 +8,13 @@ module RubyXL
|
|
8
8
|
# http://www.schemacentral.com/sc/ooxml/e-ssml_v-1.html
|
9
9
|
class CellValue < OOXMLObject
|
10
10
|
define_attribute(:_, :string, :accessor => :value)
|
11
|
+
define_attribute(:'xml:space', :string)
|
11
12
|
define_element_name 'v'
|
13
|
+
|
14
|
+
def before_write_xml
|
15
|
+
self.xml_space = (value.is_a?(String) && ((value =~ /\A\s/) || (value =~ /\s\Z/) || value.include?("\n"))) ? 'preserve' : nil
|
16
|
+
true
|
17
|
+
end
|
12
18
|
end
|
13
19
|
|
14
20
|
# http://www.schemacentral.com/sc/ooxml/e-ssml_c-2.html
|
@@ -58,7 +64,7 @@ module RubyXL
|
|
58
64
|
end
|
59
65
|
|
60
66
|
def is_date?
|
61
|
-
return false unless raw_value =~
|
67
|
+
return false unless raw_value =~ /\A\d+(?:\.\d+)?\Z/ # Only fully numeric values can be dates
|
62
68
|
num_fmt = self.number_format
|
63
69
|
num_fmt && num_fmt.is_date_format?
|
64
70
|
end
|
@@ -72,7 +78,7 @@ module RubyXL
|
|
72
78
|
workbook.shared_strings_container[raw_value.to_i].to_s
|
73
79
|
else
|
74
80
|
if is_date? then workbook.num_to_date(raw_value.to_f)
|
75
|
-
elsif raw_value.is_a?(String) && (raw_value =~
|
81
|
+
elsif raw_value.is_a?(String) && (raw_value =~ /\A-?\d+(\.\d+(?:e[+-]\d+)?)?\Z/i) # Numeric
|
76
82
|
if $1 then raw_value.to_f
|
77
83
|
else raw_value.to_i
|
78
84
|
end
|
@@ -0,0 +1,169 @@
|
|
1
|
+
module RubyXL
|
2
|
+
|
3
|
+
class GenericStorageObject
|
4
|
+
|
5
|
+
attr_accessor :xlsx_path, :data, :workbook, :generic_storage
|
6
|
+
|
7
|
+
def initialize
|
8
|
+
@workbook = nil
|
9
|
+
@xlsx_path = nil
|
10
|
+
@data = nil
|
11
|
+
@generic_storage = []
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.save_order
|
15
|
+
0
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.parse_file(dirpath, file_path = nil)
|
19
|
+
file_path ||= self.xlsx_path
|
20
|
+
obj = self.new
|
21
|
+
|
22
|
+
case dirpath
|
23
|
+
when String then
|
24
|
+
full_path = File.join(dirpath, file_path)
|
25
|
+
return nil unless File.exist?(full_path)
|
26
|
+
obj.data = File.open(full_path, 'r') { |f| f.read }
|
27
|
+
when Zip::File then
|
28
|
+
entry = dirpath.find_entry(file_path)
|
29
|
+
return nil if entry.nil?
|
30
|
+
obj.data = entry.get_input_stream { |f| f.read }
|
31
|
+
end
|
32
|
+
|
33
|
+
obj.xlsx_path = file_path
|
34
|
+
obj
|
35
|
+
end
|
36
|
+
|
37
|
+
def add_to_zip(zipfile)
|
38
|
+
return if @data.nil?
|
39
|
+
|
40
|
+
path = self.xlsx_path
|
41
|
+
path = path.relative_path_from(Pathname.new("/")) if path.absolute? # Zip doesn't like absolute paths.
|
42
|
+
|
43
|
+
zipfile.get_output_stream(path) { |f| f << @data }
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
class PrinterSettingsFile < GenericStorageObject
|
48
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/printerSettings'
|
49
|
+
end
|
50
|
+
|
51
|
+
class DrawingFile < GenericStorageObject
|
52
|
+
CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.drawing+xml'
|
53
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing'
|
54
|
+
|
55
|
+
include RubyXL::RelationshipSupport
|
56
|
+
|
57
|
+
def relationship_file_class
|
58
|
+
RubyXL::DrawingRelationshipsFile
|
59
|
+
end
|
60
|
+
|
61
|
+
def attach_relationship(rid, rf)
|
62
|
+
case rf
|
63
|
+
when RubyXL::ChartFile then store_relationship(rf) # TODO
|
64
|
+
when RubyXL::BinaryImageFile then store_relationship(rf) # TODO
|
65
|
+
else store_relationship(rf, :unknown)
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
end
|
70
|
+
|
71
|
+
class ChartFile < GenericStorageObject
|
72
|
+
CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.drawingml.chart+xml'
|
73
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart'
|
74
|
+
|
75
|
+
include RubyXL::RelationshipSupport
|
76
|
+
|
77
|
+
def relationship_file_class
|
78
|
+
RubyXL::ChartRelationshipsFile
|
79
|
+
end
|
80
|
+
|
81
|
+
def attach_relationship(rid, rf)
|
82
|
+
case rf
|
83
|
+
when RubyXL::ChartColorsFile then self.generic_storage << rf # TODO
|
84
|
+
when RubyXL::ChartStyleFile then self.generic_storage << rf # TODO
|
85
|
+
when RubyXL::ChartUserShapesFile then self.generic_storage << rf # TODO
|
86
|
+
else store_relationship(rf, :unknown)
|
87
|
+
end
|
88
|
+
end
|
89
|
+
|
90
|
+
end
|
91
|
+
|
92
|
+
class VMLDrawingFile < GenericStorageObject
|
93
|
+
# CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.drawingml.chart+xml'
|
94
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing'
|
95
|
+
|
96
|
+
end
|
97
|
+
|
98
|
+
class ChartColorsFile < GenericStorageObject
|
99
|
+
CONTENT_TYPE = 'application/vnd.ms-office.chartcolorstyle+xml'
|
100
|
+
REL_TYPE = 'http://schemas.microsoft.com/office/2011/relationships/chartColorStyle'
|
101
|
+
end
|
102
|
+
|
103
|
+
class ChartStyleFile < GenericStorageObject
|
104
|
+
CONTENT_TYPE = 'application/vnd.ms-office.chartstyle+xml'
|
105
|
+
REL_TYPE = 'http://schemas.microsoft.com/office/2011/relationships/chartStyle'
|
106
|
+
end
|
107
|
+
|
108
|
+
class TableFile < GenericStorageObject
|
109
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/table'
|
110
|
+
end
|
111
|
+
|
112
|
+
class ControlPropertiesFile < GenericStorageObject
|
113
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/ctrlProp'
|
114
|
+
end
|
115
|
+
|
116
|
+
class PivotTableFile < GenericStorageObject
|
117
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotTable'
|
118
|
+
end
|
119
|
+
|
120
|
+
class PivotCacheDefinitionFile < GenericStorageObject
|
121
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotCacheDefinition'
|
122
|
+
end
|
123
|
+
|
124
|
+
class BinaryImageFile < GenericStorageObject
|
125
|
+
# CONTENT_TYPE = 'image/jpeg'
|
126
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/image'
|
127
|
+
end
|
128
|
+
|
129
|
+
class HyperlinkRelFile < GenericStorageObject
|
130
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink'
|
131
|
+
end
|
132
|
+
|
133
|
+
class ThumbnailFile < GenericStorageObject
|
134
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail'
|
135
|
+
end
|
136
|
+
|
137
|
+
class ChartUserShapesFile < GenericStorageObject
|
138
|
+
CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml'
|
139
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartUserShapes'
|
140
|
+
end
|
141
|
+
|
142
|
+
class CustomPropertiesFile < GenericStorageObject
|
143
|
+
CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.custom-properties+xml'
|
144
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties'
|
145
|
+
end
|
146
|
+
|
147
|
+
class MacrosFile < GenericStorageObject
|
148
|
+
CONTENT_TYPE = 'application/vnd.ms-office.vbaProject'
|
149
|
+
REL_TYPE = 'http://schemas.microsoft.com/office/2006/relationships/vbaProject'
|
150
|
+
end
|
151
|
+
|
152
|
+
class ExternalLinksFile < GenericStorageObject
|
153
|
+
CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml'
|
154
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink'
|
155
|
+
end
|
156
|
+
|
157
|
+
class CustomXMLFile < GenericStorageObject
|
158
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml'
|
159
|
+
end
|
160
|
+
|
161
|
+
class SlicerFile < GenericStorageObject
|
162
|
+
REL_TYPE = 'http://schemas.microsoft.com/office/2007/relationships/slicer'
|
163
|
+
end
|
164
|
+
|
165
|
+
class SlicerCacheFile < GenericStorageObject
|
166
|
+
REL_TYPE = 'http://schemas.microsoft.com/office/2007/relationships/slicerCache'
|
167
|
+
end
|
168
|
+
|
169
|
+
end
|
@@ -160,6 +160,9 @@ module RubyXL
|
|
160
160
|
|
161
161
|
# http://www.schemacentral.com/sc/ooxml/e-ssml_styleSheet.html
|
162
162
|
class Stylesheet < OOXMLTopLevelObject
|
163
|
+
CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml'
|
164
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles'
|
165
|
+
|
163
166
|
define_child_node(RubyXL::NumberFormats, :accessor => :number_formats)
|
164
167
|
define_child_node(RubyXL::Fonts)
|
165
168
|
define_child_node(RubyXL::Fills)
|
@@ -183,14 +186,10 @@ module RubyXL
|
|
183
186
|
@format_hash = nil
|
184
187
|
end
|
185
188
|
|
186
|
-
def
|
189
|
+
def xlsx_path
|
187
190
|
File.join('xl', 'styles.xml')
|
188
191
|
end
|
189
192
|
|
190
|
-
def self.content_type
|
191
|
-
'application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml'
|
192
|
-
end
|
193
|
-
|
194
193
|
def self.default
|
195
194
|
self.new(:fonts => RubyXL::Fonts.defaults,
|
196
195
|
:fills => RubyXL::Fills.defaults,
|
data/lib/rubyXL/objects/text.rb
CHANGED
@@ -11,7 +11,7 @@ module RubyXL
|
|
11
11
|
define_element_name 't'
|
12
12
|
|
13
13
|
def before_write_xml
|
14
|
-
self.xml_space = (value && ((value =~
|
14
|
+
self.xml_space = (value.is_a?(String) && ((value =~ /\A\s/) || (value =~ /\s\Z/) || value.include?("\n"))) ? 'preserve' : nil
|
15
15
|
true
|
16
16
|
end
|
17
17
|
|
@@ -72,8 +72,8 @@ module RubyXL
|
|
72
72
|
class RichText < OOXMLObject
|
73
73
|
define_child_node(RubyXL::Text)
|
74
74
|
define_child_node(RubyXL::RichTextRun, :collection => true)
|
75
|
-
define_child_node(RubyXL::PhoneticRun)
|
76
|
-
define_child_node(RubyXL::PhoneticProperties)
|
75
|
+
define_child_node(RubyXL::PhoneticRun, :collection => true)
|
76
|
+
define_child_node(RubyXL::PhoneticProperties)
|
77
77
|
define_element_name 'is'
|
78
78
|
|
79
79
|
def to_s
|
data/lib/rubyXL/objects/theme.rb
CHANGED
@@ -1377,6 +1377,9 @@ module RubyXL
|
|
1377
1377
|
|
1378
1378
|
# http://www.schemacentral.com/sc/ooxml/e-a_theme.html
|
1379
1379
|
class Theme < OOXMLTopLevelObject
|
1380
|
+
CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.theme+xml'
|
1381
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme'
|
1382
|
+
|
1380
1383
|
define_attribute(:name, :string, :default => '')
|
1381
1384
|
define_child_node(RubyXL::ThemeElements)
|
1382
1385
|
define_child_node(RubyXL::CT_ObjectStyleDefaults)
|
@@ -1388,15 +1391,10 @@ module RubyXL
|
|
1388
1391
|
|
1389
1392
|
set_namespaces('http://schemas.openxmlformats.org/drawingml/2006/main' => 'a')
|
1390
1393
|
|
1391
|
-
def
|
1394
|
+
def xlsx_path
|
1392
1395
|
File.join('xl', 'theme', 'theme1.xml')
|
1393
1396
|
end
|
1394
1397
|
|
1395
|
-
def self.content_type
|
1396
|
-
'application/vnd.openxmlformats-officedocument.theme+xml'
|
1397
|
-
end
|
1398
|
-
|
1399
|
-
|
1400
1398
|
def self.defaults
|
1401
1399
|
default_theme = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
1402
1400
|
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme">
|
@@ -287,6 +287,11 @@ module RubyXL
|
|
287
287
|
|
288
288
|
# http://www.schemacentral.com/sc/ooxml/e-ssml_workbook.html
|
289
289
|
class Workbook < OOXMLTopLevelObject
|
290
|
+
CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml'
|
291
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument'
|
292
|
+
|
293
|
+
include RubyXL::RelationshipSupport
|
294
|
+
|
290
295
|
define_child_node(RubyXL::FileVersion)
|
291
296
|
define_child_node(RubyXL::FileSharing)
|
292
297
|
define_child_node(RubyXL::WorkbookProperties, :accessor => :workbook_properties)
|
@@ -314,11 +319,14 @@ module RubyXL
|
|
314
319
|
'http://schemas.openxmlformats.org/markup-compatibility/2006' => 'mc',
|
315
320
|
'http://schemas.microsoft.com/office/spreadsheetml/2010/11/main' => 'x15')
|
316
321
|
|
322
|
+
attr_accessor :root
|
323
|
+
attr_accessor :calculation_chain, :theme, :stylesheet, :shared_strings_container
|
324
|
+
|
317
325
|
def before_write_xml
|
318
326
|
self.sheets = RubyXL::Sheets.new
|
319
327
|
|
320
328
|
worksheets.each_with_index { |sheet, i|
|
321
|
-
rel = relationship_container.find_by_target(sheet.xlsx_path.gsub(
|
329
|
+
rel = relationship_container.find_by_target(sheet.xlsx_path.gsub(/\Axl\//, ''))
|
322
330
|
sheets << RubyXL::Sheet.new(:name => sheet.sheet_name[0..30], # Max sheet name length is 31 char
|
323
331
|
:sheet_id => sheet.sheet_id || (i + 1),
|
324
332
|
:state => sheet.state, :r_id => rel.id)
|
@@ -326,7 +334,29 @@ module RubyXL
|
|
326
334
|
true
|
327
335
|
end
|
328
336
|
|
329
|
-
|
337
|
+
def related_objects
|
338
|
+
[ calculation_chain, stylesheet, theme, shared_strings_container ] + @worksheets
|
339
|
+
end
|
340
|
+
|
341
|
+
def relationship_file_class
|
342
|
+
RubyXL::WorkbookRelationships
|
343
|
+
end
|
344
|
+
|
345
|
+
def attach_relationship(rid, rf)
|
346
|
+
case rf
|
347
|
+
when RubyXL::SharedStringsTable then self.shared_strings_container = rf
|
348
|
+
when RubyXL::Stylesheet then self.stylesheet = rf
|
349
|
+
when RubyXL::Theme then self.theme = rf
|
350
|
+
when RubyXL::CalculationChain then self.calculation_chain = rf
|
351
|
+
when RubyXL::ExternalLinksFile then store_relationship(rf) # TODO
|
352
|
+
when RubyXL::PivotCacheDefinitionFile then store_relationship(rf) # TODO
|
353
|
+
when RubyXL::CustomXMLFile then store_relationship(rf) # TODO
|
354
|
+
when RubyXL::MacrosFile then store_relationship(rf) # TODO
|
355
|
+
when RubyXL::SlicerCacheFile then store_relationship(rf) # TODO
|
356
|
+
when RubyXL::Worksheet, RubyXL::Chartsheet then nil # These will be handled in the next loop
|
357
|
+
else store_relationship(rf, :unknown)
|
358
|
+
end
|
359
|
+
end
|
330
360
|
|
331
361
|
def date1904
|
332
362
|
workbook_properties && workbook_properties.date1904
|
@@ -342,67 +372,65 @@ module RubyXL
|
|
342
372
|
end
|
343
373
|
|
344
374
|
def company=(v)
|
345
|
-
|
346
|
-
|
375
|
+
root.document_properties.company ||= StringNode.new
|
376
|
+
root.document_properties.company.value = v
|
347
377
|
end
|
348
378
|
|
349
379
|
def application
|
350
|
-
|
380
|
+
root.document_properties.application && self.document_properties.application.value
|
351
381
|
end
|
352
382
|
|
353
383
|
def application=(v)
|
354
|
-
|
355
|
-
|
384
|
+
root.document_properties.application ||= StringNode.new
|
385
|
+
root.document_properties.application.value = v
|
356
386
|
end
|
357
387
|
|
358
388
|
def appversion
|
359
|
-
|
389
|
+
root.document_properties.app_version && root.document_properties.app_version.value
|
360
390
|
end
|
361
391
|
|
362
392
|
def appversion=(v)
|
363
|
-
|
364
|
-
|
393
|
+
root.document_properties.app_version ||= StringNode.new
|
394
|
+
root.document_properties.app_version.value = v
|
365
395
|
end
|
366
396
|
|
367
397
|
def creator
|
368
|
-
|
398
|
+
root.core_properties.creator
|
369
399
|
end
|
370
400
|
|
371
401
|
def creator=(v)
|
372
|
-
|
402
|
+
root.core_properties.creator = v
|
373
403
|
end
|
374
404
|
|
375
405
|
def modifier
|
376
|
-
|
406
|
+
root.core_properties.modifier
|
377
407
|
end
|
378
408
|
|
379
409
|
def modifier=(v)
|
380
|
-
|
410
|
+
root.core_properties.modifier = v
|
381
411
|
end
|
382
412
|
|
383
413
|
def created_at
|
384
|
-
|
414
|
+
root.core_properties.created_at
|
385
415
|
end
|
386
416
|
|
387
417
|
def created_at=(v)
|
388
|
-
|
418
|
+
root.core_properties.created_at = v
|
389
419
|
end
|
390
420
|
|
391
421
|
def modified_at
|
392
|
-
|
422
|
+
root.core_properties.modified_at
|
393
423
|
end
|
394
424
|
|
395
425
|
def modified_at=(v)
|
396
|
-
|
426
|
+
root.core_properties.modified_at = v
|
397
427
|
end
|
398
428
|
|
399
|
-
def
|
429
|
+
def xlsx_path
|
400
430
|
File.join('xl', 'workbook.xml')
|
401
431
|
end
|
402
432
|
|
403
|
-
|
404
|
-
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml'
|
405
|
-
end
|
433
|
+
include LegacyWorkbook
|
406
434
|
|
407
435
|
end
|
408
436
|
|