Re: The screwdriver is back!
Jesse Glick <[email protected]>
| Newsgroups | gmane.comp.java.netbeans.user-interface |
|---|---|
| Organization | Sun Microsystems / NetBeans |
| Message-ID | <[email protected]> |
Petr Hrebejk wrote:
> 1) If there is not the @Override in the [source] then there would
> [be] a warning but the warning icon does not show what warning that
> is.
Sure, but if you accepted the hint then you wouldn't need to look at the
icon any more; just like any other hint. Of course this does not apply
to -source 1.4 or earlier where @Override is impossible.
> 2) Go To super implementation is less discoverable IMO.
Possibly. (Took me a little while to figure out clicking on the icon did
something, but not too long.) A menu item is more accessible, on the
other hand (Ctrl-B).
> 3) Id the navigation does not work please file a bug.
I did already, just isn't fixed yet.
> What's so bad about screwdrivers?
Actually the icon is pretty. I just haven't figured out what
implementing an interface has to do with driving screws. :-) The wrench
on uncompiled files is mostly mysterious too, but it says to me "you
need to use some tool on this" (and it's better than the old "binary
garbage" icon badge no one could figure out).
David Strupl wrote:
> It is much faster visually to have some kind of icon than whatever in
> the annotation.
Exactly. My question is how important the information is when you're
reading code - whether it deserves drawing attention away from other
icons in the gutter. There is no icon for public methods, and we don't
need one, because you can see for yourself in the source code that the
method is "public". In C#, you don't need an icon in your IDE to tell
you that a method overrides a virtual base method, because the source
code has to say so.
An example:
34 EventQueue.invokeLater(new Runnable() {
(I) public void run() {
36 updateWith(complex + calcul.ation());
37 }
38 });
The icon appears in the left margin and grabs my attention when I should
be looking at the body of the runnable. Whereas in
34 EventQueue.invokeLater(new Runnable() {
35 @Override public void run() {
36 updateWith(complex + calcul.ation());
37 }
38 });
the contents of line 35 appear as boilerplate, which is exactly what
they are.
-J.
--
[email protected] x22801 netbeans.org ant.apache.org
http://google.com/search?q=e%5E%28pi*i%29%2B1