public static bool SaveCurrentSettingsToQuickFilter(string name)
        {
            if (string.IsNullOrEmpty(name))
            {
                Logger.log.Warn("Unable to save quick filter with blank name");
                return(false);
            }
            else if (name.Length > QuickFilter.MaxNameLength)
            {
                Logger.log.Warn($"Unable to save quick filter with a name over {QuickFilter.MaxNameLength} characters");
                return(false);
            }
            else if (InternalQuickFiltersList.Count >= NumberOfSlots)
            {
                Logger.log.Warn($"Unable to save more than {NumberOfSlots} quick filters");
                return(false);
            }

            var newQuickFilter = new QuickFilter(name, FilterList.ActiveFilters);

            InternalQuickFiltersList.Add(newQuickFilter);
            PluginConfig.SetQuickFilterData(InternalQuickFiltersList.Count, newQuickFilter.ToString());

            return(true);
        }
 public static void DeleteQuickFilter(QuickFilter quickFilter)
 {
     if (InternalQuickFiltersList.Remove(quickFilter))
     {
         SaveAllQuickFilters();
     }
 }
        public static void DeleteQuickFilter(int slot)
        {
            if (slot < 0 || slot >= InternalQuickFiltersList.Count)
            {
                return;
            }

            InternalQuickFiltersList.RemoveAt(slot - 1);
            SaveAllQuickFilters();
        }
 /// <summary>
 /// Gets the index of the given quick filter in the global list.
 /// </summary>
 /// <param name="quickFilter">A QuickFilter instance.</param>
 /// <returns>The index of the quick filter if found. Otherwise, -1.</returns>
 public static int IndexOf(QuickFilter quickFilter)
 {
     if (quickFilter == null || InternalQuickFiltersList.Count == 0)
     {
         return(-1);
     }
     else
     {
         return(InternalQuickFiltersList.IndexOf(quickFilter));
     }
 }
        public static void DeleteQuickFilter(string name)
        {
            var quickFilter = InternalQuickFiltersList.FirstOrDefault(x => x.Name == name);

            if (quickFilter == null)
            {
                return;
            }

            InternalQuickFiltersList.Remove(quickFilter);
            SaveAllQuickFilters();
        }