Expand description
The framework-neutral part of FerroUI’s TreeDataGrid, ported from the TreeDataGrid.Core
project of TreeDataGrid (https://github.com/wieslawsoltes/TreeDataGrid): sources of flat and
hierarchical data, their columns and rows, sorting, expansion, and row and cell selection. The
control that shows them is ferroui-controls-treedatagrid (docs/porting/treedatagrid.md).
Re-exports§
pub use accessor::Accessor;pub use accessor::PathSubscription;pub use accessor::PropertyPathObserver;pub use accessor::TreeModel;pub use items_source_view::TreeDataGridItemsSourceView;pub use model_collection::ModelCollection;pub use model_collection::Models;pub use model_collection::MutableModelCollection;
Modules§
- accessor
- Accessors: what the reference reads from
Expression<Func<TModel, TValue>>, without expression trees. A column’s value is read by a getter, written by an optional setter, named for change notifications, and observed along the objects of its path (Utils/PropertyPathObserver.cs). - items_
source_ view TreeDataGridItemsSourceView.cs: the view of a collection of models that the rows and the selection read and listen to.- model_
collection - The collections of models a source shows: the reference’s
IEnumerable<TModel>, which the sources and the selection treat as anIListthat may implementINotifyCollectionChanged. - models
Models/: columns, rows and the notifying bases.- selection
Selection/: the tree selection model and the row and cell selection of a source.- utils
Utils/.
Macros§
- impl_
column_ base - Implements
IColumnfor a type that holds aColumnBasein the fieldbase. - index_
path new IndexPath(a, b, ...).
Structs§
- Cell
Index - A cell of a TreeDataGrid source: the index of its column in the source’s columns and the hierarchical index of its row’s model in the data.
- Flat
Tree Data Grid Source - A source of a flat grid: one row per model.
- Grid
Length - A length that is a size in pixels, a weighted share of the remaining space (
*) or determined by the content (Auto). - Hierarchical
Tree Data Grid Source - A source of a tree with columns: the rows of the root models, each expandable to the rows of its children through the expander column.
- Index
Path - A path of indexes into a hierarchy: one index for a row of a flat source or a root row, one more
per level below. The empty path (
IndexPath::UNSELECTED, the default) is no row. - RowMove
Effects - The effects of a move of rows (
[Flags] RowMoveEffects).
Enums§
- Grid
Unit Type - The unit of a
GridLength. - RowDrop
Position - Where a dragged row is dropped relative to the target row.
Traits§
- ITree
Data Grid Source - A source of a tree data grid, untyped (
ITreeDataGridSource). - ITree
Data Grid Source Of - A source of models of
M(ITreeDataGridSource<TModel>).
Functions§
- downcast_
source - The source of a shared source as the concrete source type
T. - register_
types - Registers the markup metadata of the enumerations of the crate and their nullable forms with
the untyped value conversions. Cheap and idempotent; the control crate calls it from its
register_types.
Type Aliases§
- RowEvent
Handler - A handler of the row events of a hierarchical source.