visitSceneNodes function
void
visitSceneNodes(
- CanvasSceneDocument doc, {
- bool includeHidden = false,
- required void visit(
- Node node
Pure traversal: iterate all nodes (optionally skipping hidden subtrees).
Implementation
void visitSceneNodes(
CanvasSceneDocument doc, {
bool includeHidden = false,
required void Function(Node node) visit,
}) {
void walk(Node n, bool ancestorHidden) {
final hidden = ancestorHidden || n.hidden;
if (!includeHidden && hidden) return;
visit(n);
if (n.isGroup) {
for (final c in n.childrenOrEmpty) {
walk(c, hidden);
}
}
}
for (final r in doc.children) {
walk(r, false);
}
}