Ejemplo n.º 1
0
        private List <BoundingBox> ResolveGroup(CriteriaGroup currentGroup, List <BoundingBox> currentBounds)
        {
            if (currentBounds.Count == 0)
            {
                return(new List <BoundingBox>());
            }

            return(currentGroup.ResolveStep(currentBounds));
        }
Ejemplo n.º 2
0
        // TODO: Privatize this overload if/when only done through UI and not code-built expressions.
        public CriteriaGroup AddCriteriaGroup(CriteriaGroup criteriaGroup)
        {
            criteriaGroup.DeletionRequested += HandleCriteriaGroupDeletionRequested;

            CriteriaGroups.Add(criteriaGroup);

            CriteriaGroupAdded(criteriaGroup);

            return(criteriaGroup);
        }
Ejemplo n.º 3
0
        public void RemoveCriteriaGroup(CriteriaGroup criteriaGroup)
        {
            if (!CriteriaGroups.Contains(criteriaGroup))
            {
                throw new Exception("Cannot remove criteria group as it does not exist in the collection.");
            }

            criteriaGroup.DeletionRequested -= HandleCriteriaGroupDeletionRequested;

            CriteriaGroups.Remove(criteriaGroup);

            CriteriaGroupRemoved(criteriaGroup);
        }
Ejemplo n.º 4
0
 private void HandleCriteriaGroupDeletionRequested(CriteriaGroup criteriaGroup)
 {
     RemoveCriteriaGroup(criteriaGroup);
 }