Again we go through the ritual of a new release.
The highlights of this release are:
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!).
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.
Using libharu for PDF output, and GraphicsMagic for PNG/GIF output, two new WPaintDevice implementations were added (WPdfImage, WRasterImage).
JWt already included a paintdevice implementation that generates PNG/GIFs using WRasterPaintDevice.
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.