Index: Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Plugin/MacroStabilityInwardsPlugin.cs =================================================================== diff -u -rc51ba92268d9a8272778e758fd0f9a71a0d61849 -r73bb4932d13d36d1cd3cd30d8151f2adf49646f2 --- Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Plugin/MacroStabilityInwardsPlugin.cs (.../MacroStabilityInwardsPlugin.cs) (revision c51ba92268d9a8272778e758fd0f9a71a0d61849) +++ Ringtoets/MacroStabilityInwards/src/Ringtoets.MacroStabilityInwards.Plugin/MacroStabilityInwardsPlugin.cs (.../MacroStabilityInwardsPlugin.cs) (revision 73bb4932d13d36d1cd3cd30d8151f2adf49646f2) @@ -23,6 +23,7 @@ using System.Drawing; using System.Linq; using System.Windows.Forms; +using Core.Common.Base; using Core.Common.Base.Data; using Core.Common.Controls.TreeView; using Core.Common.Gui; @@ -209,12 +210,13 @@ GetViewName = (view, context) => context.WrappedData.Name, Image = RingtoetsCommonFormsResources.CalculationIcon, CloseForData = CloseFailureMechanismViewForData, - AdditionalDataCheck = context => context.WrappedData.IsRelevant + AdditionalDataCheck = context => context.WrappedData.IsRelevant, + CreateInstance = context => new MacroStabilityInwardsFailureMechanismView(context.WrappedData, context.Parent) }; yield return new ViewInfo< ProbabilityFailureMechanismSectionResultContext, - IEnumerable, + IObservableEnumerable, MacroStabilityInwardsFailureMechanismResultView> { GetViewName = (view, context) => RingtoetsCommonFormsResources.FailureMechanism_AssessmentResult_DisplayName, @@ -245,7 +247,9 @@ GetViewData = context => context.MacroStabilityInwardsCalculation, GetViewName = (view, context) => RingtoetsCommonFormsResources.Calculation_Input, Image = RingtoetsCommonFormsResources.GenericInputOutputIcon, - CloseForData = CloseInputViewForData + CloseForData = CloseInputViewForData, + CreateInstance = context => new MacroStabilityInwardsInputView(context.MacroStabilityInwardsCalculation, + () => GetNormativeAssessmentLevel(context.AssessmentSection, context.MacroStabilityInwardsCalculation)) }; yield return new ViewInfo @@ -263,7 +267,9 @@ GetViewData = context => context.WrappedData, GetViewName = (view, context) => RingtoetsCommonFormsResources.CalculationOutput_DisplayName, Image = RingtoetsCommonFormsResources.GeneralOutputIcon, - CloseForData = RingtoetsPluginHelper.ShouldCloseViewWithCalculationData + CloseForData = RingtoetsPluginHelper.ShouldCloseViewWithCalculationData, + CreateInstance = context => new MacroStabilityInwardsOutputView(context.WrappedData, + () => GetNormativeAssessmentLevel(context.AssessmentSection, context.WrappedData)) }; } @@ -409,12 +415,9 @@ var assessmentSection = o as IAssessmentSection; var failureMechanism = o as MacroStabilityInwardsFailureMechanism; - var viewFailureMechanismContext = (MacroStabilityInwardsFailureMechanismContext) view.Data; - MacroStabilityInwardsFailureMechanism viewMacroStabilityInwardsFailureMechanism = viewFailureMechanismContext.WrappedData; - return assessmentSection != null - ? ReferenceEquals(viewFailureMechanismContext.Parent, assessmentSection) - : ReferenceEquals(viewMacroStabilityInwardsFailureMechanism, failureMechanism); + ? ReferenceEquals(view.AssessmentSection, assessmentSection) + : ReferenceEquals(view.FailureMechanism, failureMechanism); } #endregion