public void Undo() { if (nameChanged) { bool b = origParentNode.Children.Remove(methodNode); Debug.Assert(b); if (!b) { throw new InvalidOperationException(); } origOptions.CopyTo(methodNode.MethodDefinition); origParentNode.Children.Insert(origParentChildIndex, methodNode); } else { origOptions.CopyTo(methodNode.MethodDefinition); } methodNode.RaiseUIPropsChanged(); }
public void Execute() { if (nameChanged) { bool b = origParentChildIndex < origParentNode.Children.Count && origParentNode.Children[origParentChildIndex] == methodNode; Debug.Assert(b); if (!b) { throw new InvalidOperationException(); } origParentNode.Children.RemoveAt(origParentChildIndex); newOptions.CopyTo(methodNode.MethodDefinition); origParentNode.AddToChildren(methodNode); } else { newOptions.CopyTo(methodNode.MethodDefinition); } methodNode.RaiseUIPropsChanged(); }