TreeView/ListView hybrid

I’m trying to crete a treeview/listview hybrid control. I’ve done it by creating a treeview and my own header control above it.

I’m having a few issues:

  1. There doesn’t seem to be a way to tell the TreeView that the TreeViewItems have changed size.

  2. There doesn’t seem to be a way to tell when the TreeView’s viewport has scrolled horizontally. When it does, I need to scroll my header horizontally as well.

  3. I can’t seem to get my TreeViewItems to move all the way left. I add a root item which isn’t shown, and add subitems to it. I setLinesDrawnForSubItems(false), but there is still a small gap between my item and the left border of the tree view.