Oh the summer is here and the software is hot!
|
|
General Improvements |
|
DOM Based Language Backend |
The CDT 3.0 is now served by a much more powerful language model in the form of a DOM that helps make everything from the C/C++ Outliner to Searching to Re-factoring to Class Browsing faster and more accessible to plugin developers. |
K&R C Language Support |
In addition to the new DOM serving the backend source code model, the CDT native parser is also much more tolerant of K&R C Language dialects. |
Faster Searches |
Significant work has gone into improving the performance and speed of the C/C++ parser and the efficiency of the indexer. As a result searches (both general and specific as in search for references and declarations) are faster and more accurate than previous releases. |
|
|
C/C++ User Interface |
|
Build Environment Control |
The environment used when kicking off external commands to build can now be fully configured. The environment settings are available on Standard Make and Managed C/C++ projects or can be set directly when creating new projects directly from the New Project dialogs for C/C++ projects.
|
PathEntry Variables |
The PathEntry project properties are important for the correct operation of the CDT parser. The new Window > Preferences > C/C++ > PathEntry Variables configuration allows developers to configure a common set of variables that will allow projects to be shared more easily between different developer set-ups.
|
Binary Parser Options |
The binary parsers have been made more generic with the capability to redefine what external commands they use for data interpretations. Configure the settings in the Project Properties or at New Project creation time.
|
New Discovery Capabilities |
Further work has been done to facilitate the discovery of compiler and project settings, including the ability to read in the output from an existing build file.
|
Indexer Selection |
When you can't make them happy, give them choice! C/C++ source indexers are now plugable components (each providing to different feature support) allowing users to select from:
|
Drag and Drop Support |
The C/C++ Project and the C/C++ Outline views now both have improved support for dragging and dropping of code elements and binaries. |
Make Target Filters |
The Make Targets view can now be a little more clutter free by enabling the Hide Empty Folders filter in the view.
|
Jump to Definition |
C/C++ cross referencing just got easier! Complementing the already existing Open Declaration, also know as the infamous F3, is the powerful Open Definition (aka F2) that will take you directly to the definition of the class or type you are looking for.
|
New Editing Commands |
Do more with less effort, additional C/C++ Editor keybindings are available now
for bracket matching Ctrl+Shift+P, block |
Editor Platform Alignment |
The C/C++ Editor is more aligned with the platform preferences and settings. All of the common text editor settings are available through Window > Preferences > General > Editors > Text Editors A few new features have been added to the C/C++ Editor syntax highlighting, accessed through Windows > Preferences > C/C++ > Editor > Syntax, including the colouring of operators, braces and numbers and a new in-place outline that can be activated Ctrl+O
|
|
|
Debugger |
|
New Modules View |
All of the binary components, or modules, are now displayed in the debugger Modules view. This includes dlls, shared objects and the binaries themselves. Additionally, each module can be expanded allowing the user to put breakpoints directly on binary components without the need to go to the C/C++ Project view
|
Memory View |
The debugger now makes use of the standard platform Memory view.
|
Register Groups |
The Registers view now supports the concept of register groups, allowing users to defined collection of registers that are relevant for their environments.
|
New Editor Commands |
The Run to line and Resume at line commands are now exposed and visible through the C/C++ editor while debugging. |
|
|
Managed Build System |
|
Configuration Overhaul! |
There has been an enormous amount of work done to clean up and improve the user experience and workflow for developers (and integrators) using the Managed Build system. The new C/C++ Build project preference shows the number of new enhancements:
|
Build Macro Support |
The managed build preferences now support a wide set of macros that can be incorporated into your project. The system environment settings are inherited and individual macros can be set globally or local to a particular project that define Strings, Files, Directories or lists of any of these items.
|
Per File Build Steps |
Users now have the ability to define a custom build step for any source file in the project. This build step can generate additional output sources and/or make adjustments to other project properties. For example, a user could add a yacc source file to her project, specify the yacc command line and the name of the C output file, and the generated C file will automatically be compiled with the other C files in the project.
|
Configuration Renaming |
Gone are the days of picking a good name for your build configuration and having to live with it for the life of the project. Build configurations can now be renamed through the Manage... selection of the project's build properties.
|