codeblocks: Code::Blocks is a free C/C++ and Fortran IDE. It is built around a plugin framework, hence it can be extended with plugins.
components
wxscintilla: wxScintilla implements the Scintilla editing control with the wxWidgets API. Scintilla is a free source code editing component which includes useful features such as syntax styling, error indicators, folding, code completion and call tips. The project includes SciTE (SCIntilla based Text Editor).
autosave: The autosave plugin saves a project and its source files at regular intervals.
Class Wizard: The class wizard plugin provides an easy way to create a new C++ class file pair.
Code completion: The code completion plugin provides a symbols browser and code-completion inside the editor.
Compiler plugin: The compiler plugin interfaces with various compilers: GNUC, Microsoft Visual C++, etc.
Debugger plugin: The debugger plugin interfaces with the GNU GDB and Microsoft CDB debuggers, providing a graphical interface to these command-line tools.
Header Guard plugin: Adds a header guard to every .h file. Not built by default. (like #ifndef MYHEADER_H_INCLUDED, #define MYHEADER_H_INCLUDED, etc.)
Log Hacker plugin: LogHacker manipulates the loggers created in several plugins and in Code::Blocks' core. Not built by default.
Mod poller plugin: Modpoller polls files at a certain interval, causing Code::Blocks to re-load any that have been modified externally. Not built by default.
Projects Importer plugin: ProjectsImporter imports foreign projects and workspaces from Dev-C++, MSVC6, MSVC7, and MSVC8 for use as a Code::Blocks project.
Scripted Wizard plugin: The ScriptedWizard plugin allows for project generation wizards to be created with script files.
Tidy cmt plugin: Tidycmt formats comments to a specific style upon file save. Not built by default.