The SharpDevelop repository now contains a sample application that shows how to use our libraries ICSharpCode.SharpDevelop.Dom and ICSharpCode.TextEditor to enable code-completion.
You can find it in the folder SharpDevelop\samples\CSharpCodeCompletion. The expression resolver is part of SharpDevelop.Dom, so the example supports complex generic types etc. However it implements only code-completion when typing "." - no Ctrl+Space, keyword-completion or method insight. The code was kept as simple as possible, so multiple overloads are not filtered out, and there are no different icons for protected or internal members.

In the directory
samples\NRefactoryExample you can find a new demo of our VB.NET/C# parser library.
It converts a code snippet into it's abstract syntax tree represntation (AST) which you can see and modify in the treeview below. The other way (AST to code) supported as well as running a visitor on the tree.
Supposed you want to call a method and don't know the return type you can use this handy completion feature:
int getSomeObscureType()
{
return 1;
}
void test()
{
? x = getSomeObscureType();
}
After you typed the semicolon (highlighted in red), the placeholder "?" is replaced by the return type of the called method:
void test()
{
int x = getSomeObscureType();
}
Once again we are sitting in Bad Ischl discussing and working on SharpDevelop.

Chris showing off his brand new machine.

Daniel, after optimizing the folding speed.