1. 09 1月, 2024 1 次提交
    • xurime's avatar
      This closes #1777, fix the GetStyle or GetConditionalStyle function to returns... · 79265655
      xurime 提交于
      This closes #1777, fix the GetStyle or GetConditionalStyle function to returns incorrect DecimalPlaces field value
      
      - Update documentation for the NewStyle function
      - Update unit tests
      - Update dependencies Go module
      - Update GitHub workflow dependencies package version
      - Update copyright agreement statement
      79265655
  2. 28 12月, 2023 1 次提交
  3. 18 11月, 2023 1 次提交
  4. 11 11月, 2023 1 次提交
  5. 16 9月, 2023 1 次提交
    • xurime's avatar
      Introduce the new exported function `AddSlicer` for adding table slicer · e3b7dad6
      xurime 提交于
      - Fix a v2.8.0 regression bug, generate workbook corruption caused by incorrect MRU colors style parts
      - Fix corrupted workbooks generated when adding tables in some cases
      - Added several exported extension list child element URI constants
      - Move part of the internal constant and variables definition to the template source code file
      - Updated unit tests
      e3b7dad6
  6. 09 9月, 2023 1 次提交
    • xurime's avatar
      This fixes #1645 and fixes #1655 · 49706c90
      xurime 提交于
      - Breaking changes, change the data type for the `HeaderFooterOptions` structure fields `AlignWithMargins` and `ScaleWithDoc` as a pointer
      - Fixed panic on `AutoFilter` by adding nil pointer guard for local sheet ID
      - Allow dot character in the defined name, table name, or pivot table name
      - Update the unit tests
      49706c90
  7. 08 6月, 2023 1 次提交
  8. 30 5月, 2023 1 次提交
  9. 24 4月, 2023 1 次提交
  10. 19 4月, 2023 1 次提交
  11. 22 2月, 2023 1 次提交
  12. 13 2月, 2023 1 次提交
  13. 08 2月, 2023 1 次提交
  14. 07 2月, 2023 1 次提交
    • xurime's avatar
      This closes #1462 and closes #1464 · 3e240609
      xurime 提交于
      - Support creating a conditional format with a "stop if true" rule
      - Support set border color and create solid color for the color data bar
      - Fix incorrect cell type when modifying string cell with the time number
      - Update unit test for the add pivot table to avoid pivot table range overlap
      3e240609
  15. 03 2月, 2023 1 次提交
  16. 02 1月, 2023 1 次提交
    • xurime's avatar
      This fixed worksheet protection issue · b39626fa
      xurime 提交于
      - Update example code in the documentation
      - Update unit tests
      - Rename `PictureOptions` to `GraphicOptions`
      - Adjust partial options fields data types for the `PictureOptions` and `Shape` structure
      - Update dependencies module
      b39626fa
  17. 30 12月, 2022 1 次提交
    • xurime's avatar
      Breaking change: changed the function signature for 11 exported functions · f58dabd4
      xurime 提交于
      * Change
          `func (f *File) NewConditionalStyle(style string) (int, error)`
          to
          `func (f *File) NewConditionalStyle(style *Style) (int, error)`
      * Change
          `func (f *File) NewStyle(style interface{}) (int, error)`
           to
          `func (f *File) NewStyle(style *Style) (int, error)`
      * Change
          `func (f *File) AddChart(sheet, cell, opts string, combo ...string) error`
           to
          `func (f *File) AddChart(sheet, cell string, chart *ChartOptions, combo ...*ChartOptions) error`
      * Change
          `func (f *File) AddChartSheet(sheet, opts string, combo ...string) error`
           to
          `func (f *File) AddChartSheet(sheet string, chart *ChartOptions, combo ...*ChartOptions) error`
      * Change
          `func (f *File) AddShape(sheet, cell, opts string) error`
           to
          `func (f *File) AddShape(sheet, cell string, opts *Shape) error`
      * Change
          `func (f *File) AddPictureFromBytes(sheet, cell, opts, name, extension string, file []byte) error`
           to
          `func (f *File) AddPictureFromBytes(sheet, cell, name, extension string, file []byte, opts *PictureOptions) error`
      * Change
          `func (f *File) AddTable(sheet, hCell, vCell, opts string) error`
           to
          `func (f *File) AddTable(sheet, reference string, opts *TableOptions) error`
      * Change
          `func (sw *StreamWriter) AddTable(hCell, vCell, opts string) error`
           to
          `func (sw *StreamWriter) AddTable(reference string, opts *TableOptions) error`
      * Change
          `func (f *File) AutoFilter(sheet, hCell, vCell, opts string) error`
           to
          `func (f *File) AutoFilter(sheet, reference string, opts *AutoFilterOptions) error`
      * Change
          `func (f *File) SetPanes(sheet, panes string) error`
           to
          `func (f *File) SetPanes(sheet string, panes *Panes) error`
      * Change
          `func (sw *StreamWriter) AddTable(hCell, vCell, opts string) error`
           to
          `func (sw *StreamWriter) AddTable(reference string, opts *TableOptions) error`
      * Change
          `func (f *File) SetConditionalFormat(sheet, reference, opts string) error`
           to
          `func (f *File) SetConditionalFormat(sheet, reference string, opts []ConditionalFormatOptions) error`
      * Add exported types:
        * AutoFilterListOptions
        * AutoFilterOptions
        * Chart
        * ChartAxis
        * ChartDimension
        * ChartLegend
        * ChartLine
        * ChartMarker
        * ChartPlotArea
        * ChartSeries
        * ChartTitle
        * ConditionalFormatOptions
        * PaneOptions
        * Panes
        * PictureOptions
        * Shape
        * ShapeColor
        * ShapeLine
        * ShapeParagraph
        * TableOptions
      * This added support for set sheet visible as very hidden
      * Return error when missing required parameters for set defined name
      * Update unit test and comments
      f58dabd4
  18. 16 11月, 2022 1 次提交
  19. 10 10月, 2022 1 次提交
  20. 08 10月, 2022 1 次提交
  21. 29 9月, 2022 1 次提交
    • xurime's avatar
      This closes #1358, made a refactor with breaking changes, see details: · 53a49556
      xurime 提交于
      This made a refactor with breaking changes:
      
      Motivation and Context
      
      When I decided to add set horizontal centered support for this library to resolve #1358, the reason I made this huge breaking change was:
      
      - There are too many exported types for set sheet view, properties, and format properties, although a function using the functional options pattern can be optimized by returning an anonymous function, these types or property set or get function has no binding categorization, so I change these functions like `SetAppProps` to accept a pointer of options structure.
      - Users can not easily find out which properties should be in the `SetSheetPrOptions` or `SetSheetFormatPr` categories
      - Nested properties cannot proceed modify easily
      
      Introduce 5 new export data types:
      `HeaderFooterOptions`, `PageLayoutMarginsOptions`, `PageLayoutOptions`, `SheetPropsOptions`, and `ViewOptions`
      
      Rename 4 exported data types:
      - Rename `PivotTableOption` to `PivotTableOptions`
      - Rename `FormatHeaderFooter` to `HeaderFooterOptions`
      - Rename `FormatSheetProtection` to `SheetProtectionOptions`
      - Rename `SparklineOption` to `SparklineOptions`
      
      Remove 54 exported types:
      `AutoPageBreaks`, `BaseColWidth`, `BlackAndWhite`, `CodeName`, `CustomHeight`, `Date1904`, `DefaultColWidth`, `DefaultGridColor`, `DefaultRowHeight`, `EnableFormatConditionsCalculation`, `FilterPrivacy`, `FirstPageNumber`, `FitToHeight`, `FitToPage`, `FitToWidth`, `OutlineSummaryBelow`, `PageLayoutOption`, `PageLayoutOptionPtr`, `PageLayoutOrientation`, `PageLayoutPaperSize`, `PageLayoutScale`, `PageMarginBottom`, `PageMarginFooter`, `PageMarginHeader`, `PageMarginLeft`, `PageMarginRight`, `PageMarginsOptions`, `PageMarginsOptionsPtr`, `PageMarginTop`, `Published`, `RightToLeft`, `SheetFormatPrOptions`, `SheetFormatPrOptionsPtr`, `SheetPrOption`, `SheetPrOptionPtr`, `SheetViewOption`, `SheetViewOptionPtr`, `ShowFormulas`, `ShowGridLines`, `ShowRowColHeaders`, `ShowRuler`, `ShowZeros`, `TabColorIndexed`, `TabColorRGB`, `TabColorTheme`, `TabColorTint`, `ThickBottom`, `ThickTop`, `TopLeftCell`, `View`, `WorkbookPrOption`, `WorkbookPrOptionPtr`, `ZeroHeight` and `ZoomScale`
      
      Remove 2 exported constants:
      `OrientationPortrait` and `OrientationLandscape`
      
      Change 8 functions:
      - Change the `func (f *File) SetPageLayout(sheet string, opts ...PageLayoutOption) error` to `func (f *File) SetPageLayout(sheet string, opts *PageLayoutOptions) error`
      - Change the `func (f *File) GetPageLayout(sheet string, opts ...PageLayoutOptionPtr) error` to `func (f *File) GetPageLayout(sheet string) (PageLayoutOptions, error)`
      - Change the `func (f *File) SetPageMargins(sheet string, opts ...PageMarginsOptions) error` to `func (f *File) SetPageMargins(sheet string, opts *PageLayoutMarginsOptions) error`
      - Change the `func (f *File) GetPageMargins(sheet string, opts ...PageMarginsOptionsPtr) error` to `func (f *File) GetPageMargins(sheet string) (PageLayoutMarginsOptions, error)`
      - Change the `func (f *File) SetSheetViewOptions(sheet string, viewIndex int, opts ...SheetViewOption) error` to `func (f *File) SetSheetView(sheet string, viewIndex int, opts *ViewOptions) error`
      - Change the `func (f *File) GetSheetViewOptions(sheet string, viewIndex int, opts ...SheetViewOptionPtr) error` to `func (f *File) GetSheetView(sheet string, viewIndex int) (ViewOptions, error)`
      - Change the `func (f *File) SetWorkbookPrOptions(opts ...WorkbookPrOption) error` to `func (f *File) SetWorkbookProps(opts *WorkbookPropsOptions) error`
      - Change the `func (f *File) GetWorkbookPrOptions(opts ...WorkbookPrOptionPtr) error` to `func (f *File) GetWorkbookProps() (WorkbookPropsOptions, error)`
      
      Introduce new function to instead of existing functions:
      - New function `func (f *File) SetSheetProps(sheet string, opts *SheetPropsOptions) error` instead of `func (f *File) SetSheetPrOptions(sheet string, opts ...SheetPrOption) error` and `func (f *File) SetSheetFormatPr(sheet string, opts ...SheetFormatPrOption
      53a49556
  22. 27 8月, 2022 1 次提交
  23. 13 8月, 2022 1 次提交
  24. 18 7月, 2022 1 次提交
  25. 21 6月, 2022 1 次提交
  26. 11 4月, 2022 1 次提交
  27. 05 4月, 2022 1 次提交
  28. 18 3月, 2022 1 次提交
  29. 05 3月, 2022 1 次提交
  30. 17 2月, 2022 1 次提交
    • xurime's avatar
      This closes #1148, resolve limitations when adding VBA project to the workbook · f87c39c4
      xurime 提交于
      Added two exported functions `SetWorkbookPrOptions` and `GetWorkbookPrOptions` to support setting and getting the code name property of the workbook
      Re-order fields of the workbook properties group to improve the compatibility
      Go Modules dependencies upgrade
      Put workbook related operating in new `workbook.go` source code
      Library introduction docs block updated
      f87c39c4
  31. 06 2月, 2022 1 次提交
  32. 15 1月, 2022 1 次提交
  33. 12 1月, 2022 1 次提交
  34. 09 1月, 2022 1 次提交
  35. 08 1月, 2022 1 次提交
  36. 05 9月, 2021 1 次提交
    • xurime's avatar
      This closes #998 · 32b23ef4
      xurime 提交于
      - Support text comparison in the formula, also ref #65
      - `GetCellValue`, `GetRows`, `GetCols`, `Rows` and `Cols` support to specify read cell with raw value, ref #621
      - Add missing properties for the cell formula
      - Update the unit test for the `CalcCellValue`
      32b23ef4
  37. 03 9月, 2021 1 次提交
  38. 13 8月, 2021 1 次提交
  39. 31 7月, 2021 1 次提交
    • A
      Fix data validation issues (#975) · 7ac37edf
      Arnie97 提交于
      * Fix `SetDropList` to allow XML special characters
      
      * This closes #971, allow quotation marks in SetDropList()
      
      This patch included a XML entity mapping table instead of
      xml.EscapeText() to be fully compatible with Microsoft Excel.
      
      * This closes #972, allow more than 255 bytes of validation formulas
      
      This patch changed the string length calculation unit of data
      validation formulas from UTF-8 bytes to UTF-16 code units.
      
      * Add unit tests for SetDropList()
      
      * Fix: allow MaxFloat64 to be used in validation range
      
      17 decimal significant digits should be more than enough to represent
      every IEEE-754 double-precision float number without losing precision,
      and numbers in this form will never reach the Excel limitation of 255
      UTF-16 code units.
      7ac37edf
  40. 29 7月, 2021 1 次提交
    • xurime's avatar
      This closes #971, closes #972 and closes #974 · 7dbf88f2
      xurime 提交于
      - Escape XML character in the drop list
      - Fix incorrect character count limit in the drop list
      - Fix Excel time parse issue in some case
      - Fix custom number format month parse issue in some case
      - Fix corrupted file generated caused by concurrency adding pictures
      7dbf88f2