Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
3a2ecd4
Update version to 2.6.0
PBfordev Oct 25, 2026
a731d8b
Fix wxExcelSeries::ErrorBar() returning false on success
PBfordev Oct 25, 2026
83a86cb
Remove the FIXME about wxExcelAxis::GetCategoryNames() returning a range
PBfordev Oct 25, 2026
989e204
Allow passing ranges, arrays, and strings to wxExcelSeries::ErrorBar()
PBfordev Oct 25, 2026
3604189
Fix wxExcelWorksheetView::GetSheet() always failing
PBfordev Oct 25, 2026
c4f3f68
Fix the type of wxExcelIconSetCondition::IconSet property
PBfordev Oct 25, 2026
e577b7c
Fix the type of wxExcelWorkbook::GetIconSets()
PBfordev Oct 25, 2026
7d68c4f
Check the getters of windows, protection, and chart elements
PBfordev Oct 25, 2026
7f1d278
Add tests of windows, protection, fills, error bars, and trendlines
PBfordev Oct 25, 2026
4badb42
Allow getting the fill of chart elements as wxExcelChartFillFormat
PBfordev Oct 25, 2026
eb05d7f
Fix the type of wxExcelChart::FullSeriesCollection()
PBfordev Oct 25, 2026
0483edb
Add wxExcelAllowEditRange::SetRange()
PBfordev Oct 25, 2026
63de269
Add wxExcelGradientStops and wxExcelGradientStop
PBfordev Oct 25, 2026
07c3a1b
Fix the values of XlIconSet enumerators
PBfordev Oct 25, 2026
1ccc170
Add tests of chart fills, full series, gradient stops, and icon sets
PBfordev Oct 25, 2026
ce5d805
Remove the GenerateEnums utility
PBfordev Oct 25, 2026
0b9f7f3
Fix wxExcelRange::ApplyNames() ignoring the names and IgnoreRelativeA…
PBfordev Oct 25, 2026
4f09262
Fix the arguments of wxExcelOLEObjects::Add()
PBfordev Oct 25, 2026
e974f8c
Add wxExcelListColumn::GetListDataFormat()
PBfordev Oct 25, 2026
6073dab
Check the getters of shape formats, gradients, and workbook objects
PBfordev Oct 25, 2026
0569f18
Add tests of shapes, gradients, workbook objects, and range methods
PBfordev Oct 25, 2026
002f43e
Add changelog for version 2.6.0
PBfordev Oct 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions .github/workflows/build-msvs2022.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ on:
- '.github/workflows/build-online-docs.yml'
- 'build/vcpkg/**'
- 'docs/**'
- 'util/**'
- 'ReadMe.md'
pull_request:
branches:
Expand All @@ -21,7 +20,6 @@ on:
- '.github/workflows/build-online-docs.yml'
- 'build/vcpkg/**'
- 'docs/**'
- 'util/**'
- 'ReadMe.md'
workflow_dispatch:

Expand Down
2 changes: 0 additions & 2 deletions .github/workflows/build-msvs2026-wxmaster.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ on:
- '.github/workflows/build-online-docs.yml'
- 'build/vcpkg/**'
- 'docs/**'
- 'util/**'
- 'ReadMe.md'
pull_request:
branches:
Expand All @@ -21,7 +20,6 @@ on:
- '.github/workflows/build-online-docs.yml'
- 'build/vcpkg/**'
- 'docs/**'
- 'util/**'
- 'ReadMe.md'
workflow_dispatch:

Expand Down
2 changes: 0 additions & 2 deletions .github/workflows/build-msys2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ on:
- '.github/workflows/build-online-docs.yml'
- 'build/vcpkg/**'
- 'docs/**'
- 'util/**'
- 'ReadMe.md'
pull_request:
branches:
Expand All @@ -21,7 +20,6 @@ on:
- '.github/workflows/build-online-docs.yml'
- 'build/vcpkg/**'
- 'docs/**'
- 'util/**'
- 'ReadMe.md'
workflow_dispatch:

Expand Down
59 changes: 58 additions & 1 deletion docs/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,66 @@

Changes that can break building existing code are marked **[breaks build]**,
changes that alter the behavior of existing code are marked **[behavior change]**.
The changes in versions 2.1, 2.2, 2.3, 2.4, and 2.5, as well as this changelog, were made by
The changes in versions 2.1, 2.2, 2.3, 2.4, 2.5, and 2.6, as well as this changelog, were made by
Claude Opus 5.5 (Anthropic) under the direction of PB.

## 2.6.0 - 2026-10-25

### General

- **[breaks build]** The library names now contain version 2.6, e.g.
*wxAutoExcel26* instead of *wxAutoExcel25*, so build scripts referring to
the library by name must be updated.

### Added

- `wxExcelSeries::ErrorBar()` overloads taking the amounts as `wxExcelRange`
or `wxVariant`, as custom error bars need a range, an array, or a string
with an array constant or a reference.
- `wxExcelChartFillFormat GetFill()` of the chart elements with the Fill
property: `wxExcelChartArea`, `wxExcelPlotArea`, `wxExcelChartTitle`,
`wxExcelAxisTitle`, `wxExcelDisplayUnitLabel`, `wxExcelLegend`,
`wxExcelLegendKey`, `wxExcelSeries`, `wxExcelPoint`, `wxExcelDataLabel`,
`wxExcelDataLabels`, `wxExcelFloor`, `wxExcelWalls`, `wxExcelUpBars`, and
`wxExcelDownBars`, as `wxExcelChartFillFormat` and
`wxExcelChartColorFormat` could not be obtained. Also
`wxExcelChartColorFormat::SetSchemeColor()`.
- `wxExcelGradientStops` and `wxExcelGradientStop`, and
`wxExcelFillFormat::GetGradientStops()`, which was commented out.
- `wxExcelWorkbook::GetIconSets()` without an argument, returning the
`wxExcelIconSets` collection, which could not be obtained.
- `wxExcelAllowEditRange::SetRange()`.
- `wxExcelListColumn::GetListDataFormat()`, as `wxExcelListDataFormat` could
not be obtained.
- `xl3Symbols2`, `xl3Stars`, `xl3Triangles`, `xl5Boxes`, and `xlCustomSet`
enumerators of `XlIconSet`.

### Fixed wrappers

- `wxExcelSeries::ErrorBar()` returned false even when it succeeded.
- **[breaks build]** `wxExcelWorksheetView::GetSheet()` always failed, as it
obtained the worksheet as a string. It now returns `wxExcelWorksheet`.
- **[breaks build]** `wxExcelIconSetCondition::GetIconSet()` and
`SetIconSet()` used `wxExcelIconSets` instead of `wxExcelIconSet`, so the
methods of the returned object failed or returned icons as icon sets.
- **[breaks build]** `wxExcelWorkbook::GetIconSets(XlIconSet)` returned
`wxExcelIconSets` instead of `wxExcelIconSet`.
- **[breaks build]** `wxExcelChart::FullSeriesCollection()` returned
`wxExcelSeriesCollection` instead of `wxExcelFullSeriesCollection`, which
also contains the filtered series.
- **[behavior change]** The values of the `XlIconSet` enumerators from
`xl4Arrows` on were off by one, as they were taken from the VBA
documentation, which omits `xl3Symbols2`, so they selected a different
icon set than named.
- **[behavior change]** `wxExcelRange::ApplyNames()` did not pass the names
to Excel, so all the names were applied instead of the given ones, and
passed False as IgnoreRelativeAbsolute by default instead of leaving Excel
use its default, which is True.
- **[breaks build]** `wxExcelOLEObjects::Add()` had the height as the third
argument instead of the last one and no top, so the position of the added
object could not be given. The arguments are now in the order of Excel,
as in `wxExcelShapes::AddOLEObject()`.

## 2.5.1 - 2026-10-24

### General
Expand Down
2 changes: 1 addition & 1 deletion docs/doxygen/Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ PROJECT_NAME = wxAutoExcel
# could be handy for archiving the generated documentation or if some version
# control system is used.

PROJECT_NUMBER = 2.5.1
PROJECT_NUMBER = 2.6.0

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down
8 changes: 4 additions & 4 deletions docs/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,13 +90,13 @@ wxWidgets dependency transitively, so wxWidgets does not need to be repeated in

# .....
find_package(wxWidgets REQUIRED COMPONENTS core base)
find_package(wxAutoExcel 2.5 REQUIRED CONFIG)
find_package(wxAutoExcel 2.6 REQUIRED CONFIG)
# .....
target_link_libraries(${PROJECT_NAME} PRIVATE wxAutoExcel::wxAutoExcel)

The version is optional. A package of wxAutoExcel is used only for the same major and
minor version, e.g. version 2.5 is found for `find_package(wxAutoExcel 2.5)` but not for
`find_package(wxAutoExcel 2.4)`, as the versions are not compatible.
minor version, e.g. version 2.6 is found for `find_package(wxAutoExcel 2.6)` but not for
`find_package(wxAutoExcel 2.5)`, as the versions are not compatible.

If you did not install wxAutoExcel to a location known to CMake, you may need to tell CMake where to find it.
There are many ways to do that, perhaps the easiest one may be setting CMake variable `wxAutoExcel_ROOT`
Expand Down Expand Up @@ -132,7 +132,7 @@ For example, your application CMakeLists.txt may look like this
FetchContent_Declare(
wxAutoExcel
GIT_REPOSITORY https://github.com/PBfordev/wxAutoExcel
GIT_TAG v2.5.1 # or the tag of another version
GIT_TAG v2.6.0 # or the tag of another version
)
# maybe set some of wxAutoExcel_BUILD options here....
FetchContent_MakeAvailable(wxAutoExcel)
Expand Down
1 change: 1 addition & 0 deletions include/wx/wxAutoExcel.h
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@
#include "wx/wxAutoExcelConnectorFormat.h"
#include "wx/wxAutoExcelControlFormat.h"
#include "wx/wxAutoExcelFillFormat.h"
#include "wx/wxAutoExcelGradientStops.h"
#include "wx/wxAutoExcelGlowFormat.h"
#include "wx/wxAutoExcelLineFormat.h"
#include "wx/wxAutoExcelLinkFormat.h"
Expand Down
7 changes: 7 additions & 0 deletions include/wx/wxAutoExcelAllowEditRanges.h
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,13 @@ class WXDLLIMPEXP_WXAUTOEXCEL wxExcelAllowEditRange : public wxExcelObject
*/
wxExcelRange GetRange();

/**
Sets the range of cells that can be edited on a protected worksheet.

[Excel VBA documentation for AllowEditRange.Range](https://learn.microsoft.com/en-us/office/vba/api/excel.alloweditrange.range)
*/
void SetRange(const wxExcelRange& range);

/**
Returns the title of the range of cells that can edited on a protected sheet.

Expand Down
7 changes: 7 additions & 0 deletions include/wx/wxAutoExcelAxisTitle.h
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,13 @@ namespace wxAutoExcel {
*/
wxExcelCharacters GetCharacters(long start = 1, long* length = NULL);

/**
Returns a ChartFillFormat object that contains fill formatting properties for the object.

[MSDN documentation for AxisTitle.Fill](https://learn.microsoft.com/en-us/office/vba/api/excel.axistitle.fill).
*/
wxExcelChartFillFormat GetFill();

/**
Returns the ChartFormat object. Since Excel 2007.

Expand Down
4 changes: 2 additions & 2 deletions include/wx/wxAutoExcelChart.h
Original file line number Diff line number Diff line change
Expand Up @@ -158,11 +158,11 @@ namespace wxAutoExcel {

//@{
/**
Returns an object that represents either a single series (a Series object) or a collection of all the series (a SeriesCollection collection) in the chart or chart group.
Returns an object that represents either a single series (a Series object) or a collection of all the series (a FullSeriesCollection collection) in the chart, including the filtered ones. Since Excel 2013.

[MSDN documentation for Chart.FullSeriesCollection](https://learn.microsoft.com/en-us/office/vba/api/excel.chart.fullseriescollection).
*/
wxExcelSeriesCollection FullSeriesCollection();
wxExcelFullSeriesCollection FullSeriesCollection();
wxExcelSeries FullSeriesCollection(long index);
//@}

Expand Down
7 changes: 7 additions & 0 deletions include/wx/wxAutoExcelChartArea.h
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,13 @@ namespace wxAutoExcel {
*/
void SetAutoScaleFont(bool autoScaleFont);

/**
Returns a ChartFillFormat object that contains fill formatting properties for the object.

[MSDN documentation for ChartArea.Fill](https://learn.microsoft.com/en-us/office/vba/api/excel.chartarea.fill).
*/
wxExcelChartFillFormat GetFill();

/**
Returns the ChartFormat object Since Excel 2007.

Expand Down
7 changes: 7 additions & 0 deletions include/wx/wxAutoExcelChartColorFormat.h
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,13 @@ namespace wxAutoExcel {
*/
long GetSchemeColor();

/**
Sets the color of a Color object, as an index in the current color scheme.

[MSDN documentation for ChartColorFormat.SchemeColor](https://learn.microsoft.com/en-us/previous-versions/office/developer/office-2007/bb148845%28v=office.12%29).
*/
void SetSchemeColor(long schemeColor);

/**
Returns a Long value that that represents the color format type.

Expand Down
7 changes: 7 additions & 0 deletions include/wx/wxAutoExcelChartTitle.h
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,13 @@ namespace wxAutoExcel {
*/
wxExcelCharacters GetCharacters(long start = 1, long* length = NULL);

/**
Returns a ChartFillFormat object that contains fill formatting properties for the object.

[MSDN documentation for ChartTitle.Fill](https://learn.microsoft.com/en-us/office/vba/api/excel.charttitle.fill).
*/
wxExcelChartFillFormat GetFill();

/**
Returns the ChartFormat object. Since Excel 2007.

Expand Down
14 changes: 14 additions & 0 deletions include/wx/wxAutoExcelDataLabels.h
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,13 @@ namespace wxAutoExcel {
*/
wxExcelCharacters GetCharacters(long start = 1, long* length = NULL);

/**
Returns a ChartFillFormat object that contains fill formatting properties for the object.

[MSDN documentation for DataLabel.Fill](https://learn.microsoft.com/en-us/office/vba/api/excel.datalabel.fill).
*/
wxExcelChartFillFormat GetFill();

/**
Returns the ChartFormat object. Since Excel 2007.

Expand Down Expand Up @@ -479,6 +486,13 @@ namespace wxAutoExcel {
*/
long GetCount();

/**
Returns a ChartFillFormat object that contains fill formatting properties for the object.

[MSDN documentation for DataLabels.Fill](https://learn.microsoft.com/en-us/office/vba/api/excel.datalabels.fill).
*/
wxExcelChartFillFormat GetFill();

/**
Returns the ChartFormat object. Since Excel 2007.

Expand Down
7 changes: 7 additions & 0 deletions include/wx/wxAutoExcelDisplayUnitLabel.h
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,13 @@ namespace wxAutoExcel {
*/
wxExcelCharacters GetCharacters(long start = 1, long* length = NULL);

/**
Returns a ChartFillFormat object that contains fill formatting properties for the object.

[MSDN documentation for DisplayUnitLabel.Fill](https://learn.microsoft.com/en-us/office/vba/api/excel.displayunitlabel.fill).
*/
wxExcelChartFillFormat GetFill();

/**
Returns the ChartFormat object. Since Excel 2007.

Expand Down
7 changes: 7 additions & 0 deletions include/wx/wxAutoExcelDownBars.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,13 @@ namespace wxAutoExcel {

// ***** PROPERTIES *****

/**
Returns a ChartFillFormat object that contains fill formatting properties for the object.

[MSDN documentation for DownBars.Fill](https://learn.microsoft.com/en-us/office/vba/api/excel.downbars.fill).
*/
wxExcelChartFillFormat GetFill();

/**
Returns the ChartFormat object. Since Excel 2007.

Expand Down
4 changes: 2 additions & 2 deletions include/wx/wxAutoExcelFillFormat.h
Original file line number Diff line number Diff line change
Expand Up @@ -113,11 +113,11 @@ namespace wxAutoExcel {
double GetGradientDegree();

/**
Since Excel 2007.
Returns the GradientStops collection of the stops of a gradient fill. Since Excel 2007.

[MSDN documentation for FillFormat.GradientStops](https://learn.microsoft.com/en-us/office/vba/api/excel.fillformat.gradientstops).
*/
// wxExcelGradientStops GetGradientStops();
wxExcelGradientStops GetGradientStops();

/**
Returns the gradient style for the specified fill. Read-only MsoGradientStyle.
Expand Down
7 changes: 7 additions & 0 deletions include/wx/wxAutoExcelFloor.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,13 @@ namespace wxAutoExcel {

// ***** PROPERTIES *****

/**
Returns a ChartFillFormat object that contains fill formatting properties for the object.

[MSDN documentation for Floor.Fill](https://learn.microsoft.com/en-us/office/vba/api/excel.floor.fill).
*/
wxExcelChartFillFormat GetFill();

/**
Returns the ChartFormat object. Since Excel 2007.

Expand Down
Loading
Loading