What's New in v5
Performance Improvements
Prior to v5, any changes made to node data or TreeList hierarchy forced the virtual or data-bound control to re-create all the nodes and reload data. In this new version, to reduce the number of time-consuming round trips, data is cached and modified bypassing the data controller. For each node, the TreeList control now provides a handle to a cached record associated with this node. The data controller is only used to perform data store updates and to obtain notifications about external data store changes. This new data access architecture significantly improves performance when using data-aware TreeList controls. For instance, the ProviderModeDemo shipped with the ExpressQuantumTreeList yields the following performance results compared to v4:
- In smart load mode, recursive node expansion is about 50 times faster.
- If the smart load mode is disabled, node data loading is 40% faster.
With this release, node hierarchy information is stored in a compact in-memory table. As a result, changes to node hierarchy (such as inserting, moving or deleting nodes) are performed significantly faster.
Easy Data Migration to v5
The ExpressQuantumTreeList v5 provides implicit streaming compatibility with v4. So, legacy data formats don't require additional conversions when migrating to v5.
New Layout Management Capabilities
Nested Bands
The ExpressQuantumTreeList v5 now allows you to nest bands within other bands. 
Customizable Location of Expand Buttons
You can now specify which band displays expand buttons. This allows you to emulate Microsoft Outlook where a few service columns preceed the main tree. 
Quick Visibility Customization for Bands and Columns
Similar to the feature introduced in the ExpressQuantumGrid v5, band and column visibility can now be changed at both design and runtime via specially designed dropdown check lists. 
Customizable Layout Persistence
As with the ExpressQuantumGrid and ExpressPivotGrid, the ExpressQuantumTreeList now allows you to specify how tree list, band and column properties are persisted to external data stores via specially designed events. These events enable you to:
- Customize a list of properties to be saved.
- Provide property values to be saved to and restored from a data store.
- Initialize columns that are created during the restoration process.
User-Customizable Node and Band Height
End-users can now adjust the height of nodes and bands by dragging their bottom-most edge. 
New Options for Summary Calculation
Group Summaries
The ExpressQuantumTreeList v5 allows you to calculate summaries based on groups of nodes with the same parent. These summaries are displayed within group footers which can be switched off when necessary. 
Multiple Summaries per Column
You can now display multiple summaries per column in the footer and group footers. 
One-level or Recursive Summaries
You can specify whether to consider all nodes or only root-level nodes (immediate children, when calculating a group summary).
Built-in Context Menus
Column Header Context Menu
This menu allows end-users to change or apply various column options and specify the visibility of the footer and customization form. 
Footer Context Menu
This menu allows end-users to specify the required summary types, modify the calculation base or disable summary calculations for footer cells.
Group Footer Context Menu
This menu allows end-users to specify the required summary types, modify the calculation base or disable summary calculations for group footer cells. 
Custom Popup Menus
You can handle menu item clicks within built-in menus and display a custom menu (TPopupMenu descendant) instead of a built-in menu.
Radio and Check Groups
With v5, you can specify which control type will be used to indicate the check state of a node's immediate children – check boxes or radio buttons. A parent node keeps track of child node states, and automatically updates its own check state, and vice versa. You can customize the default logic by handling a specially designed event. You can also use grayed state for parent nodes, or prohibit end-users from changing a node's state. 
Design-time Improvements
You can now access summary item properties by clicking the corresponding footer and group footer cells. 
Miscellaneous New Features
- You are no longer limited to one frozen band on each side of the TreeList control.
- Capability to display overlay images over node and state images.
- Capability to dynamically provide image lists for node and state images. This allows you to have nodes with different image sizes.
|