checkSelection method

void checkSelection(
  1. Offset localPosition, [
  2. bool hover = false
])

Implementation

void checkSelection(Offset localPosition, [bool hover = false]) {
  final offset = toLocal(localPosition);
  final selection = <Key>[];
  for (final child in nodes) {
    final rect = child.rect;
    if (rect.contains(offset)) {
      selection.add(child.key);
    }
  }
  if (selection.isNotEmpty) {
    if (shiftPressed) {
      setSelection({selection.last, ..._selected.toSet()}, hover);
    } else {
      setSelection({selection.last}, hover);
    }
  } else {
    deselectAll(hover);
  }
}