Enhanced Listboxes

Member listboxes appear when you type an object name followed by -> or dot. You see a list of methods and variables available to the object.

memberNoColor.gif

Completion listboxes appear when you type the prefix of a symbol and press Ctrl+Space. You see a list of symbols valid in the context that begin with the characters you typed. While completion listboxes look and appear like member listboxes, they are available any time and contain more than just methods and variables.

completionBlack.gif

More Often, More Accurate

With Visual Assist X, both types of listboxes are available more often and with more accurate results. The listboxes are available for virtually all objects, for all prefixes and in all contexts. You see listboxes without the waiting and wondering associated with default IntelliSense.

Colored Content

Configure Visual Assist X so it applies enhanced syntax coloring to entries in member and completion listboxes. Your listboxes are easier to read.

memberNoColor.gif

Filtered Content

Hover over a listbox and a filtering toolbar appears. Press buttons to include only public members, methods, resources, events, etc. Hover over the buttons to identify their meanings.

memberFilter.gif

Allow Acronyms

Acronyms are short and simple abbreviations for symbols. Type an acronym and Visual Assist X finds the symbol to which you refer.

Type gil to select GetImageList in a listbox.

acronymGil.gif

Allow Shorthand

Shorthand is another, entirely new way to reference and expand symbols. Like acronyms, shorthand find symbols without typing their full names. Shorthand works when you know only bits and pieces of names, i.e. you know less than necessary to use acronyms.

Type query to see all members related to querying.

shorthandQuery.gif

Shrink When Possible

Save space and find your place in listboxes more easily by configuring listboxes to shrink when possible. Only entries beginning with your typed characters remain. Backspace and the listboxes grow.

memberShrink.gif

Bold Non-Inherited Members

Determine origin of methods in member listboxes by electing to bold non-inherited members. The highlighting indicates an entry is local to a class. Know when a method is from a base class or overridden.

memberBold.gif

Enable bold in the options dialog.

memberBoldOption.gif

List Non-Inherited Entries First

Access non-inherited entries quickly by having them listed first. Scroll to see entries from base classes.

memberListFirst.gif

Enable this feature in the options dialog. Enable bolding of non-inherited members and shrinking to make this feature most useful.

memberListFirstOption.gif

memberShrinkOption.gif

Completion of #include

Visual Assist X opens a listbox in C/C++ after typing #include and a double quote. Force open the listbox by pressing Ctrl+Space between the double quotes.

completionIncludeQuote.gif

Appropriate list content appears if you type an angle bracket.

completionIncludeBracket.gif

Appropriate list content appears when you select a directory and type slash.

completionIncludeSub#1694E8.gif

Completion within Comments and Strings

Visual Assist X can open a listbox of completions when typing inside comments and strings. You must force open the listbox with Ctrl+Space. Tab does not suffice.

Since symbols within comments and strings do not have context, completions are assemblied from text strings within your file. Completions are unrelated to symbol definitions.

memberInsideComment.gif

Completing in the Middle of a Symbol

Move the text caret to the middle or end of a symbol and press Ctrl+Space to generate a completion listbox for the text to the left of the caret.

completionMiddle.gif

Select an entry to replace the current symbol. Text to the right is removed if it is a suffix of the entry selected, and the text does not form a symbol on its own.

completionMiddleRepl#169349.gif

Visual Assist X assumes you are typing in front of existing code, and want to keep the text to the right, if the text is a symbol valid in any context.

completionMiddleKeepRight.gif

Types of Listboxes

Member and completion listboxes operate in a virtually identical manner. They differ in how they are invoked and what they contain. Member listboxes open automatically on -> and dot. Completion listboxes open when you type a partial symbol and press Ctrl+Space.

Member and completion listboxes differ in several ways from suggestion lists. Suggestion lists appear automatically, and often, as you type. They contain the most probable completions, not all of them.

Suggestion lists are easily recognized by their question mark icons.

suggestion.gif

Press Ctrl+Space to replace a suggestion list with a completion listbox. Though the completion listbox typically has more entries than a suggestion list, it may contain just the suggestions.

suggestionCtrlSpace.gif

Content of Listboxes

Visual Assist X causes listboxes to appear more often, and replaces each default listbox with an enhanced version. For all languages other than C/C++, the content of listboxes is identical to what appears with default Intellisense.

For C/C++, you have the option to disable default IntelliSense and let Visual Assist X populate listboxes using its own content. The content is taken from parsers built into Visual Assist X. Select this mode if the IDE does not display accurate content in listboxes for your C/C++ code.

defaultIntellisenseU#169576.gif

If Visual Assist X displays less accurate content, e.g. for STL, enable the option to get content from default Intellisense.

defaultIntellisenseChecked.gif

Unlike with default Intellisense, Visual Assist X does not include prebuilt symbol databases. Content for listboxes is extracted from libraries imported by your code or declared in C/C++ headers included by your source. Objects originate in system libraries such as ATL/WTL/STL, third-party libraries, and of course, your own code. There are no restrictions and you do not need to build before listboxes for new objects are available.

Regardless of settings, the content of listboxes after typing :: is always taken from default Intellisense. The :: need or need not follow a class. Listboxes may take a few seconds to appear.

Filtering Toolbar

Hover over a listbox and a filtering toolbar appears. Press buttons to include only public members, methods, resources, events, etc. Hover over the buttons to identify their meanings.

memberFilter.gif

Buttons in the filtering toolbar are not sticky; filtering is disabled each time you open a listbox.

Select multiple types using Shift+Click and Ctrl+Click. Entries of all types remain.

memberFilterMultiple.gif

Click a depressed button to undo filtering.

Only buttons relevant to the content of a listbox appear. For example, buttons to show resources and events appears for C#, when valid in the current context, but never for C/C++.

Buttons in a members listbox, after pressing -> or dot, appear for all members of the class. The buttons do not disappear as you type. Pressing a button is ineffective if the listbox no longer contains entries of the selected type.

Keyboard access to filtering is not available.

Miscellaneous

The font used in all listboxes is the font of icon title specified in Control Panel|Display|Appearance|Advanced.

Current entry is highlighted using a slightly darker shade of background color when enhanced syntax coloring is applied to listboxes. This prevents your normal highlight color, e.g. blue, from obscuring colored entries.

Private members appear in listboxes even when outside a class definition.

Member listboxes include operators and destructors.

Constructors are colored as methods in member listboxes, and included in public methods when filtering.

Pasting while a listbox is open causes the listbox to clear and the pasted text to get inserted in your code.

Reserved words appear in completion listboxes, and appear with a new icon. For example, type thi and press Ctrl+Space. The listbox contains this.

this.gif