Early news about Visual Studio 2010 support with CodeRush

14 November 2009

I know a lot of our CodeRush customers are anxiously awaiting news about CodeRush and Refactor! Pro for Visual Studio 2010. Rest assured we are working on it but, because of the major differences in the editor, the task is major.

Now we could make it easier by just targeting Visual Studio 2010 but, as Mark eloquently explained here, we are making DXCore (the underlying plug-in for both CodeRush and Refactor! Pro) work both in VS 2005/2008 and in VS2010. The reason for this is simple: although VS2010 will have much better support for WPF and Silverlight, and Microsoft are trying to sweeten the pill of upgrading to VS2010 from VS2008, many customers will undoubtedly be staying with the IDE they use right now for the next year or so. It makes sense, therefore, for us to have a single codebase for for near to middle future.

This also means that our flourishing community of DXCore plug-in developers — a major feature and benefit of the CodeRush ecosystem — need only write their code once as well. We won't be forcing anyone to choose the latest IDE, should they not want to.

So how is this work going? Well, the team have been slaving over hot keyboards and mice to create a drop that we can demo at PDC. And they have succeeded. Compared with the full version CodeRush running on VS2008, this pre-pre-alpha has more holes than Swiss cheese, but it demonstrates that our commitment for backward and forward compatibility is the right choice to make.

Yeah, enough with the waffle, let's get down to some real details. Remember this is work in progress, so you'll see stuff that still needs tweaking:

VS10_m template and TextFields

This composite image shows that we properly scale the UI along with the editor, and we're showing off that the text field works inside the editor. The image is the result of expanding the 'm' template — in general, template expansion works fine right now, although more testing is needed, of course.

VS10_Markers BookMarks Selection Marker

A similar image showing that scaling works. This time we're showing that markers also work, however we still have to add the usual "pick up" animation. We also feel that they're perhaps a little too prominent at the moment.


Here, you can see the Rename refactoring in progress. Although we don't yet have the smart tag being shown, the menu works (and we're picking up the standard Rename refactoring and displaying it in the menu as well as ours). In the background you can see the visual preview hint of what's going to be renamed, although we feel that the highlight should possibly be lowered a little.

VS10_Same LIDs in 2 TextViews

Here you can see the linked identifiers, both being edited at the same time. Again, we see the same view at different scales.

VS10_SimplifyExpression Code Preview

This is another great shot of the Preview hinting in action, here showing a possible Simplify Expression refactoring. Again we feel the hinting is possibly a little too high off the code baseline.


This image shows you that the structural highlighting is fully functional.

In essence the non-visual features are mostly complete: things like template expansion, Tab to Next Reference, Smart Paste, Auto Declare, Camel Case Navigation, Invert and Embed Selection, Duplicate Line, and so on work well. The painting code for preview hinting is in the process of being converted, so, as of yesterday, what you see here is what we have. Many refactorings have been ported (various conditional refactorings, extract interface, surround with, move method, etc, etc), but not all of them have been properly tested. Various tool windows have been ported as well (open files, recent files, CodeRush training, references window, etc).

Not only that but part of the team is already implementing the new language features in our internal parser. Constructs such as dynamic, named parameters in C#, auto-implemented properties in VB have been completed already.

So, all in all then, we'll be able to show some features of CodeRush and Refactor! Pro working inside Visual Studio 2010 in our booth at PDC. Come along and ask for Mark and I'm sure he would love to show it off, although we don't have any guitar support yet.

I will warn you right now though that we are some time away from being able to release anything as beta, so there's not going to be any bits for you to try for a while.

Free DevExpress Products - Get Your Copy Today

The following free DevExpress product offers remain available. Should you have any questions about the free offers below, please submit a ticket via the DevExpress Support Center at your convenience. We'll be happy to follow-up.
No Comments

Please login or register to post comments.