DataGridXL - API

Renderer Methods

Description

The Renderer takes care of rendering the Sheet inside your DataGridXL instance.

Usage

Your DataGridXL instance contains a property renderer.

javascript
// create DataGridXL instance
const grid = new DataGridXL(...);
// calling renderer methods
grid.renderer.getColWidthById(3);
NOTE: You don't need to create a Renderer instance yourself — it is provided by the grid automatically.

Methods

adjustScrollLeft(amount)

Add amount in pixels to scrollLeft

Arguments

amount
numberAmount of pixels to scroll horizontally
adjustScrollTop(amount)

Add amount in pixels to scrollTop

Arguments

amount
numberAmount of pixels to scroll vertically
disablePointerArea(pointerArea)

Disable pointer area

Arguments

pointerArea
stringName of pointer area to disable
drawSortState(sortState)

Draw sort state (display indicators in column headers)

Arguments

sortState
arraySort state
enablePointerArea(pointerArea)

Enable pointer area

Arguments

pointerArea
stringName of pointer area to enable
getCellBounds(cellCoords): object

Get pixel bounds for cell

Arguments

cellCoords
CellCoordsCell coordinates
Returnsobject{top, right, bottom, left}
getCellBoundsInViewport(cellCoords, addContainerOffset?, addWindowOffset?): object

Get pixel bounds for cell in viewport

Arguments

cellCoords
CellCoordsCell coordinates
addContainerOffset?
booleandefault falseAdd container offset to bounds
addWindowOffset?
booleandefault falseAdd window offset to bounds
Returnsobject{top, right, bottom, left}
getCellCoords(pointerX, pointerY): CellCoords

Get cell coordinates by pointer position

Arguments

pointerX
numberPointer position X
pointerY
numberPointer position Y
ReturnsCellCoordsCell coordinates
getCellPosition(cellCoords): object

Get cell position in pixels by cell coordinates

Arguments

cellCoords
CellCoordsCell coordinates
Returnsobject{x,y}
getCellPositionInViewport(cellCoords): object

Get cell position *in viewport* in pixels by cell coordinates

Arguments

cellCoords
CellCoordsCell coordinates
Returnsobject{x,y}
getColCoord(pointerX, halfWay?): ColCoord

Get column coordinate by pointer position

Arguments

pointerX
number
halfWay?
booleandefault falseInclude halfway offset
ReturnsColCoordColumn coordinate
getColHeaderHeight(): number

Get height in pixels of column header

Returnsnumbercolumn header height (in pixels)
getColHeaderSpace(): number

Get space in pixels of column header zone

ReturnsnumberColumn header space
getColPosition(colCoord): number

Get column position in pixels by column coordinate

Arguments

colCoord
ColCoordColumn coordinate
Returnsnumbercolumn position in pixels
getColPositionInViewport(colCoord): number

Get column position *in viewport* in pixels by column coordinate

Arguments

colCoord
ColCoordColumn coordinate
Returnsnumbercolumn position in pixels
getColRangeSpace(colRange): number

Get column range space (width) in pixels

Arguments

colRange
ColRangeColumn range
Returnsnumberspace in pixels
getColWidthById(colId): number

Get column width by ID

Arguments

colId
ColIdColumn ID
Returnsnumberwidth in pixels
getDefaultColWidth(): number

Get default column width

Returnsnumberwidth in pixels
getDefaultRowHeight(): number

Get default row height

Returnsnumberheight in pixels
getFirstVisibleCellCoords()

Get first visible cell coords

getInnerViewportBounds(): object

Get viewport bounds in pixels (document)

Returnsobject{top, right, bottom, left}
getInnerViewportHeight(): number

Get height of viewport minus scrollbars

Returnsnumberheight in pixels
getInnerViewportWidth(): number

Get width of viewport minus scrollbars

Returnsnumberwidth in pixels
getLastFullyVisibleCellCoords()

Get last fully-visible cell coords

getPaneXfromCellCoords(cellCoords): string

Get pane X from cell coordinates

Arguments

cellCoords
CellCoordsCell coordinates
Returnsstringpane X ("left", "center")
getPaneYfromCellCoords(cellCoords): string

Get pane Y from cell coordinates

Arguments

cellCoords
CellCoordsCell coordinates
Returnsstringpane Y ("top", "center")
getRenderPositionX(): number

Get render position X

ReturnsnumberSheet offset X (in pixels)
getRenderPositionY(): number

Get render position Y

ReturnsnumberSheet offset Y (in pixels)
getRowCoord(pointerY, halfWay?): RowCoord

Get row coordinate by pointer position

Arguments

pointerY
number
halfWay?
booleandefault falseInclude halfway offset
ReturnsRowCoordRow coordinate
getRowHeaderSpace(): number

Get space in pixels of row header zone

ReturnsnumberRow header space
getRowHeaderWidth(): number

Get width in pixels of row header

Returnsnumberrow header width (in pixels)
getRowHeightById(rowId): number

Get row height by ID

Arguments

rowId
RowIdRow ID
Returnsnumberheight in pixels
getRowPosition(rowCoord): number

Get row position in pixels by row coordinate

Arguments

rowCoord
RowCoordRow coordinate
Returnsnumberrow position in pixels
getRowPositionInViewport(rowCoord): number | null

Get row position *in viewport* in pixels by row coordinate

Arguments

rowCoord
RowCoordRow coordinate
Returnsnumbernullrow position in pixels
getRowRangeSpace(rowRange): number

Get row range space (height) in pixels

Arguments

rowRange
RowRangeRow range
Returnsnumberspace in pixels
getSectionDividerXOffset(): number

Get position of section divider X

Returnsnumberposition in pixels
getSectionDividerYOffset(): number

Get position of section divider Y

Returnsnumberposition in pixels
getViewportBounds(): object

Get viewport bounds in pixels, including scrollbars

Returnsobject{top, right, bottom, left}
getViewportHeight(): number

Get height of total viewport, including scrollbars

Returnsnumberheight in pixels
getViewportWidth(): number

Get width of total viewport, including scrollbars

Returnsnumberwidth in pixels
isScrolling(): boolean

Is scrolling

ReturnsbooleanReturns `true` if scrolling, `false` if not
isViewportConnectedToLeftPane(): boolean

Check if (center) viewport is connected to left pane

Returnsboolean`true` or `false`
isViewportConnectedToTopPane(): boolean

Check if (center) viewport is connected to top pane

Returnsboolean`true` or `false`
moveViewportToIncludeCell(cellCoords, axis)

Move viewport so that it includes given cell

Arguments

cellCoords
CellCoords
axis
stringAxis: `"x"`, `"y"` or `"xy"`
scrollToLeft()

Scroll viewport to start position (x)

scrollToTop()

Scroll viewport to start position (y)

updateColView()

Update colView array

updatePaneIds()

Update pane IDs (after state change)

updateRowView()

Update rowView array