
We’ve been continuing to work on the WPF and Silverlight SyntaxEditor .NET Languages Add-on framework for supporting automated IntelliPrompt. A lot of customers have been asking status so today I’d like to give a first look at the automated quick info popups that are starting to emerge.
For some more background, our previous post described at a high-level many of the framework features necessary to properly support automated IntelliPrompt for C# and VB.
Screenshots
Enough talk, let’s see some screens! Please note that the quick info still needs more tweaks yet (no documentation visible, etc.) but it does at least show what the resolver is finding for the identifier under the mouse, which is the key part.
Namespace Import
This screen shows the mouse over a relative nested namespace import:

Namespace Alias
This screen shows the mouse over an alias T that resolves to System.Text:

Type
This screen shows the mouse over a type, resolved to System.Text.StringBuilder:

Variable
This screen shows the mouse over a variable, whose type is System.Text.StringBuilder:

Member
This screen shows the mouse over a method on the StringBuilder type from variable sb:

Next Steps
Right now we have core context factory code working and unit tested for both C# and VB. That allows us to get some basic general info about an offset.
We also have a good start on resolver code that takes the context and gives back resolved data about it. This needs a decent amount of work yet. We have many common resolution scenarios working but still need to handle more advanced scenarios like checking accessibility of types/members related to the current context, handling member overloads, etc.
We have a start on quick info, which uses both the context factory and resolver to show the popups displayed above. There still is some work left to do on quick info display, which we will hammer out once work on the resolver progresses further.
Our plan is to continue plugging on the code every day until we can display accurate quick info for anything in the editor. Once we have that piece complete, adding completion lists won’t be overly difficult since the resolver code will have already been hammered out.
We’ll post more information soon! Things are definitely moving along well.