Index: Ringtoets/Integration/src/Ringtoets.Integration.Plugin/RingtoetsGuiPlugin.cs =================================================================== diff -u -raf42240385db3d3f04bca830513c7464e6f74668 -r7709ae832723e3dd8499b674a7c78c75bae8e5d7 --- Ringtoets/Integration/src/Ringtoets.Integration.Plugin/RingtoetsGuiPlugin.cs (.../RingtoetsGuiPlugin.cs) (revision af42240385db3d3f04bca830513c7464e6f74668) +++ Ringtoets/Integration/src/Ringtoets.Integration.Plugin/RingtoetsGuiPlugin.cs (.../RingtoetsGuiPlugin.cs) (revision 7709ae832723e3dd8499b674a7c78c75bae8e5d7) @@ -27,6 +27,7 @@ using System.Windows.Forms; using Core.Common.Base.Data; using Core.Common.Base.IO; +using Core.Common.Base.Plugin; using Core.Common.Controls.TreeView; using Core.Common.Controls.Views; using Core.Common.Gui; @@ -42,6 +43,7 @@ using Ringtoets.Common.Data.Contribution; using Ringtoets.Common.Data.FailureMechanism; using Ringtoets.Common.Data.Probability; +using Ringtoets.Common.Forms.Helpers; using Ringtoets.Common.Forms.PresentationObjects; using Ringtoets.Common.Forms.PropertyClasses; using Ringtoets.Common.Forms.TreeNodeInfos; @@ -53,6 +55,7 @@ using Ringtoets.HeightStructures.Forms.PresentationObjects; using Ringtoets.HydraRing.Data; using Ringtoets.HydraRing.IO; +using Ringtoets.Integration.Data; using Ringtoets.Integration.Data.StandAlone; using Ringtoets.Integration.Data.StandAlone.SectionResults; using Ringtoets.Integration.Forms.PresentationObjects; @@ -316,6 +319,23 @@ yield return new FailureMechanismSectionsImporter(); } + public override IEnumerable GetDataItemInfos() + { + yield return new DataItemInfo + { + Name = RingtoetsFormsResources.AssessmentSection_DisplayName, + Category = RingtoetsCommonFormsResources.Ringtoets_Category, + Image = RingtoetsFormsResources.AssessmentSectionFolderIcon, + CreateData = owner => + { + var project = (Project)owner; + var assessmentSection = new AssessmentSection(AssessmentSectionComposition.Dike); + assessmentSection.Name = GetUniqueForAssessmentSectionName(project, assessmentSection.Name); + return assessmentSection; + } + }; + } + /// /// Gets the child data instances that have definitions of some parent data object. /// @@ -645,6 +665,11 @@ #region AssessmentSection + private static string GetUniqueForAssessmentSectionName(Project project, string baseName) + { + return NamingHelper.GetUniqueName(project.Items.OfType(), baseName, a => a.Name); + } + private object[] AssessmentSectionChildNodeObjects(IAssessmentSection nodeData) { var childNodes = new List