Been re-working and fixing up a clear example of software entrophy. The sad part is that this is a moderate-sized client part of a client-server application, and reached this state under the original author. So I have spent time (far too much time) looking at fairly awful code.
At the same time this has lead me to look at Swing more closely than I had need before. After poking around in the guts of javax.swing, I came away really unimpressed. Too many half-good ideas. Too much code. Not so much the tight and clean conceptual model one might hope for in “foundation” classes. Admittedly I was not in a very favorable frame of mind.
Wonder what the internals of SWT look like?