Documentation

@kanunilabs/datagrid-react


@kanunilabs/datagrid-react / VirtualWindowEngine

Class: VirtualWindowEngine<TRow>

Defined in: datagrid-core/dist/index.d.ts:2572

Type Parameters

TRow

TRow = GridRowData

Constructors

Constructor

new VirtualWindowEngine<TRow>(options?): VirtualWindowEngine<TRow>

Defined in: datagrid-core/dist/index.d.ts:2623

Parameters

options?

VirtualWindowOptions

Returns

VirtualWindowEngine<TRow>

Methods

ensureVisible()

ensureVisible(rowIndex, centerColumnIndex?): { scrollLeft?: number; scrollTop?: number; } | null

Defined in: datagrid-core/dist/index.d.ts:2680

Scroll offsets that would bring a row (and optionally a center column) fully into view. Returns only the axes that need to move; null when already visible.

Parameters

rowIndex

number

centerColumnIndex?

number

Returns

{ scrollLeft?: number; scrollTop?: number; } | null


getColumnLayout()

getColumnLayout(): ColumnLayout<TRow>

Defined in: datagrid-core/dist/index.d.ts:2667

Returns

ColumnLayout<TRow>


getRowHeight()

getRowHeight(): number

Defined in: datagrid-core/dist/index.d.ts:2669

The STANDARD row height. Per-row answers come from getRowHeightAt.

Returns

number


getRowHeightAt()

getRowHeightAt(index): number

Defined in: datagrid-core/dist/index.d.ts:2640

Height of one row, standard or not.

Parameters

index

number

Returns

number


getRowOffset()

getRowOffset(index): number

Defined in: datagrid-core/dist/index.d.ts:2642

Distance from the top of the first row to the top of this one.

Parameters

index

number

Returns

number


getScroll()

getScroll(): object

Defined in: datagrid-core/dist/index.d.ts:2670

Returns

object

scrollLeft

scrollLeft: number

scrollTop

scrollTop: number


getVisibleCenterColumns()

getVisibleCenterColumns(): ColumnRuntime<TRow>[]

Defined in: datagrid-core/dist/index.d.ts:2675

Center columns currently rendered (adapters map over this).

Returns

ColumnRuntime<TRow>[]


getWindow()

getWindow(): VirtualWindow

Defined in: datagrid-core/dist/index.d.ts:2666

Returns

VirtualWindow


hasUniformRows()

hasUniformRows(): boolean

Defined in: datagrid-core/dist/index.d.ts:2644

True while every row is the standard height.

Returns

boolean


setChromeOffsets()

setChromeOffsets(header, footer): boolean

Defined in: datagrid-core/dist/index.d.ts:2659

Parameters

header

number

footer

number

Returns

boolean


setColumnLayout()

setColumnLayout(layout): boolean

Defined in: datagrid-core/dist/index.d.ts:2665

Parameters

layout

ColumnLayout<TRow>

Returns

boolean


setLeadWidth()

setLeadWidth(px): boolean

Defined in: datagrid-core/dist/index.d.ts:2658

See leadWidth. Returns false — this changes no window, only reveals.

Parameters

px

number

Returns

boolean


setMaxCanvasHeight()

setMaxCanvasHeight(px): boolean

Defined in: datagrid-core/dist/index.d.ts:2661

The tallest element this browser will lay out, once measured.

Parameters

px

number

Returns

boolean


setMaxScrollOffset()

setMaxScrollOffset(px): boolean

Defined in: datagrid-core/dist/index.d.ts:2651

The largest scroll offset this browser honours, once measured.

Ignored when it is not a positive number, so a failed measurement leaves the safe default in place rather than collapsing the canvas to nothing.

Parameters

px

number

Returns

boolean


setRowCount()

setRowCount(rowCount): boolean

Defined in: datagrid-core/dist/index.d.ts:2624

Parameters

rowCount

number

Returns

boolean


setRowHeight()

setRowHeight(rowHeight): boolean

Defined in: datagrid-core/dist/index.d.ts:2625

Parameters

rowHeight

number

Returns

boolean


setRowHeights()

setRowHeights(overrides): boolean

Defined in: datagrid-core/dist/index.d.ts:2638

Rows that are NOT the standard height, by view row index.

The escape hatch from the fixed-height design: a detail panel, an open edit form, a row whose text wraps onto three lines. Pass an empty map (or null) and the engine is back to plain multiplication — this is not a mode the grid gets stuck in.

View indices, so this has to be re-supplied after anything that reorders rows. That is the caller's job because only the caller knows what the new order means; see DataGridController.rebuildRowHeights.

Parameters

overrides

ReadonlyMap<number, number> | null

Returns

boolean


setScroll()

setScroll(scrollTop, scrollLeft): boolean

Defined in: datagrid-core/dist/index.d.ts:2664

Hot path: called on every scroll event; quantized to row/column steps.

Parameters

scrollTop

number

scrollLeft

number

Returns

boolean


setViewportSize()

setViewportSize(width, height): boolean

Defined in: datagrid-core/dist/index.d.ts:2662

Parameters

width

number

height

number

Returns

boolean