/// <summary> /// Copies this instance to <paramref name="other"/> and returns it /// </summary> /// <param name="other">Destination</param> /// <returns></returns> public DocumentSearcherOptions CopyTo(DocumentSearcherOptions other) { other.MaxResults = MaxResults; other.SearchComparer = SearchComparer; other.Filter = Filter; other.SearchDecompiledData = SearchDecompiledData; return other; }
/// <summary> /// Copies this instance to <paramref name="other"/> and returns it /// </summary> /// <param name="other">Destination</param> /// <returns></returns> public DocumentSearcherOptions CopyTo(DocumentSearcherOptions other) { other.MaxResults = MaxResults; other.SearchComparer = SearchComparer; other.Filter = Filter; other.SearchDecompiledData = SearchDecompiledData; return(other); }
public IDocumentSearcher Create(DocumentSearcherOptions options, IDocumentTreeView documentTreeView) { if (options == null) throw new ArgumentNullException(nameof(options)); if (documentTreeView == null) throw new ArgumentNullException(nameof(documentTreeView)); var searchResultContext = new SearchResultContext(classificationFormatMap, textElementProvider) { SyntaxHighlight = true, Decompiler = decompilerService.Decompiler, }; return new DocumentSearcher(options, documentTreeView, dotNetImageService, searchResultContext); }
void StartSearch() { if (!CanSearch) { Clear(); return; } CancelSearch(); if (string.IsNullOrEmpty(SearchText)) SearchResults.Clear(); else { var options = new DocumentSearcherOptions { SearchComparer = CreateSearchComparer(), Filter = new FlagsDocumentTreeNodeFilter(selectedSearchTypeVM.Flags), SearchDecompiledData = SearchSettings.SearchDecompiledData, }; fileSearcher = fileSearcherProvider.Create(options, documentTreeView); fileSearcher.SyntaxHighlight = SearchSettings.SyntaxHighlight; fileSearcher.Decompiler = Decompiler; fileSearcher.OnSearchCompleted += FileSearcher_OnSearchCompleted; fileSearcher.OnNewSearchResults += FileSearcher_OnNewSearchResults; switch ((SearchLocation)SearchLocationVM.SelectedItem) { case SearchLocation.AllFiles: fileSearcher.Start(GetAllFilesToSearch()); break; case SearchLocation.SelectedFiles: fileSearcher.Start(GetSelectedFilesToSearch()); break; case SearchLocation.AllFilesInSameDir: fileSearcher.Start(GetAllFilesInSameDirToSearch()); break; case SearchLocation.SelectedType: fileSearcher.Start(GetSelectedTypeToSearch()); break; default: throw new InvalidOperationException(); } } }
void StartSearch() { CancelSearch(); if (string.IsNullOrEmpty(SearchText)) SearchResults.Clear(); else { var options = new DocumentSearcherOptions { SearchComparer = SearchComparerFactory.Create(SearchText, CaseSensitive, MatchWholeWords, MatchAnySearchTerm), Filter = filter, SearchDecompiledData = false, }; fileSearcher = fileSearcherProvider.Create(options, documentTreeView); fileSearcher.SyntaxHighlight = SyntaxHighlight; fileSearcher.Decompiler = Language; fileSearcher.OnSearchCompleted += FileSearcher_OnSearchCompleted; fileSearcher.OnNewSearchResults += FileSearcher_OnNewSearchResults; fileSearcher.Start(documentTreeView.TreeView.Root.DataChildren.OfType<DsDocumentNode>()); } }