As I am maintaining an [url=http://arduino.cc/forum/index.php/topic,94066.0.html[/url]Arduino edition of CodeBlocks[/url] right now and boes has been maintaining Ardulibrary for quite a while, I want to discuss about the possiblities of integrating Ardulibrary into CodeBlocks. I think there are at least 3 alternative ways to achieve this.
1. implementing a CodeBlocks plugin
I think this is the most native way and Ardulibrary can interact with the IDE all the way. Things users may need to perform include downloading a library and adding reference in their project. This requires some interaction between the Ardulibrary and CodeBlock IDE, mainly adding source code files into project and inserting #include lines automatically.
2. Ardulibrary as an external tool
This is the least coherent implementation. Users just choose a menu item in tool menu and Ardulibrary is launched. CodeBlocks can pass some command line arguments to the tool, which can be CodeBlocks system-wide variables that is expanded when it calls the tool. But I don't know how to let users add reference to libraries in this implementation.
3. invoking Ardulibrary in project wizard
Users can see all available libraries and choose to download and add reference to them during the project wizard is proceeding. The wizard invokes Ardulibrary in this way and modifies the pre-created source codes to include the referenced libraries.