The task tree column titles don't resize together very
well.
I believe I know how to fix this, but I haven't tried
it. Note that most of the relevant classes and
interfaces are in the javax.swing.table package.
Swing represents every column in a JTable with a
TableColumn instance, which tracks various properties
of the column, including width. A
PropertyChangeListener can be used to be notified of
changes to these properties.
Column headers are drawn by JTableHeader. This can be
instantiated independently of any JTable. A new
TableColumn can be added to the JTableHeader with
getColumnModel().addColumn(TableColumn).
That should be suffient information to tie the width of
the header to the width of the JTree (setSize(),
perhaps?), and to remove the hack involving creating a
JTable that isn't displayed.