synchronizeGroupedHeaderPinning method
void
synchronizeGroupedHeaderPinning()
inherited
Makes every grouped header reflect the pin state of its covered leaves.
Implementation
void synchronizeGroupedHeaderPinning() {
if (buildedHeaderRows.isEmpty) {
return;
}
final leafColumns = buildedHeaderRows.last.columns;
for (final row in buildedHeaderRows.take(buildedHeaderRows.length - 1)) {
var logicalColumnIndex = 0;
for (final column in row.columns) {
final span = column.combinedColumns ?? 1;
final coveredLeaves = leafColumns.skip(logicalColumnIndex).take(span).toList();
column.pinLeft.value = coveredLeaves.every((leaf) => leaf.pinLeft.value);
column.pinRight.value = coveredLeaves.every((leaf) => leaf.pinRight.value);
logicalColumnIndex += span;
}
}
}