@visactor/vtable
Version:
canvas table width high performance
25 lines (20 loc) • 1.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: !0
}), exports.updateCell = void 0;
const vutils_1 = require("@visactor/vutils"), merge_range_1 = require("../../tools/merge-range");
function updateCell(scenegraph, col, row) {
const cellGroup = scenegraph.highPerformanceGetCell(col, row);
if ("cell" === cellGroup.role && (0, vutils_1.isValid)(cellGroup.mergeStartCol) && (0,
vutils_1.isValid)(cellGroup.mergeStartRow) && (0, vutils_1.isValid)(cellGroup.mergeEndCol) && (0,
vutils_1.isValid)(cellGroup.mergeEndRow)) {
const {colStart: colStart, colEnd: colEnd, rowStart: rowStart, rowEnd: rowEnd} = (0,
merge_range_1.getCellMergeRange)(cellGroup, scenegraph);
for (let col = colStart; col <= colEnd; col++) for (let row = rowStart; row <= rowEnd; row++) {
const mergeCell = scenegraph.highPerformanceGetCell(col, row);
"cell" === mergeCell.role && mergeCell.addUpdateBoundTag();
}
} else cellGroup.addUpdateBoundTag();
}
exports.updateCell = updateCell;
//# sourceMappingURL=update-cell.js.map