protected virtual void AddFiguresAndRestart() { RemoveTempResultsIfNecessary(); var figures = CreateFigures().ToList(); foreach (var figure in figures) { if (figure != null) { Actions.Add(Drawing, figure); } } Drawing.RaiseUserIsAddingFigures(new Drawing.UIAFEventArgs() { Figures = figures }); Transaction.Commit(); Transaction = null; this.ConstructionComplete = true; Drawing.RaiseConstructionStepComplete(new Drawing.ConstructionStepCompleteEventArgs() { ConstructionComplete = true }); Restart(); }