UMLet should fit your needs as it is an Eclipse plugin.
ArgoUML as /u/Melair recommended is also a valid option, only it is standalone. It can do reverse engineering as well.
As a third option, you could import your code into BlueJ which is a "beginner IDE" that also draws UML diagrams and also creates the relationships of the classes for you. (I would not recommend using BlueJ as an IDE as such, because it is way too limited, especially once you already know Eclipse, but the UML feature is fairly nice.)
I setup a trello board with all my ideas
I do wireframes using a whiteboard (you can get a cheap one from home depot for like 15 USD)
I also plan out my data models on a white board too.
edit: should be noted once I finalize the wireframes/data models I transfer them to a PNG and the models to UML (http://www.umlet.com/)
Some friends and I have all been using UMLet http://www.umlet.com/
It's simple, fairly flexible and can run on just about everything (It's a java app).
I have never used it but it looks like they have an online version now as well. http://www.umlet.com/umletino/
Umlet, either stand-alone or as Eclipse plug-in. Offers no help to make your diagrams correct, but doesn't get in your way if you know what you are doing.
I can't vouch for the quality of the generated code, but I believe it might be pretty basic.
I used this to make UML diagrams for 162. Not the prettiest diagrams you'll find but it's quick and simple to use. It made the process of planning out my classes so much easier. http://www.umlet.com/umletino/
The Violet UML editor is open source. It supports the most commonly used diagram types.
There's also UMLet, but it's a pain in the ass to put labels on arrows.
Well, you have Umlet. You can find an online version here. However, I would urge you to consider that planning out a whole application on such a detailed level will only lead to slower development. The design will never truly be how you plan it.
UML diagrams are often used to show the dependencies between the bigger pieces of a system/solution etc, but not that often for a detailed class overview of an application before development. That sounds very waterefall'y (which most want to avoid)
I have been thinking about using something like Graphviz or umlet to generate design docs. Both use a text file to generate the diagrams, so you could keep your docs in Git for versioning.
Pseudocode would be another option. It is just text, and once you have the your program designed in pseudo code you can pretty much type over it to write you program. It looks likes there are even tools to convert pseudocode to code.
I use only two tools:
I've found in practice I don't actually need a whole lot of the UML tools that we have been taught at my university.
The one thing I most frequently use, non-surprisingly, based on these two tools, are modelling of analysis diagrams, and sequence diagrams prior to starting to code.
Use-Case modelling I do in plain text. I haven't yet worked on a project so large that I needed anything other than basic search functionality to sort through them.
I know some of my fellow students use some tools after initial code base has been established that can generate these things automatically. I have no idea what they are however.
I think a google search, along with whichever IDE you prefer as keywords should help you there though.