From :http://www.javahotchocolate.com/notes/eclipse.html
The Eclipse icon nightmare...
At first glance, Eclipse icons appear mysterious and gaudy—over-decorated, for example . Decoration is a clever idea, but it's sometimes a little annoying. Here are some comments to explain them. You can turn decoration on and off at
Window->Preferences>General>Appearance>Decorators
and you can force decoration to use text instead of icons.
Yellow box at lower right ![](http://www.javahotchocolate.com/notes/images/cylinder.gif)
(Actually, it's a cylinder.) Means the file is under version control.
Question mark superimposed on icon ![](http://www.javahotchocolate.com/notes/images/question-mark.png)
Means version control is active in the project, but the file itself is not under version control nor is it flagged as "ignored" (i.e.: in .cvsignore or has an svn ignore property).
Black box with asterisk at lower right ![](http://www.javahotchocolate.com/notes/images/black-flag.gif)
Means the file or, if a directory, a file it dominates, hasn't been committed to source-code control. Unfortunately, you will see this even if everything that's supposed to be committed is committed. This is because when you add files and otherwise modify the directories, they themselves are noted as needing to be committed when that may be the last thing you want to do.
Red box at lower left ![](http://www.javahotchocolate.com/notes/images/error.gif)
Means there is a compilation or validation error in the file or, if a directory, a file it dominates. If this is on a JAR or other file you wouldn't think should be in an error state, it might mean that the actual file it represents in the filesystem underneath has gone missing.
Yellow triangle at upper left ![](http://www.javahotchocolate.com/notes/images/warning.gif)
Means there is a compilation or validation warning in the file or, if a directory, a file it dominates.