コード例 #1
0
        private void removeFieldsFromAnalysis(IPopulationAnalysisField field, PopulationAnalysis populationAnalysis)
        {
            var allDerivedFields = populationAnalysis.AllFieldsReferencing(field);

            allDerivedFields.Each(populationAnalysis.Remove);
            populationAnalysis.Remove(field);
        }
コード例 #2
0
        public virtual void RemoveField(IPopulationAnalysisField populationAnalysisField)
        {
            if (populationAnalysisField == null)
            {
                return;
            }

            var allDerivedFields = _populationAnalysis.AllFieldsReferencing(populationAnalysisField);

            if (allDerivedFields.Any())
            {
                var res = _dialogCreator.MessageBoxYesNo(PKSimConstants.UI.ReallyRemoveFieldUsedInGrouping(populationAnalysisField.Name, allDerivedFields.Select(x => x.Name)));
                if (res == ViewResult.No)
                {
                    return;
                }
            }

            _populationAnalysis.Remove(populationAnalysisField);
            allDerivedFields.Each(_populationAnalysis.Remove);

            _eventPublisher.PublishEvent(new FieldRemovedFromPopulationAnalysisEvent(_populationAnalysis, populationAnalysisField));
            UpdateView();
        }