Exemple #1
0
        public override void Edit(IEnumerable <IParameter> parameters)
        {
            base.Edit(parameters);
            AllParametersDTO.Clear();
            AllParametersDTO.AddRange(_visibleParameters.MapAllUsing(_parameterDTOMapper).Cast <ParameterDTO>());

            _view.DistributionVisible = AllParametersDTO.Any(ParameterIsDistributed);

            EnumHelper.AllValuesFor <PathElement>().Each(updateColumnVisibility);
            updateCategoryVisibility();

            _scaleParametersPresenter.Enabled = _visibleParameters.Any(x => x.Editable);
            _view.BindTo(AllParametersDTO);

            PerformDefaultGrouping(_visibleParameters);
        }
Exemple #2
0
        private IParameterDTO parameterFrom(string parameterPath)
        {
            if (_pathCache == null)
            {
                return(new NullParameterDTO());
            }

            var parameter = _pathCache[parameterPath];

            if (parameter == null)
            {
                return(new NullParameterDTO());
            }

            return(AllParametersDTO.First(x => Equals(x.Parameter, parameter)));
        }
Exemple #3
0
        public void EditParameters(IEnumerable <IParameter> parameters)
        {
            base.Edit(parameters);
            AllParametersDTO.Clear();
            foreach (var parameter in _visibleParameters)
            {
                var parameterDTO = _mapper.MapFrom(parameter).DowncastTo <ParameterDTO>();

                var groupInfo = _representationInfoRepository.InfoFor(RepresentationObjectType.GROUP, parameter.GroupName);
                parameterDTO.PathElements[0] = groupInfo.ToPathElement();
                AllParametersDTO.Add(parameterDTO);
            }

            var allGrouping = AllParametersDTO.Select(x => x.PathElements[0].DisplayName).Distinct();

            _view.GroupingVisible = (allGrouping.Count() > 1);
            _view.BindTo(AllParametersDTO);
        }
Exemple #4
0
 public override void ReleaseFrom(IEventPublisher eventPublisher)
 {
     base.ReleaseFrom(eventPublisher);
     AllParametersDTO.Each(x => x.Release());
     AllParametersDTO.Clear();
 }
Exemple #5
0
 private bool haveDifferent(Func <IParameterDTO, string> parameterDisplayName)
 {
     return(AllParametersDTO.AllDistinctValues(parameterDisplayName).Count > 1);
 }
Exemple #6
0
 private void updateCategoryVisibility()
 {
     _view.CategoryVisible = AllParametersDTO.HasDistinctCategories();
 }
Exemple #7
0
 private void updateColumnVisibility(PathElement pathElement)
 {
     _view.SetVisibility(pathElement, AllParametersDTO.HasDistinctValuesAt(pathElement));
 }