public void DeleteSelected(FilterConditionsViewModel parentFilterConditions) { var isRootFilter = parentFilterConditions == null; foreach (var item in Conditions.Where(c => c.QueryConditionObject.IsSelected).ToArray()) { Conditions.Remove(item); } foreach (var item in FilterConditions.ToArray()) { item.DeleteSelected(this); } CheckRemoveFilter(parentFilterConditions); }
public void UnGroupSelected(FilterConditionsViewModel parentFilterConditions) { var isRootFilter = parentFilterConditions == null; var selectedConditions = SelectedConditions; if (selectedConditions.Count() > 0 && parentFilterConditions != null) { foreach (var item in selectedConditions) { Conditions.Remove(item); parentFilterConditions.Conditions.Insert(0, item); } } foreach (var item in FilterConditions.ToArray()) { item.UnGroupSelected(this); } CheckRemoveFilter(parentFilterConditions); }
public void GroupSelected(FilterOperator filterOperator, FilterConditionsViewModel parentFilterConditions = null) { var isRootFilter = parentFilterConditions == null; var selectedConditions = SelectedConditions; if (selectedConditions.Count() > 1 && FilterOperator != filterOperator) { var newFilterCondition = CreateFilterCondition(); newFilterCondition.FilterOperator = filterOperator; foreach (var item in selectedConditions) { Conditions.Remove(item); newFilterCondition.Conditions.Insert(0, item); } FilterConditions.Add(newFilterCondition); } foreach (var item in FilterConditions.ToArray()) { item.GroupSelected(filterOperator, this); } }