Пример #1
0
 public AvailableConditionListingModel(ConditionContainer condition, bool isSelected)
 {
     Condition = condition;
     Name = condition.Name;
     Probability = String.Format("{0:0.00}%", condition.ExpectedProbability * 100);
     IsSelected = isSelected;
 }
Пример #2
0
        public CompiledCondition(ConditionContainer container, ConditionService service)
        {
            Container = container;
            List<CompiledConditionWorker> and = new List<CompiledConditionWorker>();
            if (container.AndConditions != null)
            {
                foreach (ConditionAtom atom in container.AndConditions)
                {
                    if (atom.Type == ConditionAtomType.Standard)
                    {
                        and.Add(new CompiledMaskCondition(atom.PrimaryMask));
                    }
                    else
                    {
                        ConditionContainer linked = service.Definition.ConfiguredConditions.Find(x => x.ID == atom.LinkedContainerId);
                        CompiledCondition subCondition = new CompiledCondition(linked, service);
                        and.Add(new CompiledSubCondition(subCondition));
                    }
                }
            }
            _andConditions = and.ToArray();

            List<CompiledConditionWorker> or = new List<CompiledConditionWorker>();
            if (container.OrConditions != null)
            {
                foreach (ConditionAtom atom in container.OrConditions)
                {
                    if (atom.Type == ConditionAtomType.Standard)
                    {
                        or.Add(new CompiledMaskCondition(atom.PrimaryMask));
                    }
                    else
                    {
                        ConditionContainer linked = service.Definition.ConfiguredConditions.Find(x => x.ID == atom.LinkedContainerId);
                        CompiledCondition subCondition = new CompiledCondition(linked, service);
                        or.Add(new CompiledSubCondition(subCondition));
                    }
                }
            }
            _orConditions = or.ToArray();
        }
Пример #3
0
 public void SetCondition(ConditionContainer condition)
 {
     Condition = condition;
     Name = condition.Name;
     Probability = String.Format("{0:0.00}%", condition.ExpectedProbability * 100);
 }
Пример #4
0
        public void Initialise(ConditionContainer condition)
        {
            ObservableCollection<ConditionComponentListingModel> atoms = new ObservableCollection<ConditionComponentListingModel>();
            if (condition != null && condition.AndConditions != null)
            {
                foreach (ConditionAtom atom in condition.AndConditions)
                {
                    ConditionComponentListingModel componentModel = new ConditionComponentListingModel(atom);
                    componentModel.OnEdit += EditComponentModel;
                    componentModel.OnDelete += DeleteComponentModel;
                    atoms.Add(componentModel);
                }
            }
            AndAtoms = atoms;

            atoms = new ObservableCollection<ConditionComponentListingModel>();
            if (condition != null && condition.OrConditions != null)
            {
                foreach (ConditionAtom atom in condition.OrConditions)
                {
                    ConditionComponentListingModel componentModel = new ConditionComponentListingModel(atom);
                    componentModel.OnEdit += EditComponentModel;
                    componentModel.OnDelete += DeleteComponentModel;
                    atoms.Add(componentModel);
                }
            }
            OrAtoms = atoms;
        }
Пример #5
0
 public ConditionContainer GetCondition(string id)
 {
     ConditionContainer container = new ConditionContainer();
     container.ID = id;
     container.AndConditions = AndAtoms.Select(x => x.Atom).ToArray();
     container.OrConditions = OrAtoms.Select(x => x.Atom).ToArray();
     container.Name = Name;
     return container;
 }
Пример #6
0
 public ExistingConditionListingModel(ConditionContainer container)
 {
     _container = container;
     Name = _container.Name;
 }
Пример #7
0
 public void AddCondition(ConditionContainer condition)
 {
     Conditions.Add(GetCondition(condition, true));
     InvalidateProperty(ConditionsProperty);
 }
Пример #8
0
 protected AvailableConditionListingModel GetCondition(ConditionContainer container, bool selected)
 {
     AvailableConditionListingModel model = new AvailableConditionListingModel(container, selected);
     model.Edit += OnEdit;
     model.Delete += OnDelete;
     model.MoveUp += OnMoveUp;
     model.MoveDown += OnMoveDown;
     return model;
 }