selectAt method

CanvasObject? selectAt(
  1. double x,
  2. double y
)

Selects the topmost object at x, y.

Implementation

CanvasObject? selectAt(double x, double y) {
  final object = hitTest(x, y);
  final id = object?.id;
  final changed = id == null
      ? _selectedObjectIds.isNotEmpty
      : (_selectedObjectIds.length != 1 || _selectedObjectIds.single != id);
  _selectedObjectIds
    ..clear()
    ..addAll(id == null ? const [] : [id]);
  render();
  if (changed) _emitSelect();
  return object;
}