Hi folks, I hope this e-mail won't upset anyone too much.
Let me summarize our tree components situation first. We have Tree and TreeTable components in core, and another Tree component in extensions. The Tree from extensions is the oldest one, without Ajax support. The Tree in core (as well as TreeTable) supports Ajax, but unfortunately suffers from layout problems and layout limitations, such as fixed line height, no way to wrap tree text or no way to add horizontal scrolling. Also the Tree is a bit difficult to customize. Fortunately, the base class that encapsulates the hard work (tree logic), AbstractTree, is pretty much presentation agnostic and it's not a big problem to build another component on it which would solve those layout problems. In fact, I've already such component done. It supports variable heights, content wrapping and horizontal scrolling. But the question is, where (and maybe even if) should we put it? The solution I want to propose may sound a bit radical. So I expected people want to yell on me and/or want kick my ball. Yet I'd like to a) remove the old (kinda unsupported) tree from extensions (is anyone even use it?) b) move the current Tree and TreeTable* from core to extensions (sight, i know we moved it into core just recently) c) move the new Tree into core. * I don't think it's a good idea to have a TreeTable in core anyway. We don't have DataTable in core and I'm pretty sure much more people are using DataTable then TreeTable. So... I know it's kinda late for things like this. But i was way too busy to do this sooner. Sorry. -Matej