deleteSelection method
void
deleteSelection(
{ - int? timestampMs,
})
Implementation
void deleteSelection({int? timestampMs}) {
final deletedIds = <NodeId>[];
_core.write<void>((writer) {
final selected = writer.selectedNodeIds.toSet();
if (selected.isEmpty) return;
for (final layer in writer.scene.layers) {
for (final node in layer.nodes) {
if (!selected.contains(node.id)) continue;
if (!isNodeDeletableInLayer(node, layer)) continue;
deletedIds.add(node.id);
}
}
if (deletedIds.isEmpty) return;
writer.writeDeleteSelection();
});
if (deletedIds.isNotEmpty) {
_events.emitAction(
ActionType.delete,
deletedIds,
_resolveTimestampMs(timestampMs),
);
}
}