import { RevPoint, RevSchemaField } from '../../../common'; import { RevLinedHoverCell } from '../../interfaces/lined-hover-cell'; import { RevViewCell } from '../../interfaces/view-cell'; import { RevBehavioredColumnSettings } from '../../settings'; import { RevScroller } from '../scroller'; import { RevViewLayout } from '../view/view-layout'; /** @public */ export namespace RevDispatchableEvent { export type Name = keyof Name.DetailMap; export namespace Name { export interface DetailMap { 'rev-column-sort': Detail.ColumnSort; 'rev-cell-focus-changed': Detail.CellFocusChanged; 'rev-row-focus-changed': Detail.RowFocusChanged; 'rev-selection-changed': undefined; 'rev-context-menu': Detail.Pointer; 'rev-pointer-down': Detail.Pointer; 'rev-pointer-up-cancel': Detail.Pointer; 'rev-pointer-move': Detail.Pointer; 'rev-pointer-enter': Detail.Pointer; 'rev-pointer-leave-out': Detail.Pointer; 'rev-wheel-move': Detail.Wheel; 'rev-key-down': KeyboardEvent; 'rev-key-up': KeyboardEvent; 'rev-filter-applied': undefined; 'rev-cell-enter': RevViewCell; 'rev-cell-exit': RevViewCell; 'rev-click': Detail.Pointer; 'rev-dbl-click': Detail.Pointer; 'rev-columns-view-widths-changed': RevViewLayout.ColumnsViewWidthChangeds; 'rev-grid-rendered': undefined; 'rev-grid-resized': undefined; 'rev-touch-start': TouchEvent; 'rev-touch-move': TouchEvent; 'rev-touch-end': TouchEvent; 'rev-horizontal-scroll-viewport-changed': undefined; 'rev-vertical-scroll-viewport-changed': undefined; 'rev-horizontal-scroller-action': RevScroller.Action; 'rev-vertical-scroller-action': RevScroller.Action; 'rev-field-column-list-changed': undefined; } export type MouseHoverCell = 'rev-click' | 'rev-dbl-click' | 'rev-pointer-up-cancel' | 'rev-pointer-down' | 'rev-pointer-move' | 'rev-pointer-enter' | 'rev-pointer-leave-out' | 'rev-wheel-move' | 'rev-context-menu' | 'rev-column-sort'; } export namespace Detail { export interface CellFocusChanged { readonly oldPoint: RevPoint | undefined; readonly newPoint: RevPoint | undefined; } export interface RowFocusChanged { readonly oldSubgridRowIndex: number | undefined; readonly newSubgridRowIndex: number | undefined; } export interface Mouse extends MouseEvent { revgridHoverCell?: RevLinedHoverCell; } export interface Pointer extends PointerEvent, Mouse { revgridHoverCell?: RevLinedHoverCell; } export interface Wheel extends WheelEvent { revgridHoverCell?: RevLinedHoverCell; } export interface ColumnSort extends MouseEvent { revgridHoverCell?: RevLinedHoverCell; } } }