Documentation / @finchart/tools / DrawingSelectionChange
Interface: DrawingSelectionChange
Defined in: tools/src/tools.ts:181
The selection changed. Why this is separate from changes is contractual — selection is session state, not part of the list, and it isn't serialized. Piling it onto DrawingsChange.reason would make a save recipe like if (reason !== "move") saveDrawings() save on every selection click.
Properties
handle
handle:
DrawingHandle|null
Defined in: tools/src/tools.ts:194
That drawing's handle — use it as-is with remove() / select(). null on deselection.
selection() is a copy, so a handle can only be recovered by value — and if two shapes share the same value, position-based hit-testing (gripAt, the later one) and value comparison (the earlier one) disagree, and a shape you never pointed at could get deleted. This notification carries identity along to prevent that.
selection
selection:
Drawing|null
Defined in: tools/src/tools.ts:183
A copy of what's currently selected. null if nothing is.