setColumnPinned method

void setColumnPinned(
  1. int logicalColumnIndex, {
  2. required bool pinLeft,
  3. required bool pinRight,
})
inherited

Pins or unpins a single leaf column.

Implementation

void setColumnPinned(
  int logicalColumnIndex, {
  required bool pinLeft,
  required bool pinRight,
}) {
  if (pinLeft && pinRight) {
    throw ArgumentError('A column cannot be pinned to both sides');
  }
  if (buildedHeaderRows.isEmpty ||
      logicalColumnIndex < 0 ||
      logicalColumnIndex >= buildedHeaderRows.last.columns.length) {
    throw RangeError.index(
      logicalColumnIndex,
      buildedHeaderRows.isEmpty ? const <hc.HeaderColumn>[] : buildedHeaderRows.last.columns,
      'logicalColumnIndex',
    );
  }

  final leafColumns = buildedHeaderRows.last.columns;
  leafColumns[logicalColumnIndex].pinLeft.value = pinLeft;
  leafColumns[logicalColumnIndex].pinRight.value = pinRight;
  synchronizeGroupedHeaderPinning();
}