예제 #1
0
		/// <summary>
		/// Constructor
		/// </summary>
		/// <param name="filter">Filter</param>
		/// <param name="searchComparer">Search comparer</param>
		/// <param name="onMatch">Called when there's a match</param>
		/// <param name="language">Language</param>
		/// <param name="cancellationToken">Cancellation token</param>
		public FilterSearcher(ITreeViewNodeFilter filter, ISearchComparer searchComparer, Action<SearchResult> onMatch, Language language, CancellationToken cancellationToken) {
			if (filter == null)
				throw new ArgumentNullException();
			if (searchComparer == null)
				throw new ArgumentNullException();
			if (onMatch == null)
				throw new ArgumentNullException();
			if (language == null)
				throw new ArgumentNullException();
			this.filter = filter;
			this.searchComparer = searchComparer;
			this.onMatch = onMatch;
			this.language = language;
			this.cancellationToken = cancellationToken;
		}
예제 #2
0
파일: SearchPane.cs 프로젝트: xornand/dnSpy
        public RunningSearch(IEnumerable <AssemblyTreeNode> asmNodes, ISearchComparer searchComparer, ITreeViewNodeFilter filter, Language language)
        {
            this.dispatcher = Dispatcher.CurrentDispatcher;
            this.asmNodes   = asmNodes.ToArray();
            foreach (var asmNode in this.asmNodes)
            {
                asmNode.EnsureChildrenFiltered();
            }
            this.searchComparer = searchComparer;
            this.language       = language;
            this.filter         = filter;

            this.Results.Add(new SearchResult {
                NameObject = "Searching..."
            });
        }
예제 #3
0
		/// <summary>
		/// Constructor
		/// </summary>
		/// <param name="filter">Filter</param>
		/// <param name="searchComparer">Search comparer</param>
		/// <param name="onMatch">Called when there's a match</param>
		/// <param name="language">Language</param>
		/// <param name="cancellationToken">Cancellation token</param>
		public FilterSearcher(ITreeViewNodeFilter filter, ISearchComparer searchComparer, Action<SearchResult> onMatch, Language language, CancellationToken cancellationToken) {
			if (filter == null)
				throw new ArgumentNullException();
			if (searchComparer == null)
				throw new ArgumentNullException();
			if (onMatch == null)
				throw new ArgumentNullException();
			if (language == null)
				throw new ArgumentNullException();
			this.filter = filter;
			this.searchComparer = searchComparer;
			this.onMatch = onMatch;
			this.language = language;
			this.cancellationToken = cancellationToken;
		}
예제 #4
0
파일: SearchPane.cs 프로젝트: 4058665/dnSpy
        public RunningSearch(IEnumerable<AssemblyTreeNode> asmNodes, ISearchComparer searchComparer, ITreeViewNodeFilter filter, Language language)
        {
            this.dispatcher = Dispatcher.CurrentDispatcher;
            this.asmNodes = asmNodes.ToArray();
            foreach (var asmNode in this.asmNodes)
                asmNode.EnsureChildrenFiltered();
            this.searchComparer = searchComparer;
            this.language = language;
            this.filter = filter;

            this.Results.Add(new SearchResult { NameObject = "Searching…" });
        }