JGRASP all the way!!!
www.jgrasp.org Free, multi-platform IDE, great interface, and made by Computer Science/Software Engineering majors at Auburn University. Can create UML diagrams, API documentation, and JAR files. It also support Ada95, C, C++, Objective-C, and VHDL. Plus, it can ntegrate a CSD (Control Structure Diagram) into the code itself, and you can collapse/expand classes, methods, loops, if statements, try/catch statements, and anything else that requires {}.