MCPcopy Create free account
hub / github.com/handsontable/handsontable / updateCellHeader

Method updateCellHeader

handsontable/src/tableView.ts:1597–1622  ·  view source on GitHub ↗

* Updates header cell content. * * @private * @param {HTMLElement} element Element to update. * @param {number} index Row index or column index. * @param {Function} content Function which should be returns content for this cell. * @param {number} [headerLevel=0] The index of header

(
    element: HTMLElement, index: number, content: (index: number, headerLevel?: number) => unknown, headerLevel = 0
  )

Source from the content-addressed store, hash-verified

1595 * values counting from 0 to N).
1596 */
1597 updateCellHeader(
1598 element: HTMLElement, index: number, content: (index: number, headerLevel?: number) => unknown, headerLevel = 0
1599 ) {
1600 let renderedIndex = index;
1601 const parentOverlay = this._wt.wtOverlays.getParentOverlay(element) || this._wt;
1602
1603 // prevent wrong calculations from SampleGenerator
1604 if (element.parentNode) {
1605 if (hasClass(element, 'colHeader')) {
1606 renderedIndex = parentOverlay.wtTable.columnFilter!.sourceToRendered(index);
1607
1608 } else if (hasClass(element, 'rowHeader')) {
1609 renderedIndex = parentOverlay.wtTable.rowFilter!.sourceToRendered(index);
1610 }
1611 }
1612
1613 if (renderedIndex > -1) {
1614 fastInnerHTML(element, String(content(index, headerLevel)), this.hot.getSettings().sanitizer ?? true,
1615 'header', this.hot.rootGridElement ?? undefined);
1616
1617 } else {
1618 // workaround for https://github.com/handsontable/handsontable/issues/1946
1619 fastInnerText(element, String.fromCharCode(160));
1620 addClass(element, 'cornerHeader');
1621 }
1622 }
1623
1624 /**
1625 * Given a element's left (or right in RTL mode) position relative to the viewport, returns maximum

Callers 2

appendRowHeaderMethod · 0.95
appendColHeaderMethod · 0.95

Calls 7

hasClassFunction · 0.90
fastInnerHTMLFunction · 0.90
fastInnerTextFunction · 0.90
addClassFunction · 0.90
getParentOverlayMethod · 0.80
getSettingsMethod · 0.65
sourceToRenderedMethod · 0.45

Tested by

no test coverage detected