Index: Riskeer/Piping/src/Riskeer.Piping.Forms/PropertyClasses/ProbabilisticPipingInputContextProperties.cs =================================================================== diff -u -r995c11f03a8195c6faeae978d11a20335dfafbf4 -ra3329d981b6720653b1f1e9436700b09f6ae9e5b --- Riskeer/Piping/src/Riskeer.Piping.Forms/PropertyClasses/ProbabilisticPipingInputContextProperties.cs (.../ProbabilisticPipingInputContextProperties.cs) (revision 995c11f03a8195c6faeae978d11a20335dfafbf4) +++ Riskeer/Piping/src/Riskeer.Piping.Forms/PropertyClasses/ProbabilisticPipingInputContextProperties.cs (.../ProbabilisticPipingInputContextProperties.cs) (revision a3329d981b6720653b1f1e9436700b09f6ae9e5b) @@ -19,11 +19,63 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System; +using System.Collections.Generic; +using Core.Common.Base.Data; +using Core.Common.Gui.PropertyBag; +using Riskeer.Common.Forms.PresentationObjects; +using Riskeer.Common.Forms.PropertyClasses; +using Riskeer.Common.Forms.UITypeEditors; +using Riskeer.Piping.Forms.PresentationObjects; + namespace Riskeer.Piping.Forms.PropertyClasses { - public class ProbabilisticPipingInputContextProperties + /// + /// ViewModel of for properties panel. + /// + public class ProbabilisticPipingInputContextProperties : ObjectProperties, + IHasHydraulicBoundaryLocationProperty { + private readonly Func getNormativeAssessmentLevelFunc; + private readonly IObservablePropertyChangeHandler propertyChangeHandler; + /// + /// Creates a new instance of . + /// + /// The instance to show the properties for. + /// for obtaining the normative assessment level. + /// The handler responsible for handling effects of a property change. + /// Thrown when any parameter is null. + public ProbabilisticPipingInputContextProperties(ProbabilisticPipingInputContext data, + 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(propertyChangeHandler)); + } + + Data = data; + + this.getNormativeAssessmentLevelFunc = getNormativeAssessmentLevelFunc; + this.propertyChangeHandler = propertyChangeHandler; + } + + public SelectableHydraulicBoundaryLocation SelectedHydraulicBoundaryLocation { get; } + + public IEnumerable GetSelectableHydraulicBoundaryLocations() + { + throw new NotImplementedException(); + } } -} +} \ No newline at end of file