Index: Ringtoets/Common/src/Ringtoets.Common.Forms/Ringtoets.Common.Forms.csproj
===================================================================
diff -u -r52647e3599ba4ba250975f3f81fbfe3f75beb0a0 -r615c9fc86d567ce6ddc7747ae17cd47c46ff2a37
--- Ringtoets/Common/src/Ringtoets.Common.Forms/Ringtoets.Common.Forms.csproj (.../Ringtoets.Common.Forms.csproj) (revision 52647e3599ba4ba250975f3f81fbfe3f75beb0a0)
+++ Ringtoets/Common/src/Ringtoets.Common.Forms/Ringtoets.Common.Forms.csproj (.../Ringtoets.Common.Forms.csproj) (revision 615c9fc86d567ce6ddc7747ae17cd47c46ff2a37)
@@ -219,6 +219,9 @@
GeneralResultFaultTreeIllustrationPointView.cs
+
+ UserControl
+
Index: Ringtoets/Common/src/Ringtoets.Common.Forms/Views/FailureMechanismSectionsView.cs
===================================================================
diff -u -re4e314411a1226b821443386d11acbfda2665521 -r615c9fc86d567ce6ddc7747ae17cd47c46ff2a37
--- Ringtoets/Common/src/Ringtoets.Common.Forms/Views/FailureMechanismSectionsView.cs (.../FailureMechanismSectionsView.cs) (revision e4e314411a1226b821443386d11acbfda2665521)
+++ Ringtoets/Common/src/Ringtoets.Common.Forms/Views/FailureMechanismSectionsView.cs (.../FailureMechanismSectionsView.cs) (revision 615c9fc86d567ce6ddc7747ae17cd47c46ff2a37)
@@ -24,6 +24,7 @@
using System.Linq;
using System.Windows.Forms;
using Core.Common.Base;
+using Core.Common.Controls.DataGrid;
using Core.Common.Controls.Views;
using Ringtoets.Common.Data.FailureMechanism;
using Ringtoets.Common.Forms.Properties;
@@ -72,8 +73,6 @@
this.sections = sections;
FailureMechanism = failureMechanism;
-
- UpdateTableData();
}
///
@@ -83,10 +82,11 @@
public object Data { get; set; }
- ///
- /// Clean up any resources being used.
- ///
- /// true if managed resources should be disposed; otherwise, false.
+ protected override void OnLoad(EventArgs e)
+ {
+ UpdateTableData();
+ }
+
protected override void Dispose(bool disposing)
{
failureMechanismObserver.Dispose();
@@ -99,9 +99,20 @@
base.Dispose(disposing);
}
- private void UpdateTableData()
+ ///
+ /// Updates the data in the failure mechanism sections table.
+ ///
+ /// The failure mechanism sections table to update.
+ /// The failure mechanism sections to show in the failure mechanism sections table.
+ protected virtual void UpdateTableData(DataGridViewControl dataGridViewControl,
+ IEnumerable failureMechanismSections)
{
failureMechanismSectionsTable.SetDataSource(sections.Select(section => new FailureMechanismSectionRow(section)).ToArray());
}
+
+ private void UpdateTableData()
+ {
+ UpdateTableData(failureMechanismSectionsTable, sections);
+ }
}
}
\ No newline at end of file
Index: Ringtoets/Common/src/Ringtoets.Common.Forms/Views/LengthEffectAwareFailureMechanismSectionsView.cs
===================================================================
diff -u
--- Ringtoets/Common/src/Ringtoets.Common.Forms/Views/LengthEffectAwareFailureMechanismSectionsView.cs (revision 0)
+++ Ringtoets/Common/src/Ringtoets.Common.Forms/Views/LengthEffectAwareFailureMechanismSectionsView.cs (revision 615c9fc86d567ce6ddc7747ae17cd47c46ff2a37)
@@ -0,0 +1,65 @@
+// Copyright (C) Stichting Deltares 2017. All rights reserved.
+//
+// This file is part of Ringtoets.
+//
+// Ringtoets is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Core.Common.Controls.DataGrid;
+using Ringtoets.Common.Data.FailureMechanism;
+
+namespace Ringtoets.Common.Forms.Views
+{
+ ///
+ /// View for a collection of , also showing information on
+ /// the length effect.
+ ///
+ public class LengthEffectAwareFailureMechanismSectionsView : FailureMechanismSectionsView
+ {
+ private readonly Func getLengthEffectFunc;
+
+ ///
+ /// Creates a new instance of .
+ ///
+ /// The sections to be displayed in the view.
+ /// The failure mechanism the view belongs to.
+ /// The for obtaining the
+ /// length effect value for a .
+ /// Thrown when any input parameter is null.
+ public LengthEffectAwareFailureMechanismSectionsView(IEnumerable sections,
+ IFailureMechanism failureMechanism,
+ Func getLengthEffectFunc)
+ : base(sections, failureMechanism)
+ {
+ if (getLengthEffectFunc == null)
+ {
+ throw new ArgumentNullException(nameof(getLengthEffectFunc));
+ }
+
+ this.getLengthEffectFunc = getLengthEffectFunc;
+ }
+
+ protected override void UpdateTableData(DataGridViewControl dataGridViewControl,
+ IEnumerable sections)
+ {
+ dataGridViewControl.SetDataSource(sections.Select(section => new FailureMechanismSectionRow(section)).ToArray());
+ }
+ }
+}
\ No newline at end of file