From fbc3d1cd01ed24f8a8f56bed947af14ed346f60a Mon Sep 17 00:00:00 2001 From: Ri Xu Date: Thu, 25 May 2017 10:57:45 +0800 Subject: [PATCH] - Worksheet conditional formatting support added, relate issue #56; - gofmted with -s --- chart.go | 4 ++-- xmlWorksheet.go | 43 ++++++++++++++++++++++--------------------- 2 files changed, 24 insertions(+), 23 deletions(-) diff --git a/chart.go b/chart.go index 192b582..3ff92b8 100644 --- a/chart.go +++ b/chart.go @@ -390,12 +390,12 @@ func (f *File) drawBarChart(formatSet *formatChart) *cPlotArea { }, } charts := map[string]*cPlotArea{ - "bar": &cPlotArea{ + "bar": { BarChart: &c, CatAx: f.drawPlotAreaCatAx(), ValAx: f.drawPlotAreaValAx(), }, - "bar3D": &cPlotArea{ + "bar3D": { Bar3DChart: &c, CatAx: f.drawPlotAreaCatAx(), ValAx: f.drawPlotAreaValAx(), diff --git a/xmlWorksheet.go b/xmlWorksheet.go index f7188b6..9d18866 100644 --- a/xmlWorksheet.go +++ b/xmlWorksheet.go @@ -6,27 +6,27 @@ import "encoding/xml" // http://schemas.openxmlformats.org/spreadsheetml/2006/main - currently I have // not checked it for completeness - it does as much as I need. type xlsxWorksheet struct { - XMLName xml.Name `xml:"http://schemas.openxmlformats.org/spreadsheetml/2006/main worksheet"` - SheetPr *xlsxSheetPr `xml:"sheetPr"` - Dimension xlsxDimension `xml:"dimension"` - SheetViews xlsxSheetViews `xml:"sheetViews,omitempty"` - SheetFormatPr *xlsxSheetFormatPr `xml:"sheetFormatPr"` - Cols *xlsxCols `xml:"cols,omitempty"` - SheetData xlsxSheetData `xml:"sheetData"` - SheetProtection *xlsxSheetProtection `xml:"sheetProtection"` - MergeCells *xlsxMergeCells `xml:"mergeCells,omitempty"` - ConditionalFormatting *xlsxConditionalFormatting `xml:"conditionalFormatting"` - DataValidations *xlsxDataValidations `xml:"dataValidations"` - Hyperlinks *xlsxHyperlinks `xml:"hyperlinks"` - PrintOptions *xlsxPrintOptions `xml:"printOptions"` - PageMargins *xlsxPageMargins `xml:"pageMargins"` - PageSetUp *xlsxPageSetUp `xml:"pageSetup"` - HeaderFooter *xlsxHeaderFooter `xml:"headerFooter"` - Drawing *xlsxDrawing `xml:"drawing"` - LegacyDrawing *xlsxLegacyDrawing `xml:"legacyDrawing"` - Picture *xlsxPicture `xml:"picture"` - TableParts *xlsxTableParts `xml:"tableParts"` - ExtLst *xlsxExtLst `xml:"extLst"` + XMLName xml.Name `xml:"http://schemas.openxmlformats.org/spreadsheetml/2006/main worksheet"` + SheetPr *xlsxSheetPr `xml:"sheetPr"` + Dimension xlsxDimension `xml:"dimension"` + SheetViews xlsxSheetViews `xml:"sheetViews,omitempty"` + SheetFormatPr *xlsxSheetFormatPr `xml:"sheetFormatPr"` + Cols *xlsxCols `xml:"cols,omitempty"` + SheetData xlsxSheetData `xml:"sheetData"` + SheetProtection *xlsxSheetProtection `xml:"sheetProtection"` + MergeCells *xlsxMergeCells `xml:"mergeCells,omitempty"` + ConditionalFormatting []*xlsxConditionalFormatting `xml:"conditionalFormatting"` + DataValidations *xlsxDataValidations `xml:"dataValidations"` + Hyperlinks *xlsxHyperlinks `xml:"hyperlinks"` + PrintOptions *xlsxPrintOptions `xml:"printOptions"` + PageMargins *xlsxPageMargins `xml:"pageMargins"` + PageSetUp *xlsxPageSetUp `xml:"pageSetup"` + HeaderFooter *xlsxHeaderFooter `xml:"headerFooter"` + Drawing *xlsxDrawing `xml:"drawing"` + LegacyDrawing *xlsxLegacyDrawing `xml:"legacyDrawing"` + Picture *xlsxPicture `xml:"picture"` + TableParts *xlsxTableParts `xml:"tableParts"` + ExtLst *xlsxExtLst `xml:"extLst"` } // xlsxDrawing change r:id to rid in the namespace. @@ -348,6 +348,7 @@ type xlsxSheetProtection struct { // condition is true. This collection expresses conditional formatting rules // applied to a particular cell or range. type xlsxConditionalFormatting struct { + SQRef string `xml:"sqref,attr,omitempty"` CfRule string `xml:",innerxml"` }