rubyXL 3.4.21 → 3.4.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +8 -8
- data/Gemfile.lock +21 -21
- data/README.rdoc +14 -9
- data/Rakefile +20 -19
- data/VERSION +1 -1
- data/lib/rubyXL/cell.rb +0 -2
- data/lib/rubyXL/convenience_methods/cell.rb +20 -14
- data/lib/rubyXL/convenience_methods/color.rb +3 -7
- data/lib/rubyXL/convenience_methods/workbook.rb +9 -4
- data/lib/rubyXL/convenience_methods/worksheet.rb +2 -3
- data/lib/rubyXL/objects/border.rb +0 -3
- data/lib/rubyXL/objects/calculation_chain.rb +2 -2
- data/lib/rubyXL/objects/cell_style.rb +1 -3
- data/lib/rubyXL/objects/chartsheet.rb +4 -7
- data/lib/rubyXL/objects/color.rb +1 -3
- data/lib/rubyXL/objects/column_range.rb +0 -3
- data/lib/rubyXL/objects/comments.rb +1 -4
- data/lib/rubyXL/objects/connection.rb +11 -11
- data/lib/rubyXL/objects/container_nodes.rb +1 -5
- data/lib/rubyXL/objects/content_types.rb +3 -6
- data/lib/rubyXL/objects/data_validation.rb +0 -2
- data/lib/rubyXL/objects/document_properties.rb +9 -13
- data/lib/rubyXL/objects/extensions.rb +0 -2
- data/lib/rubyXL/objects/external_links.rb +4 -6
- data/lib/rubyXL/objects/fill.rb +2 -5
- data/lib/rubyXL/objects/filters.rb +5 -7
- data/lib/rubyXL/objects/font.rb +1 -3
- data/lib/rubyXL/objects/formula.rb +3 -5
- data/lib/rubyXL/objects/ooxml_object.rb +6 -13
- data/lib/rubyXL/objects/query_table.rb +3 -3
- data/lib/rubyXL/objects/reference.rb +5 -4
- data/lib/rubyXL/objects/relationships.rb +5 -10
- data/lib/rubyXL/objects/root.rb +0 -2
- data/lib/rubyXL/objects/shared_strings.rb +3 -6
- data/lib/rubyXL/objects/sheet_common.rb +1 -3
- data/lib/rubyXL/objects/sheet_data.rb +4 -7
- data/lib/rubyXL/objects/simple_types.rb +1 -1
- data/lib/rubyXL/objects/storage.rb +51 -51
- data/lib/rubyXL/objects/stylesheet.rb +8 -15
- data/lib/rubyXL/objects/text.rb +3 -6
- data/lib/rubyXL/objects/theme.rb +4 -7
- data/lib/rubyXL/objects/workbook.rb +22 -23
- data/lib/rubyXL/objects/worksheet.rb +26 -22
- data/lib/rubyXL/parser.rb +1 -3
- data/lib/rubyXL/worksheet.rb +83 -84
- data/lib/rubyXL.rb +0 -1
- data/rdoc/README_rdoc.html +20 -20
- data/rdoc/RubyXL/AExtension.html +1 -1
- data/rdoc/RubyXL/AExtensionStorageArea.html +1 -1
- data/rdoc/RubyXL/ActiveX.html +3 -3
- data/rdoc/RubyXL/ActiveXBinary.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 +1 -1
- data/rdoc/RubyXL/AutoFilter.html +1 -1
- data/rdoc/RubyXL/AutoFilterColumn.html +1 -1
- data/rdoc/RubyXL/BinaryImageFile.html +1 -1
- 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 +5 -5
- data/rdoc/RubyXL/BorderEdge.html +3 -3
- data/rdoc/RubyXL/Borders.html +2 -2
- 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 +1 -1
- data/rdoc/RubyXL/CalculationChainCell.html +1 -1
- data/rdoc/RubyXL/CalculationProperties.html +1 -1
- data/rdoc/RubyXL/Cell.html +16 -16
- data/rdoc/RubyXL/CellConvenienceMethods.html +92 -38
- data/rdoc/RubyXL/CellExt.html +1 -1
- 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 +2 -2
- data/rdoc/RubyXL/CellStyles.html +2 -2
- data/rdoc/RubyXL/CellValue.html +2 -2
- data/rdoc/RubyXL/CellWatch.html +1 -1
- data/rdoc/RubyXL/CellWatches.html +1 -1
- data/rdoc/RubyXL/CellXFs.html +3 -5
- data/rdoc/RubyXL/ChartColorsFile.html +1 -1
- data/rdoc/RubyXL/ChartFile.html +2 -2
- data/rdoc/RubyXL/ChartStyleFile.html +1 -1
- data/rdoc/RubyXL/ChartUserShapesFile.html +1 -1
- data/rdoc/RubyXL/Chartsheet.html +2 -2
- 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/ColorConvenienceClasses/HlsColor.html +3 -3
- data/rdoc/RubyXL/ColorConvenienceClasses/RgbColor.html +7 -7
- data/rdoc/RubyXL/ColorConvenienceClasses.html +1 -1
- data/rdoc/RubyXL/ColorConvenienceMethods.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 +4 -4
- data/rdoc/RubyXL/ColumnRanges.html +5 -5
- data/rdoc/RubyXL/Comment.html +1 -1
- data/rdoc/RubyXL/CommentList.html +1 -1
- data/rdoc/RubyXL/CommentsFile.html +2 -2
- data/rdoc/RubyXL/ConditionalFormatValue.html +1 -1
- data/rdoc/RubyXL/ConditionalFormatting.html +1 -1
- data/rdoc/RubyXL/ConditionalFormattingRule.html +1 -1
- data/rdoc/RubyXL/Connection.html +1 -1
- data/rdoc/RubyXL/ConnectionTable.html +1 -1
- data/rdoc/RubyXL/ConnectionTables.html +1 -1
- data/rdoc/RubyXL/ConnectionTextField.html +1 -1
- data/rdoc/RubyXL/ConnectionTextFields.html +1 -1
- data/rdoc/RubyXL/Connections.html +1 -1
- data/rdoc/RubyXL/ContentTypeDefault.html +1 -1
- data/rdoc/RubyXL/ContentTypeOverride.html +1 -1
- data/rdoc/RubyXL/ContentTypes.html +5 -5
- data/rdoc/RubyXL/ControlPropertiesFile.html +1 -1
- data/rdoc/RubyXL/CorePropertiesFile.html +10 -10
- 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 +1 -1
- data/rdoc/RubyXL/CustomProperty.html +1 -1
- data/rdoc/RubyXL/CustomPropertyFile.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 +1 -1
- 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/DefinedNameExt.html +1 -1
- data/rdoc/RubyXL/DefinedNames.html +1 -1
- data/rdoc/RubyXL/DefinedNamesExt.html +1 -1
- data/rdoc/RubyXL/DocumentPropertiesFile.html +3 -3
- data/rdoc/RubyXL/DrawingFile.html +2 -2
- 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/ExternalBook.html +1 -1
- data/rdoc/RubyXL/ExternalLinksFile.html +2 -2
- 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 +2 -2
- data/rdoc/RubyXL/Fills.html +2 -2
- 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 +3 -3
- data/rdoc/RubyXL/FontConvenienceMethods.html +1 -1
- data/rdoc/RubyXL/FontScheme.html +1 -1
- data/rdoc/RubyXL/Fonts.html +2 -2
- 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 +4 -4
- 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 +1 -1
- 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 +2 -2
- data/rdoc/RubyXL/LegacyWorksheet.html +2 -2
- data/rdoc/RubyXL/MRUColors.html +1 -1
- data/rdoc/RubyXL/MacrosFile.html +1 -1
- 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 +3 -3
- data/rdoc/RubyXL/NumberFormats.html +2 -2
- data/rdoc/RubyXL/OLEObject.html +1 -1
- data/rdoc/RubyXL/OLEObjectFile.html +1 -1
- data/rdoc/RubyXL/OLEObjects.html +1 -1
- data/rdoc/RubyXL/OLESize.html +1 -1
- data/rdoc/RubyXL/OOXMLContainerObject.html +7 -7
- data/rdoc/RubyXL/OOXMLIgnored.html +3 -3
- data/rdoc/RubyXL/OOXMLObject.html +1 -1
- data/rdoc/RubyXL/OOXMLObjectClassMethods.html +2 -3
- data/rdoc/RubyXL/OOXMLObjectInstanceMethods.html +9 -10
- data/rdoc/RubyXL/OOXMLRelationshipsFile.html +15 -15
- data/rdoc/RubyXL/OOXMLTopLevelObject.html +6 -6
- data/rdoc/RubyXL/OdbcOleDbProperties.html +1 -1
- data/rdoc/RubyXL/Offset.html +1 -1
- data/rdoc/RubyXL/OlapProperties.html +1 -1
- data/rdoc/RubyXL/OleItem.html +1 -1
- data/rdoc/RubyXL/OleItems.html +1 -1
- data/rdoc/RubyXL/OleLink.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 +4 -4
- 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 +1 -1
- data/rdoc/RubyXL/PivotCacheRecordsFile.html +1 -1
- 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 +1 -1
- 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 +1 -1
- data/rdoc/RubyXL/ProtectedRange.html +1 -1
- data/rdoc/RubyXL/ProtectedRanges.html +1 -1
- data/rdoc/RubyXL/Protection.html +1 -1
- data/rdoc/RubyXL/QueryParameter.html +1 -1
- data/rdoc/RubyXL/QueryParameters.html +1 -1
- data/rdoc/RubyXL/QueryTable.html +1 -1
- data/rdoc/RubyXL/QueryTableDeletedField.html +1 -1
- data/rdoc/RubyXL/QueryTableDeletedFields.html +1 -1
- data/rdoc/RubyXL/QueryTableField.html +1 -1
- data/rdoc/RubyXL/QueryTableFields.html +1 -1
- data/rdoc/RubyXL/QueryTableRefresh.html +1 -1
- data/rdoc/RubyXL/RID.html +1 -1
- data/rdoc/RubyXL/RawOOXML.html +3 -3
- data/rdoc/RubyXL/Reference.html +34 -12
- data/rdoc/RubyXL/Relationship.html +1 -1
- data/rdoc/RubyXL/RelationshipSupport/ClassMehods.html +2 -2
- data/rdoc/RubyXL/RelationshipSupport.html +7 -7
- data/rdoc/RubyXL/RevisionPointer.html +1 -1
- data/rdoc/RubyXL/RichText.html +2 -2
- data/rdoc/RubyXL/RichTextRun.html +2 -2
- data/rdoc/RubyXL/Row.html +10 -10
- data/rdoc/RubyXL/RowExt.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 +2 -2
- data/rdoc/RubyXL/ShapeGuide.html +1 -1
- data/rdoc/RubyXL/ShapeTextRectangle.html +1 -1
- data/rdoc/RubyXL/SharedStringsTable.html +8 -8
- data/rdoc/RubyXL/Sheet.html +1 -1
- data/rdoc/RubyXL/SheetCalculationProperties.html +1 -1
- data/rdoc/RubyXL/SheetData.html +3 -3
- data/rdoc/RubyXL/SheetDataExt.html +1 -1
- data/rdoc/RubyXL/SheetDataSet.html +1 -1
- data/rdoc/RubyXL/SheetMetadata.html +108 -0
- data/rdoc/RubyXL/SheetName.html +1 -1
- data/rdoc/RubyXL/SheetNames.html +1 -1
- data/rdoc/RubyXL/Sheets.html +1 -1
- data/rdoc/RubyXL/SlicerCacheFile.html +1 -1
- data/rdoc/RubyXL/SlicerFile.html +1 -1
- 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 +3 -3
- data/rdoc/RubyXL/Stop.html +1 -1
- data/rdoc/RubyXL/StringNode.html +1 -1
- data/rdoc/RubyXL/StringNodeW3C.html +3 -3
- data/rdoc/RubyXL/StringValue.html +1 -1
- data/rdoc/RubyXL/Stylesheet.html +6 -6
- data/rdoc/RubyXL/TableFile.html +1 -1
- 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 +5 -5
- data/rdoc/RubyXL/TextImportSettings.html +1 -1
- data/rdoc/RubyXL/Theme.html +4 -4
- data/rdoc/RubyXL/ThemeElements.html +1 -1
- data/rdoc/RubyXL/ThumbnailFile.html +1 -1
- data/rdoc/RubyXL/Top10.html +1 -1
- data/rdoc/RubyXL/VMLDrawingFile.html +2 -2
- data/rdoc/RubyXL/Variant.html +1 -1
- data/rdoc/RubyXL/Vector.html +2 -2
- 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/WebQueryProperties.html +1 -1
- data/rdoc/RubyXL/Workbook.html +29 -26
- data/rdoc/RubyXL/WorkbookConvenienceMethods.html +63 -19
- data/rdoc/RubyXL/WorkbookProperties.html +1 -1
- data/rdoc/RubyXL/WorkbookProtection.html +1 -1
- data/rdoc/RubyXL/WorkbookRoot.html +6 -6
- data/rdoc/RubyXL/WorkbookView.html +1 -1
- data/rdoc/RubyXL/WorkbookViews.html +1 -1
- data/rdoc/RubyXL/Worksheet.html +31 -7
- data/rdoc/RubyXL/WorksheetConvenienceMethods.html +72 -72
- 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/RubyXL.html +1 -1
- data/rdoc/created.rid +44 -44
- data/rdoc/index.html +3 -2
- data/rdoc/js/search_index.js +1 -1
- data/rdoc/js/search_index.js.gz +0 -0
- data/rdoc/table_of_contents.html +36 -2
- data/rubyXL.gemspec +5 -4
- data/spec/lib/cell_spec.rb +14 -7
- data/spec/lib/parser_spec.rb +22 -26
- data/spec/lib/reference_spec.rb +8 -2
- data/spec/lib/rgb_color_spec.rb +13 -2
- data/spec/lib/stylesheet_spec.rb +3 -6
- data/spec/lib/text_spec.rb +1 -5
- data/spec/lib/workbook_spec.rb +12 -2
- data/spec/lib/worksheet_spec.rb +577 -535
- data/spec/spec_helper.rb +2 -0
- data/test/test_parse_write.rb +3 -3
- metadata +4 -3
@@ -15,7 +15,6 @@ require 'rubyXL/objects/query_table'
|
|
15
15
|
require 'rubyXL/worksheet'
|
16
16
|
|
17
17
|
module RubyXL
|
18
|
-
|
19
18
|
# Eventually, the entire code for Worksheet will be moved here. One small step at a time!
|
20
19
|
|
21
20
|
# http://www.datypic.com/sc/ooxml/e-ssml_outlinePr-1.html
|
@@ -58,7 +57,7 @@ module RubyXL
|
|
58
57
|
end
|
59
58
|
|
60
59
|
class WorksheetFormatProperties < OOXMLObject
|
61
|
-
define_attribute(:baseColWidth, :int,
|
60
|
+
define_attribute(:baseColWidth, :int, :default => 8)
|
62
61
|
define_attribute(:defaultColWidth, :double)
|
63
62
|
define_attribute(:defaultRowHeight, :double, :required => true)
|
64
63
|
define_attribute(:customHeight, :bool, :default => false)
|
@@ -83,7 +82,7 @@ module RubyXL
|
|
83
82
|
define_attribute(:blackAndWhite, :bool, :default => false)
|
84
83
|
define_attribute(:draft, :bool, :default => false)
|
85
84
|
define_attribute(:cellComments, RubyXL::ST_CellComments, :default => 'none')
|
86
|
-
define_attribute(:useFirstPageNumber, :bool,
|
85
|
+
define_attribute(:useFirstPageNumber, :bool, :default => false)
|
87
86
|
define_attribute(:errors, RubyXL::ST_PrintError, :default => 'displayed')
|
88
87
|
define_attribute(:horizontalDpi, :int, :default => 600)
|
89
88
|
define_attribute(:verticalDpi, :int, :default => 600)
|
@@ -166,7 +165,7 @@ module RubyXL
|
|
166
165
|
class ConditionalFormatValue < OOXMLObject
|
167
166
|
define_attribute(:type, RubyXL::ST_CfvoType, :required => true)
|
168
167
|
define_attribute(:val, :string)
|
169
|
-
define_attribute(:gte, :bool,
|
168
|
+
define_attribute(:gte, :bool, :default => true)
|
170
169
|
define_child_node(RubyXL::ExtensionStorageArea)
|
171
170
|
define_element_name 'cfvo'
|
172
171
|
end
|
@@ -212,7 +211,7 @@ module RubyXL
|
|
212
211
|
define_attribute(:timePeriod, RubyXL::ST_TimePeriod)
|
213
212
|
define_attribute(:rank, :int)
|
214
213
|
define_attribute(:stdDev, :int)
|
215
|
-
define_attribute(:equalAverage, :bool,
|
214
|
+
define_attribute(:equalAverage, :bool, :default => false)
|
216
215
|
define_child_node(RubyXL::Formula, :collection => true, :node_name => :formula, :accessor => :formulas)
|
217
216
|
define_child_node(RubyXL::ColorScale)
|
218
217
|
define_child_node(RubyXL::DataBar)
|
@@ -301,7 +300,7 @@ module RubyXL
|
|
301
300
|
|
302
301
|
# http://www.datypic.com/sc/ooxml/e-ssml_hyperlink-1.html
|
303
302
|
class Hyperlink < OOXMLObject
|
304
|
-
define_attribute(:ref,
|
303
|
+
define_attribute(:ref, :ref, :required => true)
|
305
304
|
define_relationship
|
306
305
|
define_attribute(:location, :string)
|
307
306
|
define_attribute(:tooltip, :string)
|
@@ -408,9 +407,9 @@ module RubyXL
|
|
408
407
|
define_attribute(:hiddenRows, :bool, :default => false)
|
409
408
|
define_attribute(:hiddenColumns, :bool, :default => false)
|
410
409
|
define_attribute(:state, RubyXL::ST_Visibility, :default => 'visible')
|
411
|
-
define_attribute(:filterUnique, :bool,
|
410
|
+
define_attribute(:filterUnique, :bool, :default => false)
|
412
411
|
define_attribute(:view, RubyXL::ST_SheetViewType, :default => 'normal')
|
413
|
-
define_attribute(:showRuler, :bool,
|
412
|
+
define_attribute(:showRuler, :bool, :default => true)
|
414
413
|
define_attribute(:topLeftCell, :ref)
|
415
414
|
define_child_node(RubyXL::Pane)
|
416
415
|
define_child_node(RubyXL::Selection)
|
@@ -433,9 +432,9 @@ module RubyXL
|
|
433
432
|
|
434
433
|
# http://www.datypic.com/sc/ooxml/e-ssml_control-1.html
|
435
434
|
class EmbeddedControl < OOXMLObject
|
436
|
-
define_attribute(:shapeId, :int,
|
435
|
+
define_attribute(:shapeId, :int, :required => true)
|
437
436
|
define_relationship(:required => true)
|
438
|
-
define_attribute(:name,
|
437
|
+
define_attribute(:name, :string)
|
439
438
|
define_element_name 'control'
|
440
439
|
end
|
441
440
|
|
@@ -489,7 +488,7 @@ module RubyXL
|
|
489
488
|
|
490
489
|
# http://www.datypic.com/sc/ooxml/e-ssml_customPr-1.html
|
491
490
|
class CustomProperty < OOXMLObject
|
492
|
-
define_attribute(:name,
|
491
|
+
define_attribute(:name, :string, :required => true)
|
493
492
|
define_relationship(:required => true)
|
494
493
|
define_element_name 'customPr'
|
495
494
|
end
|
@@ -546,7 +545,7 @@ module RubyXL
|
|
546
545
|
define_attribute(:cacheIndex, :bool, :default => false)
|
547
546
|
define_attribute(:outline, :bool, :default => true)
|
548
547
|
define_attribute(:offset, :ref)
|
549
|
-
define_attribute(:collapsedLevelsAreSubtotals, :bool,
|
548
|
+
define_attribute(:collapsedLevelsAreSubtotals, :bool, :default => false)
|
550
549
|
define_attribute(:axis, RubyXL::ST_Axis)
|
551
550
|
define_attribute(:fieldPosition, :int, :default => 0)
|
552
551
|
define_child_node(RubyXL::PivotReferences)
|
@@ -597,10 +596,10 @@ module RubyXL
|
|
597
596
|
define_attribute(:zoomScaleNormal, :uint, :default => 0)
|
598
597
|
define_attribute(:zoomScaleSheetLayoutView, :uint, :default => 0)
|
599
598
|
define_attribute(:zoomScalePageLayoutView, :uint, :default => 0)
|
600
|
-
define_attribute(:workbookViewId, :uint, :required => true, :default => 0
|
599
|
+
define_attribute(:workbookViewId, :uint, :required => true, :default => 0)
|
601
600
|
define_child_node(RubyXL::Pane)
|
602
601
|
define_child_node(RubyXL::Selection, :collection => true, :accessor => :selections)
|
603
|
-
define_child_node(RubyXL::PivotTableSelection, :collection => true, :accessor => :pivot_table_selections
|
602
|
+
define_child_node(RubyXL::PivotTableSelection, :collection => true, :accessor => :pivot_table_selections)
|
604
603
|
define_child_node(RubyXL::ExtensionStorageArea)
|
605
604
|
define_element_name 'sheetView'
|
606
605
|
end
|
@@ -614,8 +613,8 @@ module RubyXL
|
|
614
613
|
|
615
614
|
# http://www.datypic.com/sc/ooxml/e-ssml_worksheet.html
|
616
615
|
class Worksheet < OOXMLTopLevelObject
|
617
|
-
CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml'
|
618
|
-
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet'
|
616
|
+
CONTENT_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml'.freeze
|
617
|
+
REL_TYPE = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet'.freeze
|
619
618
|
|
620
619
|
include RubyXL::RelationshipSupport
|
621
620
|
|
@@ -651,7 +650,7 @@ module RubyXL
|
|
651
650
|
define_child_node(RubyXL::SortState)
|
652
651
|
define_child_node(RubyXL::DataConsolidate)
|
653
652
|
define_child_node(RubyXL::CustomSheetViews)
|
654
|
-
define_child_node(RubyXL::MergedCells,
|
653
|
+
define_child_node(RubyXL::MergedCells, :accessor => :merged_cells)
|
655
654
|
define_child_node(RubyXL::PhoneticProperties)
|
656
655
|
define_child_node(RubyXL::ConditionalFormatting, :collection => [0..-1])
|
657
656
|
define_child_node(RubyXL::DataValidations)
|
@@ -677,11 +676,11 @@ module RubyXL
|
|
677
676
|
define_child_node(RubyXL::ExtensionStorageArea)
|
678
677
|
define_child_node(RubyXL::AlternateContent)
|
679
678
|
define_element_name 'worksheet'
|
680
|
-
set_namespaces('http://schemas.openxmlformats.org/spreadsheetml/2006/main'
|
679
|
+
set_namespaces('http://schemas.openxmlformats.org/spreadsheetml/2006/main' => nil,
|
681
680
|
'http://schemas.openxmlformats.org/officeDocument/2006/relationships' => 'r',
|
682
|
-
'http://schemas.openxmlformats.org/markup-compatibility/2006'
|
683
|
-
'http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac'
|
684
|
-
'urn:schemas-microsoft-com:mac:vml'
|
681
|
+
'http://schemas.openxmlformats.org/markup-compatibility/2006' => 'mc',
|
682
|
+
'http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac' => 'x14ac',
|
683
|
+
'urn:schemas-microsoft-com:mac:vml' => 'mv')
|
685
684
|
|
686
685
|
attr_accessor :workbook, :state, :sheet_name, :sheet_id, :rels
|
687
686
|
|
@@ -752,7 +751,12 @@ module RubyXL
|
|
752
751
|
workbook.stylesheet.cell_xfs[get_row_style(row)]
|
753
752
|
end
|
754
753
|
|
754
|
+
def cell_at(ref)
|
755
|
+
reference = RubyXL::Reference.new(ref)
|
756
|
+
raise "Invalid reference: #{ref}" unless reference.valid? && reference.single_cell?
|
757
|
+
sheet_data&.rows&.[](reference.first_row)&.cells&.[](reference.first_col)
|
758
|
+
end
|
759
|
+
|
755
760
|
include LegacyWorksheet
|
756
761
|
end
|
757
|
-
|
758
762
|
end
|
data/lib/rubyXL/parser.rb
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
module RubyXL
|
2
2
|
class Parser
|
3
|
-
|
4
3
|
# Parse <tt>.xslx</tt> file by reading it from local disk.
|
5
4
|
def self.parse(src_file_path)
|
6
5
|
begin
|
@@ -18,12 +17,11 @@ module RubyXL
|
|
18
17
|
def self.parse_buffer(buffer)
|
19
18
|
root = nil # Zip::File.open_buffer somehow fails to return the value from the block :(
|
20
19
|
begin
|
21
|
-
::Zip::File.open_buffer(buffer) { |zip_file| root = RubyXL::WorkbookRoot.parse_zip_file(zip_file)
|
20
|
+
::Zip::File.open_buffer(buffer) { |zip_file| root = RubyXL::WorkbookRoot.parse_zip_file(zip_file) }
|
22
21
|
root.workbook
|
23
22
|
rescue ::Zip::Error => e
|
24
23
|
raise e, "XLSX file format error: #{e}", e.backtrace
|
25
24
|
end
|
26
25
|
end
|
27
|
-
|
28
26
|
end
|
29
27
|
end
|
data/lib/rubyXL/worksheet.rb
CHANGED
@@ -1,98 +1,97 @@
|
|
1
1
|
module RubyXL
|
2
|
-
module LegacyWorksheet
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
c.raw_value = data
|
49
|
-
else
|
50
|
-
case data
|
51
|
-
when Numeric then c.raw_value = data
|
52
|
-
when String then
|
2
|
+
module LegacyWorksheet
|
3
|
+
include Enumerable
|
4
|
+
|
5
|
+
def initialize(params = {})
|
6
|
+
super
|
7
|
+
self.workbook = params[:workbook]
|
8
|
+
self.sheet_name = params[:sheet_name]
|
9
|
+
self.sheet_id = params[:sheet_id]
|
10
|
+
self.sheet_data = RubyXL::SheetData.new
|
11
|
+
self.cols = RubyXL::ColumnRanges.new
|
12
|
+
@comments = [] # Do not optimize! These are arrays, so they will share the pointer!
|
13
|
+
@printer_settings = []
|
14
|
+
@generic_storage = []
|
15
|
+
end
|
16
|
+
|
17
|
+
# allows for easier access to sheet_data
|
18
|
+
def [](row = 0)
|
19
|
+
sheet_data[row]
|
20
|
+
end
|
21
|
+
|
22
|
+
def each
|
23
|
+
sheet_data.rows.each { |row| yield(row) }
|
24
|
+
end
|
25
|
+
|
26
|
+
def add_row(row_index = 0, params = {})
|
27
|
+
new_row = RubyXL::Row.new(params)
|
28
|
+
new_row.worksheet = self
|
29
|
+
sheet_data.rows[row_index] = new_row
|
30
|
+
end
|
31
|
+
|
32
|
+
def add_cell(row_index = 0, column_index = 0, data = '', formula = nil, overwrite = true)
|
33
|
+
validate_workbook
|
34
|
+
validate_nonnegative(row_index)
|
35
|
+
validate_nonnegative(column_index)
|
36
|
+
row = sheet_data.rows[row_index] || add_row(row_index)
|
37
|
+
|
38
|
+
c = row.cells[column_index]
|
39
|
+
|
40
|
+
if overwrite || c.nil?
|
41
|
+
c = RubyXL::Cell.new
|
42
|
+
c.worksheet = self
|
43
|
+
c.row = row_index
|
44
|
+
c.column = column_index
|
45
|
+
|
46
|
+
if formula then
|
47
|
+
c.formula = RubyXL::Formula.new(:expression => formula)
|
53
48
|
c.raw_value = data
|
54
|
-
|
55
|
-
|
56
|
-
c.
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
49
|
+
else
|
50
|
+
case data
|
51
|
+
when Numeric then c.raw_value = data
|
52
|
+
when String then
|
53
|
+
c.raw_value = data
|
54
|
+
c.datatype = RubyXL::DataType::RAW_STRING
|
55
|
+
when RubyXL::RichText then
|
56
|
+
c.is = data
|
57
|
+
c.datatype = RubyXL::DataType::INLINE_STRING
|
58
|
+
when Time, Date, DateTime then
|
59
|
+
c.raw_value = workbook.date_to_num(data)
|
60
|
+
when NilClass then nil
|
61
|
+
end
|
61
62
|
end
|
63
|
+
|
64
|
+
range = cols && cols.locate_range(column_index)
|
65
|
+
c.style_index = row.style_index || (range && range.style_index) || 0
|
66
|
+
row.cells[column_index] = c
|
62
67
|
end
|
63
68
|
|
64
|
-
|
65
|
-
c.style_index = row.style_index || (range && range.style_index) || 0
|
66
|
-
row.cells[column_index] = c
|
69
|
+
c
|
67
70
|
end
|
68
71
|
|
69
|
-
|
70
|
-
end
|
72
|
+
private
|
71
73
|
|
72
|
-
|
74
|
+
# validates Workbook, ensures that this worksheet is in @workbook
|
75
|
+
def validate_workbook()
|
76
|
+
unless @workbook.nil? || @workbook.worksheets.nil?
|
77
|
+
return if @workbook.worksheets.any? { |sheet| sheet.equal?(self) }
|
78
|
+
end
|
73
79
|
|
74
|
-
|
75
|
-
def validate_workbook()
|
76
|
-
unless @workbook.nil? || @workbook.worksheets.nil?
|
77
|
-
return if @workbook.worksheets.any? { |sheet| sheet.equal?(self) }
|
80
|
+
raise "This worksheet #{self} is not in workbook #{@workbook}"
|
78
81
|
end
|
79
82
|
|
80
|
-
|
81
|
-
|
83
|
+
# Ensures that storage space for a cell with +row_index+ and +column_index+
|
84
|
+
# exists in +sheet_data+ arrays, growing them up if necessary.
|
85
|
+
def ensure_cell_exists(row_index, column_index = 0)
|
86
|
+
validate_nonnegative(row_index)
|
87
|
+
validate_nonnegative(column_index)
|
82
88
|
|
83
|
-
|
84
|
-
|
85
|
-
def ensure_cell_exists(row_index, column_index = 0)
|
86
|
-
validate_nonnegative(row_index)
|
87
|
-
validate_nonnegative(column_index)
|
88
|
-
|
89
|
-
sheet_data.rows[row_index] || add_row(row_index)
|
90
|
-
end
|
91
|
-
|
92
|
-
def validate_nonnegative(row_or_col)
|
93
|
-
raise 'Row and Column arguments must be nonnegative' if row_or_col < 0
|
94
|
-
end
|
95
|
-
private :validate_nonnegative
|
89
|
+
sheet_data.rows[row_index] || add_row(row_index)
|
90
|
+
end
|
96
91
|
|
97
|
-
|
92
|
+
def validate_nonnegative(row_or_col)
|
93
|
+
raise 'Row and Column arguments must be nonnegative' if row_or_col < 0
|
94
|
+
end
|
95
|
+
private :validate_nonnegative
|
96
|
+
end # end class
|
98
97
|
end
|
data/lib/rubyXL.rb
CHANGED
data/rdoc/README_rdoc.html
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
<head>
|
5
5
|
<meta charset="UTF-8">
|
6
6
|
|
7
|
-
<title>README - rubyXL 3.4.
|
7
|
+
<title>README - rubyXL 3.4.24</title>
|
8
8
|
|
9
9
|
<script type="text/javascript">
|
10
10
|
var rdoc_rel_prefix = "./";
|
@@ -93,6 +93,7 @@
|
|
93
93
|
<li><a href="#label-Insert+Cell">Insert Cell</a>
|
94
94
|
<li><a href="#label-Delete+Cell">Delete Cell</a>
|
95
95
|
<li><a href="#label-Modifying+Cell+Format">Modifying Cell Format</a>
|
96
|
+
<li><a href="#label-Add+hyperlink+to+a+Cell">Add hyperlink to a Cell</a>
|
96
97
|
<li><a href="#label-I-2FO">I/O</a>
|
97
98
|
<li><a href="#label-Miscellaneous">Miscellaneous</a>
|
98
99
|
<li><a href="#label-Suppress+warnings+about+malformed+input+files">Suppress warnings about malformed input files</a>
|
@@ -297,38 +298,30 @@
|
|
297
298
|
|
298
299
|
<h5 id="label-Horizontal">Horizontal<span><a href="#label-Horizontal">¶</a> <a href="#top">↑</a></span></h5>
|
299
300
|
|
300
|
-
<
|
301
|
-
|
302
|
-
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_horizontal_alignment</span>(<span class="ruby-string">'center'</span>) <span class="ruby-comment"># Sets A1 to be centered</span>
|
301
|
+
<pre class="ruby"><span class="ruby-comment"># Possible alignments: center, distributed, justify, left, right</span>
|
302
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_horizontal_alignment</span>(<span class="ruby-string">'center'</span>) <span class="ruby-comment"># Sets A1 to be centered</span>
|
303
303
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_row_horizontal_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-string">'justify'</span>) <span class="ruby-comment"># Sets first row to be justified</span>
|
304
304
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_column_horizontal_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-string">'right'</span>) <span class="ruby-comment"># Sets first column to be right-aligned</span>
|
305
305
|
</pre>
|
306
306
|
|
307
307
|
<h5 id="label-Vertical">Vertical<span><a href="#label-Vertical">¶</a> <a href="#top">↑</a></span></h5>
|
308
308
|
|
309
|
-
<
|
310
|
-
|
311
|
-
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_vertical_alignment</span>(<span class="ruby-string">'bottom'</span>) <span class="ruby-comment"># Sets A1 to be bottom aligned</span>
|
309
|
+
<pre class="ruby"><span class="ruby-comment"># Possible alignments: bottom, center, distributed, top</span>
|
310
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_vertical_alignment</span>(<span class="ruby-string">'bottom'</span>) <span class="ruby-comment"># Sets A1 to be bottom aligned</span>
|
312
311
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_row_vertical_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-string">'distributed'</span>) <span class="ruby-comment"># Sets first row to be distributed vertically</span>
|
313
312
|
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_column_vertical_alignment</span>(<span class="ruby-value">0</span>, <span class="ruby-string">'top'</span>) <span class="ruby-comment"># Sets first column to be top aligned</span>
|
314
313
|
</pre>
|
315
314
|
|
316
315
|
<h5 id="label-Rotation">Rotation<span><a href="#label-Rotation">¶</a> <a href="#top">↑</a></span></h5>
|
317
316
|
|
318
|
-
<pre class="ruby"><span class="ruby-
|
317
|
+
<pre class="ruby"><span class="ruby-comment"># Possible values:</span>
|
318
|
+
<span class="ruby-comment"># * 0-90 - degrees counterclockwise, around the bottom LEFT corner of the cell;</span>
|
319
|
+
<span class="ruby-comment"># * 91-179 - degrees clockwise, around the bottom RIGHT corner of the cell;</span>
|
320
|
+
<span class="ruby-comment"># * 180-254 - degrees clockwise, around the bottom LEFT corner of the cell, text becomes progressively invisible</span>
|
321
|
+
<span class="ruby-comment"># * 255 - text is in normal rotation but displayed vertically (one letter under another), line feed starts new line to the right of the previous.</span>
|
322
|
+
<span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">sheet_data</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>].<span class="ruby-identifier">change_text_rotation</span>(<span class="ruby-value">90</span>) <span class="ruby-comment"># Sets A1 to be rotated by 90 degrees</span>
|
319
323
|
</pre>
|
320
324
|
|
321
|
-
<p>Values:</p>
|
322
|
-
<ul><li>
|
323
|
-
<p>0-90 - degrees counterclockwise, around the bottom LEFT corner of the cell;</p>
|
324
|
-
</li><li>
|
325
|
-
<p>91-179 - degrees clockwise, around the bottom RIGHT corner of the cell;</p>
|
326
|
-
</li><li>
|
327
|
-
<p>180-254 - degrees clockwise, around the bottom LEFT corner of the cell, text becomes progressively invisible</p>
|
328
|
-
</li><li>
|
329
|
-
<p>255 - text is in normal rotation but displayed vertically (one letter under another), line feed starts new line to the right of the previous.</p>
|
330
|
-
</li></ul>
|
331
|
-
|
332
325
|
<h4 id="label-Changing+Row+Height">Changing Row Height<span><a href="#label-Changing+Row+Height">¶</a> <a href="#top">↑</a></span></h4>
|
333
326
|
|
334
327
|
<pre class="ruby"><span class="ruby-identifier">worksheet</span>.<span class="ruby-identifier">change_row_height</span>(<span class="ruby-value">0</span>, <span class="ruby-value">30</span>) <span class="ruby-comment"># Sets first row height to 30</span>
|
@@ -407,9 +400,16 @@
|
|
407
400
|
<pre class="ruby"><span class="ruby-identifier">cell</span> = <span class="ruby-identifier">worksheet</span>[<span class="ruby-value">0</span>][<span class="ruby-value">0</span>]
|
408
401
|
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">set_number_format</span> <span class="ruby-string">'0.0000%'</span> <span class="ruby-comment"># For formats, see https://support.office.com/en-us/article/5026bbd6-04bc-48cd-bf33-80f18b4eae68</span>
|
409
402
|
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">change_text_wrap</span>(<span class="ruby-keyword">true</span>) <span class="ruby-comment"># Makes the text in the cell to wrap.</span>
|
403
|
+
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">change_shrink_to_fit</span>(<span class="ruby-keyword">true</span>) <span class="ruby-comment"># Makes the text in the cell to shrink to fit.</span>
|
410
404
|
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">change_text_indent</span>(<span class="ruby-value">1</span>) <span class="ruby-comment"># Indents the text in the cell by 1 level</span>
|
411
405
|
</pre>
|
412
406
|
|
407
|
+
<h4 id="label-Add+hyperlink+to+a+Cell">Add hyperlink to a Cell<span><a href="#label-Add+hyperlink+to+a+Cell">¶</a> <a href="#top">↑</a></span></h4>
|
408
|
+
|
409
|
+
<pre class="ruby"><span class="ruby-identifier">cell</span>.<span class="ruby-identifier">add_hyperlink</span>(<span class="ruby-string">'http://example.com'</span>)
|
410
|
+
<span class="ruby-identifier">cell</span>.<span class="ruby-identifier">add_hyperlink</span>(<span class="ruby-string">'http://example.com'</span>, <span class="ruby-string">'Some tooltip text'</span>)
|
411
|
+
</pre>
|
412
|
+
|
413
413
|
<h2 id="label-I-2FO">I/O<span><a href="#label-I-2FO">¶</a> <a href="#top">↑</a></span></h2>
|
414
414
|
|
415
415
|
<p>By default, the gem operates with files on the local filesystem:</p>
|
@@ -463,7 +463,7 @@
|
|
463
463
|
|
464
464
|
<h2 id="label-Copyright">Copyright<span><a href="#label-Copyright">¶</a> <a href="#top">↑</a></span></h2>
|
465
465
|
|
466
|
-
<p>Copyright © 2011 Vivek Bhagwat, 2013-
|
466
|
+
<p>Copyright © 2011 Vivek Bhagwat, 2013-2022 Wesha. See LICENSE.txt for further details.</p>
|
467
467
|
|
468
468
|
</main>
|
469
469
|
|
data/rdoc/RubyXL/AExtension.html
CHANGED
data/rdoc/RubyXL/ActiveX.html
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
<head>
|
5
5
|
<meta charset="UTF-8">
|
6
6
|
|
7
|
-
<title>class RubyXL::ActiveX - rubyXL 3.4.
|
7
|
+
<title>class RubyXL::ActiveX - rubyXL 3.4.24</title>
|
8
8
|
|
9
9
|
<script type="text/javascript">
|
10
10
|
var rdoc_rel_prefix = "../";
|
@@ -127,10 +127,10 @@
|
|
127
127
|
|
128
128
|
|
129
129
|
<div class="method-source-code" id="attach_relationship-source">
|
130
|
-
<pre><span class="ruby-comment"># File lib/rubyXL/objects/storage.rb, line
|
130
|
+
<pre><span class="ruby-comment"># File lib/rubyXL/objects/storage.rb, line 177</span>
|
131
131
|
<span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">attach_relationship</span>(<span class="ruby-identifier">rid</span>, <span class="ruby-identifier">rf</span>)
|
132
132
|
<span class="ruby-keyword">case</span> <span class="ruby-identifier">rf</span>
|
133
|
-
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">ChartFile</span>
|
133
|
+
<span class="ruby-keyword">when</span> <span class="ruby-constant">RubyXL</span><span class="ruby-operator">::</span><span class="ruby-constant">ChartFile</span> <span class="ruby-keyword">then</span> <span class="ruby-identifier">store_relationship</span>(<span class="ruby-identifier">rf</span>) <span class="ruby-comment"># TODO</span>
|
134
134
|
<span class="ruby-keyword">else</span> <span class="ruby-identifier">store_relationship</span>(<span class="ruby-identifier">rf</span>, <span class="ruby-value">:unknown</span>)
|
135
135
|
<span class="ruby-keyword">end</span>
|
136
136
|
<span class="ruby-keyword">end</span></pre>
|
data/rdoc/RubyXL/Alignment.html
CHANGED
data/rdoc/RubyXL/Authors.html
CHANGED
data/rdoc/RubyXL/AutoFilter.html
CHANGED