The Primary Filter can be accessed at any time from inside Visual Studio or Visual Sidekick by pressing Ctrl-Q (Q for Global Query) or Ctrl+Shift+L (for Local Query).
The Secondary Filter can be accessed by pressing TAB when the Primary Filter has focus.
When no filter text is present in both filters, all Browse Tree objects are displayed. Global Symbols are not displayed as there are usually too many global symbols in a solution for this view to be of any use at this level.
The Browse Toolbar includes buttons that control the state of the filters:
| Browse Toolbar Button | 2003 Icon | 2005 Icon | Hotkey | Description |
|---|---|---|---|---|
| Clear Filter | Ctrl-Shift-Del | Clears both Filter Boxes and sets focus to the Primary Filter. | ||
| Previous History State | Ctrl-Alt-Left Arrow | Changes both Filters and the Browse Tree to the "previous" state in the history list. | ||
| Next History State | Ctrl-Alt-Right Arrow | Changes both Filters and the Browse Tree to the "next" state in the history list. |
Pressing Ctrl+Shift+L will automatically select the Local View, allowing filtering of symbols within the current file. Pressing Ctrl+Q will select the Solution View if the Local View has focus, allowing filtering of symbols across the solution.
The usage concept for these two keys is to use Ctrl+Shift+L as a replacement for Ctrl+F (Find) or Ctrl+I (Incremental Find) when looking for symbols in the current file, and to use Ctrl+Q as a replacement for Ctrl+Shift+F (Find In Files) when looking for symbols outside the current file.
| Symbol Search Tasks | How to do it |
|---|---|
| Must start with a sub-string | Type the sub-string directly into the Primary Filter (no preceding white space) |
| Must contain a sub-string | Type a space first then type the sub-string (use the Primary Filter) |
| Must start with a sub-string AND contain one or more sub-strings | Mix the above two steps together (use the Primary Filter). |
| Primary Filter Text | Desired Effect |
|---|---|
| cmy | Find all symbols starting with "cmy" |
| [space]dlg | Find all classes with the word "dlg" or "Dlg" or "DLG". |
| c[space]dlg | Find all classes starting with a "c" and including the text "dlg". |
| c[space]my[space]dlg | Find all classes starting with a "c" and including the text "my" and "dlg. |
The Secondary Filter is used to perform a filter on class name and member name simultaneously.
Examples:
| Primary Filter Text | Secondary Filter Text | Desired Effect |
|---|---|---|
| cmyapp | on | Display all methods/members of CMyApp that start with "on" |
| cmyclass | * | Display all methods/members of CMyApp. |
| [space]dlg | [space]draw | Display all methods/members with "draw" in their name, for classes with "dlg" in their name. |