// ---------------------------------------------------------------------- public void ForEachRecursiveDepthFirst(iCS_EditorObject parent, Action <iCS_EditorObject> fnc) { DetectUndoRedo(); if (parent == null) { EditorObjects[0].ForEachRecursiveDepthFirst(child => fnc(child)); } else { parent.ForEachRecursiveDepthFirst(child => fnc(child)); } }