void UndoRedoCallback() { if (graph == null) { return; } if (OnUndoRedoPerformed != null) { OnUndoRedoPerformed(); } var newNode = graph.nodes.FirstOrDefault(n => !graph.FindNodeById(n.id)); //if a destroyed node was undoed, we bring it back to life ... if (newNode != null) { newNode.OnAfterGraphDeserialize(graph); graph.AddInitializedNode(newNode, false, false); } graph.UpdateComputeOrder(); graph.Process(); }