[tasklist] compiler module feedback

Tor Norbye <[email protected]>
Newsgroups gmane.comp.java.netbeans.modules.tasklist.devel
Organization Sun Microsystems, Inc
Message-ID <1047338581.3861.1115.camel@proto>
Hi Tim,
I've tried the compiler module now. (Unfortunately I build mostly
via ant, so until that issue is resolved it won't help me a lot.
But once the full projects support is added, I'll probably switch
back to regular compilation.)

Anyway, Jesse Glick reads this newsgroup now and then, and I'm
pretty sure he wrote the ant integration module (or at least has
done some work on it) so he may have ideas for how this could be
done.  Perhaps we'll need a third integration module, one which
hooks into the ant module's apis for replacing its output API
calls...

Now some UI feedback.

First, I see that you let each compiler error take up multiple
lines in the output.

I presume this was done so that the user can easily see all the
output from the compiler. But I think it's a bit confusing.
At a minimum, I think the info-icon should be blank instead, so
that only the lines with a new unique error has an associated icon
(so I would expect to see a red error icon on roughly every other
line).  But for example the compiler will go and insert "^"
after a number of spaces to point at the preceeding line - this
doesn't work in this view, since it's not using a monospace font.

In the javaparser module, I simply send the full error message
(multiline) as the suggestion description, and the SuggestionManager
will collapse this into a single line (separate by semicolons if I
remember correctly.)  Thus, instead of
 * incompatible types
 * found : int required: java.util.Vector
you end up with
 * incompatible types; found : int required: java.util.Vector

I think this is cleaner - you get a single error per line, and
in the property sheet you don't get "fake" errors (look at the
property sheet now where you click on the two error lines where
part of the error is in the summary for the first and the rest
is in the summary for the second; the file position is only defined
for the first, etc.)

Also, I hope you'll consider calling the javaparser module's
handleError method, which will register additional fix suggestions
for some errors - but this requires the full error to be aggregated
into a single message, since it depends on the exact format of
javac's output.

Finally, a very minor comment. The warning icon is a bit larger than
the error so it stands out a bit. I had created a warning icon
for the javaparser module earlier (when I thought I could get warnings
from the background parse - but it turns out they're not generating
warnings at all). It's the same as the error icon, but with
warning-colors instead. I've attached it, in case you like it.

Hope this feedback was useful.

-- Tor

P.S. I notice you've added some good generic cell renderers to the 
compiler module, for example one which renders strings in a "normal"
color, not the grayed-out color used for read only fields elsewhere.
Perhaps these could be moved to the core module so that they're
available elsewhere? In the buglist module, for example, all fields
are "gray" (because they're read only) but that seems a bit unnecessary,
and makes it harder to read.

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
warning.gif (image/gif, 124 B) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.