public void GetViewName_WithCalculationGroupContext_ReturnsCalculationGroupName()
        {
            // Setup
            var          assessmentSection    = new AssessmentSectionStub();
            const string calculationGroupName = "Test";

            var calculationGroup = new CalculationGroup
            {
                Name = calculationGroupName
            };

            var calculationGroupContext = new HeightStructuresCalculationGroupContext(calculationGroup,
                                                                                      null,
                                                                                      new HeightStructuresFailureMechanism(),
                                                                                      assessmentSection);
            // Call
            string name = info.GetViewName(null, calculationGroupContext);

            // Assert
            Assert.AreEqual(calculationGroupName, name);
        }
예제 #2
0
 private static string EnableValidateAndCalculateMenuItemForCalculationGroup(HeightStructuresCalculationGroupContext context)
 {
     return(EnableValidateAndCalculateMenuItem(context.AssessmentSection));
 }
예제 #3
0
 private static void ValidateAllInCalculationGroup(HeightStructuresCalculationGroupContext context)
 {
     ValidateAll(context.WrappedData.GetCalculations().OfType <StructuresCalculation <HeightStructuresInput> >(), context.AssessmentSection);
 }
예제 #4
0
        private ContextMenuStrip CalculationGroupContextContextMenuStrip(HeightStructuresCalculationGroupContext context,
                                                                         object parentData,
                                                                         TreeViewControl treeViewControl)
        {
            CalculationGroup group         = context.WrappedData;
            IInquiryHelper   inquiryHelper = GetInquiryHelper();
            var  builder       = new RiskeerContextMenuBuilder(Gui.Get(context, treeViewControl));
            bool isNestedGroup = parentData is HeightStructuresCalculationGroupContext;

            StructuresCalculation <HeightStructuresInput>[] calculations = group
                                                                           .GetCalculations()
                                                                           .OfType <StructuresCalculation <HeightStructuresInput> >()
                                                                           .ToArray();

            if (!isNestedGroup)
            {
                builder.AddOpenItem()
                .AddSeparator();
            }

            builder.AddImportItem()
            .AddExportItem()
            .AddSeparator();

            if (isNestedGroup)
            {
                builder.AddDuplicateCalculationItem(group, context)
                .AddSeparator();
            }
            else
            {
                builder.AddCustomItem(CreateGenerateHeightStructuresCalculationsItem(context))
                .AddSeparator();
            }

            builder.AddCreateCalculationGroupItem(group)
            .AddCreateCalculationItem(context, AddCalculation, CalculationType.Probabilistic)
            .AddSeparator();

            if (isNestedGroup)
            {
                builder.AddRenameItem();
            }

            builder.AddUpdateForeshoreProfileOfCalculationsItem(calculations, inquiryHelper,
                                                                SynchronizeCalculationWithForeshoreProfileHelper.UpdateForeshoreProfileDerivedCalculationInput)
            .AddCustomItem(CreateUpdateAllStructuresItem(calculations))
            .AddSeparator()
            .AddValidateAllCalculationsInGroupItem(
                context,
                ValidateAllInCalculationGroup,
                EnableValidateAndCalculateMenuItemForCalculationGroup)
            .AddPerformAllCalculationsInGroupItem(
                context,
                CalculateAllInCalculationGroup,
                EnableValidateAndCalculateMenuItemForCalculationGroup)
            .AddSeparator()
            .AddClearAllCalculationOutputInGroupItem(group)
            .AddClearIllustrationPointsOfCalculationsInGroupItem(() => IllustrationPointsHelper.HasIllustrationPoints(calculations),
                                                                 CreateChangeHandler(inquiryHelper, calculations));

            if (isNestedGroup)
            {
                builder.AddDeleteItem();
            }
            else
            {
                builder.AddRemoveAllChildrenItem();
            }

            return(builder.AddSeparator()
                   .AddCollapseAllItem()
                   .AddExpandAllItem()
                   .AddSeparator()
                   .AddPropertiesItem()
                   .Build());
        }