Skip to content

Commit e129576

Browse files
committed
rename metric
1 parent 3e5aef4 commit e129576

3 files changed

Lines changed: 24 additions & 22 deletions

File tree

packages/grid/src/GridMetricCalculator.ts

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -262,8 +262,11 @@ export class GridMetricCalculator {
262262
const treePaddingY = 0; // We don't support trees on columns (at least not yet)
263263

264264
const visibleRowHeights = this.getVisibleRowHeights(state);
265-
const [visibleColumnWidths, visibleNonHiddenColumns] =
266-
this.getVisibleColumnWidths(state, firstColumn, treePaddingX);
265+
const [visibleColumnWidths, columnsForRender] = this.getVisibleColumnWidths(
266+
state,
267+
firstColumn,
268+
treePaddingX
269+
);
267270

268271
// Calculate the metrics for the main grid
269272
const visibleRows = Array.from(visibleRowHeights.keys());
@@ -614,7 +617,7 @@ export class GridMetricCalculator {
614617
visibleColumns,
615618

616619
// Array of visible, non-hidden columns, by grid index
617-
visibleNonHiddenColumns,
620+
columnsForRender,
618621

619622
// Map of the height/width of columns in the viewport (excluding floating columns)
620623
visibleRowHeights,
@@ -1072,7 +1075,7 @@ export class GridMetricCalculator {
10721075
let x = 0;
10731076
let column = left;
10741077
const columnWidths = new Map();
1075-
const visibleNonHiddenColumns: VisibleIndex[] = [];
1078+
const columnsForRender: VisibleIndex[] = [];
10761079
const { columnCount, floatingRightColumnCount } = model;
10771080
while (
10781081
x < width + leftOffset &&
@@ -1086,13 +1089,13 @@ export class GridMetricCalculator {
10861089
);
10871090
columnWidths.set(column, columnWidth);
10881091
if (columnWidth > 0) {
1089-
visibleNonHiddenColumns.push(column);
1092+
columnsForRender.push(column);
10901093
}
10911094
x += columnWidth;
10921095
column += 1;
10931096
}
10941097

1095-
return [columnWidths, visibleNonHiddenColumns];
1098+
return [columnWidths, columnsForRender];
10961099
}
10971100

10981101
/**

packages/grid/src/GridMetrics.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -133,10 +133,9 @@ export type GridMetrics = {
133133
visibleRows: readonly VisibleIndex[];
134134
visibleColumns: readonly VisibleIndex[];
135135

136-
// Array of visible, non-hidden columns, by grid index
137-
// Hidden columns may be included in visibleColumns and visibleColumnWidths with a width of 0 because users can see them and adjust their width
138-
// But we do not want the grid renderer to iterate over them, so we provide this separate array
139-
visibleNonHiddenColumns: readonly VisibleIndex[];
136+
// Renderer performance optimization - array of visible, non-hidden columns, by grid index
137+
// Use visibleColumns if hidden columns should be included (e.g. rendering column headers)
138+
columnsForRender: readonly VisibleIndex[];
140139

141140
// Map of the height/width of visible rows/columns
142141
visibleRowHeights: SizeMap;

packages/grid/src/GridRenderer.ts

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,7 @@ export class GridRenderer {
259259
floatingBottomRowCount,
260260
floatingRows,
261261
rowCount,
262-
visibleNonHiddenColumns,
262+
columnsForRender,
263263
allRowYs,
264264
allRowHeights,
265265
} = metrics;
@@ -284,7 +284,7 @@ export class GridRenderer {
284284
this.drawGridLinesForItems(
285285
context,
286286
state,
287-
visibleNonHiddenColumns,
287+
columnsForRender,
288288
floatingRows,
289289
theme.floatingGridColumnColor,
290290
theme.floatingGridRowColor
@@ -293,7 +293,7 @@ export class GridRenderer {
293293
this.drawCellBackgroundsForItems(
294294
context,
295295
state,
296-
visibleNonHiddenColumns,
296+
columnsForRender,
297297
floatingRows
298298
);
299299

@@ -323,8 +323,8 @@ export class GridRenderer {
323323
}
324324

325325
// Draw the cell content...
326-
for (let c = 0; c < visibleNonHiddenColumns.length; c += 1) {
327-
const column = visibleNonHiddenColumns[c];
326+
for (let c = 0; c < columnsForRender.length; c += 1) {
327+
const column = columnsForRender[c];
328328
for (let r = 0; r < floatingRows.length; r += 1) {
329329
const row = floatingRows[r];
330330
this.drawCellContent(context, state, column, row);
@@ -850,12 +850,12 @@ export class GridRenderer {
850850
state: GridRenderState
851851
): void {
852852
const { metrics, theme } = state;
853-
const { visibleNonHiddenColumns, visibleRows } = metrics;
853+
const { columnsForRender, visibleRows } = metrics;
854854

855855
this.drawGridLinesForItems(
856856
context,
857857
state,
858-
visibleNonHiddenColumns,
858+
columnsForRender,
859859
visibleRows,
860860
theme.gridColumnColor,
861861
theme.gridRowColor
@@ -927,11 +927,11 @@ export class GridRenderer {
927927
state: GridRenderState
928928
): void {
929929
const { metrics } = state;
930-
const { visibleNonHiddenColumns, visibleRows } = metrics;
930+
const { columnsForRender, visibleRows } = metrics;
931931
this.drawCellBackgroundsForItems(
932932
context,
933933
state,
934-
visibleNonHiddenColumns,
934+
columnsForRender,
935935
visibleRows
936936
);
937937
}
@@ -1004,10 +1004,10 @@ export class GridRenderer {
10041004
state: GridRenderState
10051005
): void {
10061006
const { metrics } = state;
1007-
const { visibleNonHiddenColumns } = metrics;
1007+
const { columnsForRender } = metrics;
10081008

1009-
for (let i = 0; i < visibleNonHiddenColumns.length; i += 1) {
1010-
const column = visibleNonHiddenColumns[i];
1009+
for (let i = 0; i < columnsForRender.length; i += 1) {
1010+
const column = columnsForRender[i];
10111011
this.drawColumnCellContents(context, state, column);
10121012
}
10131013
}

0 commit comments

Comments
 (0)