Standard tool windows
There are two standard tool windows in ReSharper 2.5.*, in the next release there will be more. Current two are Type Hierarchy and SearchResults.
In order to provide contents to standard tabbed tool window, you need to create a descriptor - instance of type implementing TreeModelBrowserDescriptor. When you have an instance you pass it to TreeModelBrowser component:
TreeModelBrowser.GetInstance(solution).Show(TreeModelBrowser.HierarchyResultsID, descriptor);
Search Results
This tool window displays results for various searches and results of other operations, like usages, derived and base types, results from Find Text power toy, conflicts from refactorings and so on.
Normally descriptors derived from OccurenceBrowserDescriptor are passed to search results. This base type provides functionality for filtering, grouping, occurence merging, code preview and navigation.
In addition, there is SearchDescriptor which real searches usually inherit. This type acts as a bridge between descriptors and low-level SearchRequest hierarchy. It also builds more complex tree of items, containing both search targets and search results.
Type Hierarchies
In ReSharper, only type hierarchies are displayed in this tool window, but plugin developer can add own type-browsing views into it. Power Toy Explore Type Interface does so. In the future versions this standard tool window will be given more generic name, specifying place for various type-browsing features.
Descriptors for this tool window are usually built right from TreeModelBrowserDescriptor and use tree model derived from TreeDemandModel. This helps improve user experience by building trees as user expand nodes.
References
To.Be.Specified.dll – description