public override bool AddEdit(IUndoableEdit anEdit) { if (!inProgress) { return(false); } else { IUndoableEdit last = LastEdit(); if (last == null) { edits.Add(anEdit); } else if (!last.AddEdit(anEdit) && anEdit.ReplaceEdit(last)) { edits.RemoveAt(edits.Count - 1); } return(true); } }