Index: Ringtoets/Integration/src/Ringtoets.Integration.Plugin/RingtoetsGuiPlugin.cs =================================================================== diff -u -r636a79efa1f104b917c48d043151ada9fc4e69ac -rbd29bacc20bc58cc67f27dd33fa4fa6b41db873c --- Ringtoets/Integration/src/Ringtoets.Integration.Plugin/RingtoetsGuiPlugin.cs (.../RingtoetsGuiPlugin.cs) (revision 636a79efa1f104b917c48d043151ada9fc4e69ac) +++ Ringtoets/Integration/src/Ringtoets.Integration.Plugin/RingtoetsGuiPlugin.cs (.../RingtoetsGuiPlugin.cs) (revision bd29bacc20bc58cc67f27dd33fa4fa6b41db873c) @@ -308,13 +308,13 @@ var failureMechanismContext = o as IFailureMechanismContext; if (assessmentSection != null) { - return assessmentSection.GetFailureMechanisms().Any(fm => ReferenceEquals(view.Data, ((FailureMechanismBase)fm).SectionResults)); + return assessmentSection.GetFailureMechanisms().Any(fm => ReferenceEquals(view.Data, ((FailureMechanismBase) fm).SectionResults)); } if (failureMechanismContext != null) { failureMechanism = failureMechanismContext.WrappedData; } - return failureMechanism != null && ReferenceEquals(view.Data, ((FailureMechanismBase)failureMechanism).SectionResults); + return failureMechanism != null && ReferenceEquals(view.Data, ((FailureMechanismBase) failureMechanism).SectionResults); } #endregion @@ -502,49 +502,26 @@ private ContextMenuStrip StandAloneFailureMechanismEnabledContextMenuStrip(StandAloneFailureMechanismContext nodeData, object parentData, TreeViewControl treeViewControl) { - var changeRelevancyItem = new StrictContextMenuItem( - RingtoetsCommonFormsResources.FailureMechanismContextMenuStrip_Is_relevant, - RingtoetsCommonFormsResources.FailureMechanismContextMenuStrip_Is_relevant_Tooltip, - RingtoetsCommonFormsResources.Checkbox_ticked, - (sender, args) => - { - Gui.ViewCommands.RemoveAllViewsForItem(nodeData); - nodeData.WrappedData.IsRelevant = false; - nodeData.WrappedData.NotifyObservers(); - } - ); + var builder = new RingtoetsContextMenuBuilder(Gui.Get(nodeData, treeViewControl)); + return builder + .AddChangeRelevancyOfFailureMechanismItem(nodeData, RemoveAllViewsForItem) + .AddSeparator() + .AddPerformAllCalculationsInFailureMechanismItem(nodeData, null, context => true) + .AddClearAllCalculationOutputInFailureMechanismItem(nodeData.WrappedData) + .AddSeparator() + .AddImportItem() + .AddExportItem() + .AddSeparator() + .AddExpandAllItem() + .AddCollapseAllItem() + .AddSeparator() + .AddPropertiesItem() + .Build(); + } - var calculateItem = new StrictContextMenuItem( - RingtoetsCommonFormsResources.Calculate_all, - RingtoetsCommonFormsResources.Calculate_all_ToolTip, - RingtoetsCommonFormsResources.CalculateAllIcon, - null) - { - Enabled = false - }; - var clearOutputItem = new StrictContextMenuItem( - RingtoetsCommonFormsResources.Clear_all_output, - RingtoetsCommonFormsResources.Clear_all_output_ToolTip, - RingtoetsCommonFormsResources.ClearIcon, null - ) - { - Enabled = false - }; - - return Gui.Get(nodeData, treeViewControl) - .AddCustomItem(changeRelevancyItem) - .AddSeparator() - .AddCustomItem(calculateItem) - .AddCustomItem(clearOutputItem) - .AddSeparator() - .AddImportItem() - .AddExportItem() - .AddSeparator() - .AddExpandAllItem() - .AddCollapseAllItem() - .AddSeparator() - .AddPropertiesItem() - .Build(); + private void RemoveAllViewsForItem(StandAloneFailureMechanismContext failureMechanismContext) + { + Gui.ViewCommands.RemoveAllViewsForItem(failureMechanismContext); } private ContextMenuStrip StandAloneFailureMechanismDisabledContextMenuStrip(StandAloneFailureMechanismContext nodeData, object parentData, TreeViewControl treeViewControl)