Ejemplo n.º 1
0
        public bool isMatched(ref TKAlarm alarm)
        {
            lock (AllFilters.SyncRoot)
            {
                if (AllFilters.Count == 0)
                {
                    return(true);
                }

                if (AllFilters.Count == 1)
                {
                    FilterEx f = (FilterEx)AllFilters[AllFilters.GetKey(0)];
                    m_filterAllSee = f;
                    return(f.isMatched(ref alarm));
                }

                bool bMatched = false;
                foreach (DictionaryEntry de in AllFilters)
                {
                    bMatched = ((FilterEx)AllFilters[de.Key]).isMatched(ref alarm);
                    if (bMatched)
                    {
                        return(true);
                    }
                }
            }

            return(false);            // 不能直接返回false,可能未做任何比较
        }
Ejemplo n.º 2
0
        private void LoadSavedFilters()
        {
            if (Properties.Settings.Default.FiltersChecked == null)
            {
                Properties.Settings.Default.FiltersChecked = new StringCollection();
                foreach (var filter in AllFilters.Where(filter => filter.Checked))
                {
                    Properties.Settings.Default.FiltersChecked.Add(filter.UniqueName);
                }
            }
            else
            {
                foreach (var filter in AllFilters)
                {
                    filter.Checked = Properties.Settings.Default.FiltersChecked.Contains(filter.UniqueName);

                    filter.PropertyChanged += (o, e) =>
                    {
                        if (filter.Checked)
                        {
                            Properties.Settings.Default.FiltersChecked.Add(filter.UniqueName);
                        }
                        else
                        {
                            Properties.Settings.Default.FiltersChecked.Remove(filter.UniqueName);
                        }

                        Properties.Settings.Default.Save();
                    };
                }
            }

            Properties.Settings.Default.Save();
        }
        public ISwumRecommendedQuery[] SelectSortSwumRecommendations(string originalQuery, string[] queries)
        {
            var filters = new AllFilters(originalQuery);
            var list    = GetSearchHistoryItemStartingWith(originalQuery);
            var state   = GetQueryInputState(originalQuery);

            list.AddRange(state.SortQueries(queries));
            return(HandleCornerCases(originalQuery, filters.FilterBadQueries(list.ToArray())));
        }
Ejemplo n.º 4
0
        private void UpdateSearchFiltersList()
        {
            this.AllFilters.Clear();

            var error = "";

            var dbFilters = SearchFiltersContextWrapper.GetAllSearchFilters(out error);

            dbFilters.ForEach(x => AllFilters.Add(x));

            OnPropertyChanged("AllFilters");
        }
        public AssetTabControl(BinaryFileType binaryFileType, AssetType assetType, string openDialogFilter, string assetTypeJsonFileName)
        {
            InitializeComponent();

            AssetType = assetType;

            List <AbstractAsset> assets = AssetHandler.Instance.GetAssets(binaryFileType, assetTypeJsonFileName).ToList();

            int i = 0;

            foreach (AbstractAsset asset in assets)
            {
                AssetRowControl rowHandler = new AssetRowControl(asset, assetType, i++ % 2 == 0, openDialogFilter);
                RowControls.Add(rowHandler);
            }

            AllFilters   = RowControls.Select(a => a.Asset).SelectMany(a => a.Tags ?? new List <string>()).Where(t => !string.IsNullOrEmpty(t)).Distinct().OrderBy(s => s);
            FiltersCount = AllFilters.Count();

            FilterHighlightColor = EditorUtils.FromRgbTuple(assetType.GetColor()) * 0.25f;

            Previewer = assetType switch
            {
                AssetType.Audio => new AudioPreviewerControl(),
                AssetType.Model => new ModelPreviewerControl(),
                AssetType.ModelBinding => new ModelBindingPreviewerControl(),
                AssetType.Particle => new ParticlePreviewerControl(),
                AssetType.Shader => new ShaderPreviewerControl(),
                AssetType.Texture => new TexturePreviewerControl(),
                _ => throw new NotSupportedException($"Previewer control for type {assetType} is not supported."),
            };

            MainGrid.Children.Add(Previewer);

            if (assetType == AssetType.Audio)
            {
                StackPanelLoudness.Visibility  = Visibility.Visible;
                ColumnDefinitionLoudness.Width = new GridLength(96);
            }
        }
Ejemplo n.º 6
0
 private Filter GetExisting(Filter filter)
 {
     return(AllFilters.FirstOrDefault(f => f.Equals(filter)));
 }
Ejemplo n.º 7
0
 private void Form1_Load(object sender, EventArgs e)
 {
     image      = new Bitmap(originalImage.Image); // create an image same size with the original image
     allFilters = new AllFilters();                // creating a new class to use for applying filters
 }
 //статический метод для получения всех фильтров
 public static IReadOnlyList <ZeroNeighborsSharedFilter> GetAllFilters()
 {
     return(AllFilters.AsReadOnly());
 }
 //статический метод для получения фильтра по ID
 public static ZeroNeighborsSharedFilter GetFilterByID(int id)
 {
     return(AllFilters.Where((ZeroNeighborsSharedFilter f) => { return f.FilterID == id; }).First());
 }