diff --git a/src/OSPSuite.Core/Domain/Builder/SimulationConfiguration.cs b/src/OSPSuite.Core/Domain/Builder/SimulationConfiguration.cs index b2a1a2c5d..90f7f9ce4 100644 --- a/src/OSPSuite.Core/Domain/Builder/SimulationConfiguration.cs +++ b/src/OSPSuite.Core/Domain/Builder/SimulationConfiguration.cs @@ -48,15 +48,25 @@ public void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager) if (!(source is SimulationConfiguration sourceConfiguration)) return; - SimModelExportMode = sourceConfiguration.SimModelExportMode; - ShouldValidate = sourceConfiguration.ShouldValidate; - ShowProgress = sourceConfiguration.ShowProgress; - PerformCircularReferenceCheck = sourceConfiguration.PerformCircularReferenceCheck; + CopyPropertiesFrom(sourceConfiguration); sourceConfiguration.ExpressionProfiles.Each(x => AddExpressionProfile(cloneManager.Clone(x))); sourceConfiguration.AllCalculationMethods.Each(AddCalculationMethod); sourceConfiguration.ModuleConfigurations.Each(x => AddModuleConfiguration(cloneManager.Clone(x))); SimulationSettings = cloneManager.Clone(sourceConfiguration.SimulationSettings); Individual = cloneManager.Clone(sourceConfiguration.Individual); } + + /// + /// Copies the properties from but does not clone any of the building blocks + /// or module configurations. + /// + /// + public void CopyPropertiesFrom(SimulationConfiguration sourceConfiguration) + { + SimModelExportMode = sourceConfiguration.SimModelExportMode; + ShouldValidate = sourceConfiguration.ShouldValidate; + ShowProgress = sourceConfiguration.ShowProgress; + PerformCircularReferenceCheck = sourceConfiguration.PerformCircularReferenceCheck; + } } } \ No newline at end of file