Index: Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/GrassCoverErosionInwardsGuiPlugin.cs =================================================================== diff -u -r266b001fc7fcb405383d2411a970efa735e3c66d -r4d711e7b0e3a8e91c9afc0339e3f7dadaf619fc3 --- Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/GrassCoverErosionInwardsGuiPlugin.cs (.../GrassCoverErosionInwardsGuiPlugin.cs) (revision 266b001fc7fcb405383d2411a970efa735e3c66d) +++ Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/GrassCoverErosionInwardsGuiPlugin.cs (.../GrassCoverErosionInwardsGuiPlugin.cs) (revision 4d711e7b0e3a8e91c9afc0339e3f7dadaf619fc3) @@ -257,34 +257,23 @@ var calculateAllItem = CreateCalculateAllItem(grassCoverErosionInwardsFailureMechanismContext); - var clearAllItem = new StrictContextMenuItem( - RingtoetsCommonFormsResources.Clear_all_output, - RingtoetsCommonFormsResources.Clear_all_output_ToolTip, - RingtoetsCommonFormsResources.ClearIcon, - (o, args) => ClearAll(grassCoverErosionInwardsFailureMechanismContext.WrappedData)); - - if (!GetAllCalculations(grassCoverErosionInwardsFailureMechanismContext.WrappedData).Any(c => c.HasOutput)) - { - clearAllItem.Enabled = false; - clearAllItem.ToolTipText = RingtoetsCommonFormsResources.CalculationGroup_ClearOutput_No_calculation_with_output_to_clear; - } - - return Gui.Get(grassCoverErosionInwardsFailureMechanismContext, treeViewControl) - .AddOpenItem() - .AddSeparator() - .AddCustomItem(changeRelevancyItem) - .AddSeparator() - .AddCustomItem(calculateAllItem) - .AddCustomItem(clearAllItem) - .AddSeparator() - .AddImportItem() - .AddExportItem() - .AddSeparator() - .AddExpandAllItem() - .AddCollapseAllItem() - .AddSeparator() - .AddPropertiesItem() - .Build(); + var builder = new RingtoetsContextMenuBuilder(Gui.Get(grassCoverErosionInwardsFailureMechanismContext, treeViewControl)); + return builder + .AddOpenItem() + .AddSeparator() + .AddCustomItem(changeRelevancyItem) + .AddSeparator() + .AddCustomItem(calculateAllItem) + .AddClearAllCalculationOutputInFailureMechanismItem(grassCoverErosionInwardsFailureMechanismContext.WrappedData) + .AddSeparator() + .AddImportItem() + .AddExportItem() + .AddSeparator() + .AddExpandAllItem() + .AddCollapseAllItem() + .AddSeparator() + .AddPropertiesItem() + .Build(); } private ContextMenuStrip FailureMechanismDisabledContextMenuStrip(GrassCoverErosionInwardsFailureMechanismContext grassCoverErosionInwardsFailureMechanismContext, object parentData, TreeViewControl treeViewControl) @@ -331,20 +320,6 @@ return menuItem; } - private static void ClearAll(GrassCoverErosionInwardsFailureMechanism failureMechanism) - { - if (MessageBox.Show(RingtoetsCommonFormsResources.FailureMechanism_ContextMenuStrip_Are_you_sure_clear_all_output, BaseResources.Confirm, MessageBoxButtons.OKCancel) != DialogResult.OK) - { - return; - } - - foreach (ICalculation calc in failureMechanism.Calculations) - { - calc.ClearOutput(); - calc.NotifyObservers(); - } - } - private void CalculateAll(GrassCoverErosionInwardsFailureMechanismContext context) { CalculateAll(context.WrappedData, GetAllCalculations(context.WrappedData), context.Parent);