Analyze Search Results
If any of the dotPeek's navigation and search actions produces multiple results, these results can be displayed in the Find Results window, which provides a lot of ways to analyze the search results.
Some actions, for example Find Usages automatically display the results in this window. For other actions, you can do it manually when a popup with the search results is displayed — click Show in Find Results , press Shift+Enter or + on the numeric keypad.
Results of each new navigation or search action are displayed in a new tab of the Find Results window, so you can easily get back to previous searches.
If you close the Find Results window, you can always reopen it by choosing in the main menu or by pressing Ctrl+Alt+U. Tabs with search results are preserved until you close the solution.
Viewing the code related to a search result
To open a specific result in the code viewer, double-click it or press Enter.
Filtering search results
To filter search results by name, just start typing the part of the name in the window.
Search results of most navigation and search commands can be further filtered by the kind of occurrence.
To show only read or write usages, click or on the toolbar.
Click Filter Usages and choose which kinds of occurrences should be displayed.
To clear the filtering, click Filter Usages and choose Show all usages.
To hide some occurrences, select one or more items or grouping nodes, and press Delete or right-click and choose Ignore. Selected occurrences will be hidden from the current results view. You can use the Show Ignored Usages button on the toolbar to show or hide ignored items, which are displayed in grey. When ignored items are shown, you can right-click them and choose Undo Ignore to stop ignoring them.
Grouping search results
By default, all results are shown as separate items. Sometimes it can be convenient to display all results found in the same line as a single item. To do so, click Merge Occurrences on the Same Line on the toolbar.
Search results can be displayed in various hierarchical orders. The default order depends on the initial search but you can always change it with the Group by selector on the toolbar.
You can also group search results by kind of usage - that is, how exactly the target item is used at different places — for example, declaration, invocation, parameter, method return, and so on. To do so, click Toggle grouping by kind on the toolbar.
If you want to display results as a plain list, select None in the Group by selector.
Other actions with search results
If the search results are related to each other (that is, if they are usages of a specific symbol, symbols derived from a specific symbol, and so on), you can display them in the type dependency diagram by clicking Show on Diagram on the toolbar.
If any symbol or a grouping node is not the target of the usages search in the current tab, you can find usages of this symbol or find usages of related symbols right from the Find Results window. To do so, right-click this item and choose the corresponding action in the context menu, or alternatively, press Alt+F7 or Shift+Alt+F7.
This feature is inspired by and borrowed from JetBrains ReSharper, a developer productivity tool for Microsoft Visual Studio.