Currently some features introduce only "ing" events, like onColumnPinning, others introduce only "ed" events, like onColumnResized. Also, different naming convetion is used in event names and in interfaces.
First table below shows current situation, next table shows implementation plan.
β Behavioral changes
π New stuff
β Missing
Β | Ing event | Ed event
-- | -- | --
Sorting | β | onSortingDone
Filtering | β | onFilteringDone
Paging | onPagingDone | β
Pinning | onColumnPinning | β
Hiding | β | onColumnVisibilityChanged
Resizing | β | onColumnResized
Moving | onColumnMovingStart, onColumnMoving | onColumnMovingEnd
Missing events need to be introduced. Also, try to unify naming convention and interfaces (in terms of structure and naming) as much as possible, with as less as possible breaking or behavioral changes. See table below for what will be implemented.
Πvent | Interface
-- | --
sorting π | ISortingEventArgs π
filtering π | IFilteringEventArgs π
onPaging π | IPagingEventArgsπ
onColumnPinning β | IPinColumnCancellableEventArgs π
columnVisibilityChanging π | IColumnVisibilityChangingEventArgs π
columnResizing π | IColumnResizingEventArgs π
onColumnMovingStart | IColumnMovingStartEventArgs
onColumnMoving | IColumnMovingEventArgs
| Β
onSortingDone | ISortingExpression \| Array
onFilteringDone | IFilteringExpressionsTree
onPagingDone β | IPageEventArgs
columnPinned π | IPinColumnEventArgs
onColumnVisibilityChanged | IColumnVisibilityChangedEventArgs
onColumnResized | IColumnResizeEventArgs
onColumnMovingEnd | IColumnMovingEndEventArgs
π Notes:
IBaseEventArgs and CancelableEventArgsβ Behavioral changes:
pageChange is now hidden, and exposes a message to use onPagingDone instead.onPagingDone will be emitted AFTER the operation has completedonColumnPinning to emit IPinColumnCancellableEventArgs, instead of IPinColumnEventArgs. isPinned in both "ing" and "ed" events will contain the current pin state of the column.NOTE: Paging related stuff will be implemented with #8923
@hanastasov @rkaraivanov Can we consider removing all 'on' prefixes of the newly exposed and currently existing events as it was discussed some time ago?
@hanastasov @rkaraivanov Can we consider removing all 'on' prefixes of the newly exposed and currently existing events as it was discussed some time ago?
I thought about it, but didn't find it stated official somewhere. It will be a lot of changes, but we need to do it eventually.
At least we can try not exposing the proposed events with that prefix though?
At least we can try not exposing the proposed events with that prefix though?
@rkaraivanov suggested the same - new events will skip "on" prefixing. Old events will be renamed later with a mass migration that will happen. I updated the tables accordingly.
Most helpful comment
@rkaraivanov suggested the same - new events will skip "on" prefixing. Old events will be renamed later with a mass migration that will happen. I updated the tables accordingly.