9.1 is out. Here's what's new in CodeRush and Refactor! Pro since 3.2:
New Version Number. We are now synchronizing our version numbers and releases with the rest of the DXperience product line. Here's how you can make sense of the version number:
Faster Performance. Performance should be noticeably faster in most areas of the product, especially on large projects. Startup time, project opening time and editing performance have all been affected by this work.
Reduced Memory Footprint. Memory usage has been reduced significantly, and should be especially noticeable when working with large projects.
Code Issues. Code issue technology is now shipping. This new technology shows redundant code, hints, warnings, errors, and design-related problems (a.k.a. "code smells") while you work, and also binds to CodeRush's CodeProvider technology and Refactor! Pro's refactoring technology, so you can quickly apply fixes to a number of detected issues.
Feature Control. Now when a CodeRush feature executes, you'll get confirmation and an instant way to keep that feature active or disable it. For example, if our default shortcut conflicts with an existing Visual Studio shortcut, you'll have an opportunity to decide which feature wins. Here's an example:
When the modeless feature control window appears, you can:
- Ignore it and simply continue to work.
- Click one of the "Always do this" links to enable or suppress the feature.
- Click one of the shortcut links (e.g., "Tab" in the screen shot above) to change the shortcut binding to something else.
Note: If you disable a feature, you can re-enable it on the Core\Features options page.
HTML Selection Embedding. You can embed HTML selections in a variety of useful tags, including:
- Bold (<strong>)
- Italics (<em>)
Just select the text you want to embed and press the CodeRush/Refactor key (Ctrl+` by default), select "Embed Selection" and the tag you want to wrap with.
HTML Templates. We've added powerful new templates for HTML developers. These templates appear in the CodeRush Training window (DevExpress | Tool Windows | CodeRush). Supporting both ASP.NET and raw HTML, these templates make it much easier to create content from the source window. Here's a partial list of HTML templates in this release (use the CodeRush Training window to see them all):
These HTML templates are smart and will generate unique values for the ID, Name, and Value properties as needed.
The table templates (.t, .thf, and t appearing in the screen shot above) include UI that makes it easy to create tables of any size. For example, I can create a 2x5 raw HTML table in four keystrokes (".t", Space to expand, followed by Enter to accept the table dimensions).
HTML Cell Navigation. Once you have your table, you'll want to navigate through its cells. We've made this easy, too. Just press the Tab key when the caret is inside a table cell, and Cell Nav will take you to the next cell in the table.
And of course Shift+Tab takes you to the previous cell.
Cell Nav even understands cells that span multiple columns:
And you can use the mouse to get to the cell you're interested in.
Now that you can navigate quickly through your tables, we thought you'd also want to be able to navigate just as efficiently through the items in your list controls (e.g., DropDownList, BulletedList, select, etc.). And so you can. Just press the Tab key to navigate through the items.
CodeRush developers familiar with Tab to Next Reference are no doubt beginning to detect a pattern here. :-)
New Refactorings. This release includes a few new refactorings:
- Compress Assignment. Compresses this assignment to a short form assignment. For example, converts "a = a + b;" (in C#) to "a += b;".
- Expand Assignment. Expands this short form assignment to a full assignment. For example, converts "a += b;" (in C#) to "a = a + b;".
- Split Using Statement. Splits this multi-declaration using statement into two or more neighboring using statements.
- Sort Namespace References. Sorts namespace references in the current file.
Code Providers. There are some powerful new code providers (including a spell checker!) as well:
- Declare Properties. Generates auto-implemented properties for an object initializer expression.
- Declare Fields with Initializers. Adds fields and initializes it to each parameter of a constructor.
- Declare Property with Initializer. Adds an auto-implemented property and initializes it to the parameter under the caret.
- Declare Properties with Initializers. Adds auto-implemented properties and initializes them to each parameter of this constructor.
- Declare Method (abstract). Generates an abstract method for the method call with appropriate parameters.
- Convert to Procedure. Converts a function that returns an object into a method that returns void (or a Sub in VB).
- Convert to Function. Converts a method that returns void (or a Sub in VB) into a function that returns an appropriate type. Note: I use this one frequently. Just add a value to a return statement inside a proc, place the caret on the return keyword, and press the CodeRush/Refactor key.
- Convert to Auto-implemented Property. Converts an unimplemented property into an auto-implemented property.
- Convert to Property with Backing Store. Converts an unimplemented property into a property with backing store.
- Spell Checker. Corrects a spelling error in a comment or string.
We hope you enjoy this new release. We're not finished with our work on performance and memory. We expect the 9.2 release to be even faster with an even smaller footprint. Looking forward to your feedback on 9.1.
Oh, one more thing! CodeRush, Refactor, and a host of other DevExpress products are in the running for the asp.net PRO readers choice awards. Please vote for your favorite tools and controls. Thanks to everyone in advance!