We have just released Build 90 and it includes some nice new features, some very significant samples and of course bug fixes.
PrintDocument Class for Creating PDFs and Printing
By far, the most significant sample we have added is our PrintDocument sample for creating PDFs and printing. This sample includes a preview of our PrintDocument Class. The PrintDocument class makes it easy to create documents for printing or exporting to PDF. Most browsers allow you to select the paper size, orientation, margins, and whether to include page headers and footers.
VirtualData Loading with ODataCollactionView
We often get asked about lazy loading or virtual data loading in FlexGrid. Honestly, it is often not necessary, but since we get asked so often, we made a virtual data sample and Class to help you out. The ODataCollectionView class provides a simple way to connect controls to OData sources. When you create an ODataCollectionView, it starts loading all the data in the source, given the filtering and paging constraints. The wijmo.odata.ODataVirtualCollectionView extends ODataCollectionView to provide on-demand loading of data. The wijmo.odata.ODataVirtualCollectionView does not automatically load the data from the server. Instead, it relies on the setWindow method to load data fragments (windows) on demand.
Multiple Selection in FlexChart
This multiple selection sample is driven by a custom request. We were asked if the FlexChart could handle (ListBox-style) multiple selection. We do not support it as a built-in feature, so we made an extension sample to demonstrate how you can. Multiple selection can be done by clicking points, but we also added the ability to draw a rectangle on the chart surface to easy select a group of points.
Custom Cell Merging in FlexGrid
This cell merging sample applies custom merging to a FlexGrid by defining a custom MergeManager class and assigning an instance of that class to the grid's mergeManager property. The custom merge manager creates merged ranges that span rows and columns, which is something the default merge manager does not do (it merges either rows or columns, but not both).
Column Groups in FlexGrid
This column grouping sample includes a ColumnGroupProvider Class that allows for hierarchical grouping of column headers.
- Added a wijmo.odata.ODataVirtualCollectionView class that loads data on demand. See the VirtualData sample for details.
- ODataCollectionView.filterDefinition property is applied to filter on the server even when filterOnServer is set to false. This allows applications to apply server and client-side filtering to the same collection.
- Added FlexGrid.pastingCell/pastedCell events. These events fire while the grid is pasting data into individual cells. Previously, the grid would fire editing events in these situations, but that led to some ambiguities that affected the implementation of custom editors.
- Added support for hexadecimal formatting/parsing; use format 'xn' or 'Xn' (TFS 131809)
- Made AutoComplete control honor the "isEditable" property (inherited from ComboBox, TFS 81936)
- Added a wijmo.grid.CellFactory.disposeCell method to allow better resource cleanup when using custom cell factories.
- Improved Angular FlexGrid.CellEdit template to use the character that was typed when initiating the edits (as the built-in editors do).
- Made FlexGrid.cellFactory property get/set.
- Added a wijmo.grid.DataMap.isEditable property to allow users to enter data that is not on the DataMap (mapped items become non-exclusive options).
- wj-menu-item directive now supports AngularJS interpolation expressions and directives inside it, and can be used in conjunction with ng-repeat/ng-if directives.
- Data-bound Menu controls now support wj-item-template directive that allows to define an arbitrary menu item content.
- ng-class AngularJS directive is now supported on the wj-flex-grid-column and wj-flex-grid-cell-template directives.
Download Wijmo build 5.20152.90