Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Forms/PropertyClasses/MacroStabilityInwardsInputContextProperties.cs =================================================================== diff -u -rf00ef179f4b76ecd6fcfe67b1e6ea797e8525509 -r2f0f4e0bd2be4afb1e2b8f5b2380c6a8abea8ad3 --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Forms/PropertyClasses/MacroStabilityInwardsInputContextProperties.cs (.../MacroStabilityInwardsInputContextProperties.cs) (revision f00ef179f4b76ecd6fcfe67b1e6ea797e8525509) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Forms/PropertyClasses/MacroStabilityInwardsInputContextProperties.cs (.../MacroStabilityInwardsInputContextProperties.cs) (revision 2f0f4e0bd2be4afb1e2b8f5b2380c6a8abea8ad3) @@ -69,34 +69,38 @@ private const int settingsCategoryIndex = 3; private const int totalCategoryCount = 3; - private readonly RoundedDouble normativeAssessmentLevel; + private readonly Func getNormativeAssessmentLevelFunc; private readonly IObservablePropertyChangeHandler propertyChangeHandler; /// /// Creates a new instance of . /// /// The instance to show the properties for. - /// The normative assessment level. + /// for obtaining the normative assessment level. /// The handler responsible for handling effects of a property change. - /// Thrown when or - /// is null. + /// Thrown when any parameter is null. public MacroStabilityInwardsInputContextProperties(MacroStabilityInwardsInputContext data, - RoundedDouble normativeAssessmentLevel, + Func getNormativeAssessmentLevelFunc, IObservablePropertyChangeHandler propertyChangeHandler) { if (data == null) { throw new ArgumentNullException(nameof(data)); } + if (getNormativeAssessmentLevelFunc == null) + { + throw new ArgumentNullException(nameof(getNormativeAssessmentLevelFunc)); + } + if (propertyChangeHandler == null) { throw new ArgumentNullException(nameof(this.propertyChangeHandler)); } Data = data; - this.normativeAssessmentLevel = normativeAssessmentLevel; + this.getNormativeAssessmentLevelFunc = getNormativeAssessmentLevelFunc; this.propertyChangeHandler = propertyChangeHandler; } @@ -197,7 +201,7 @@ { return data.WrappedData.UseAssessmentLevelManualInput ? data.WrappedData.AssessmentLevel - : normativeAssessmentLevel; + : getNormativeAssessmentLevelFunc(); } set {