The highlights of this release are:
New and improved proxy models
The WSortFilterProxyModel is now completely implemented, including tracking of row insertions and removals in the underlying source model.
A new WBatchEditProxyModel has been added, which caches editing changes and commits these changes all at the same time to an underlying source model, or allows the editing to be reverted. This is especially useful when the underlying source model accesses a shared resource such as a database (see below!).
ISAPI connector (win32, C++ only)
In search in a deployment option that works well in conjunction with Microsoft IIS, we finally settled on using ISAPI. The connector allows deployment of an application, then built as a library, in any version of Microsoft IIS. When available, non-blocking asynchronous I/O is used to communicate with the ISAPI connector.
JWt already included a paintdevice implementation that generates PNG/GIFs using WRasterPaintDevice.
Improvements in Wt::Dbo
More flexibility in mapping, including support for natural (and composite) keys instead of the auto-generated surrogate key, and configuration of properties of the surrogate key and optimistic locking version field.
Dbo::QueryModel, which adapts database objects to Wt’s MVC item views, now also supports editing.