Esempio n. 1
0
 void AddNewCustomFilter(FilterItem filterItem)
 {
     try
     {
         if (string.IsNullOrEmpty(filterItem.Name))
         {
             int prevIndex = CustomFilters.Select(fi => Regex.Match(fi.Name, NewFilterName + @" (?<index>\d+)")).Where(m => m.Success).Select(m => int.Parse(m.Groups["index"].Value)).DefaultIfEmpty(0).Max();
             filterItem.Name = NewFilterName + " " + (prevIndex + 1);
         }
         else
         {
             var existing = CustomFilters.FirstOrDefault(fi => fi.Name == filterItem.Name);
             if (existing != null)
             {
                 CustomFilters.Remove(existing);
             }
         }
         CustomFilters.Add(filterItem);
         SaveCustomFilters();
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
Esempio n. 2
0
 public void UpdateUI(IFilter filter = null)
 {
     if (!IsRefreshingUi)
     {
         IsRefreshingUi = true;
         SetItems();
         PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(Items)));
         foreach (var item in StandardFilters.Values.Concat(CustomFilters.Select(cf => cf.SelectedFilter)).Except(new[] { filter }))
         {
             item.UpdateUI();
         }
         OrderFilter.UpdateUI();
         IsRefreshingUi = false;
     }
 }
Esempio n. 3
0
 public DemoController()
 {
     ModuleId      = 10;
     customfilters = CustomFilters.Select(x => x.FilterId).ToArray();
 }