[Review request] TreeTableView
jonathan.giles at oracle.com
Tue Nov 27 14:56:48 PST 2012
As discussed previously (and recently) on this list, we prefer to not
introduce interfaces whenever possible due to their brittleness and
lowest-common denominator requirements. I've introduced a fair few
abstract base classes (more than I would like, honestly), and am loath
to introduce anything else without a really strong argument.
On Wednesday, 28 November 2012 11:45:22 a.m., Hendrik Ebbers wrote:
> I just tried the tree and table API in some demos to learn JavaFX. I like both controls and think you made a great job of it. After reading your documentation and the javadocs I think that the TreeTableView is a good mixture of this two APIs. I think two interfaces "TreeBasedControl" (implemented by TreeView and TreeTableView) and "TableBasedControl" (implemented by TableView and TreeTableView) could be useful. Methodes like "setRoot(..)" then defined in the interface. But this are only my two cents.
> Am 26.11.2012 um 23:19 schrieb Jonathan Giles <jonathan.giles at oracle.com>:
>> Hi all,
>> I'm planning to relocate the TreeTableView control I've been developing in the OpenJFX 8.0 controls sandbox over into the proper OpenJFX 8.0 controls repo. Before that happens there is a gate here that we need to go through related to having an early API review. To make understanding the control easier, I've written up an overview of the TreeTableView control here:
>> This documentation covers the core concepts of the API, it includes examples of how the API is used, and finally I've put up a brief paragraph detailing the implementation (although I may add more detail in here as time passes and questions come in). My colleage Jindra Dinga, who is responsible for the UX design of the TreeTableView control, has posted his UX documentation for it at the same link above, so hopefully this too will prove useful for people to fully understand precisely what a TreeTableView is, and is not.
>> To get a slightly more in-depth understanding of the path TreeTableView has taken to where it is today, you may also be interested in the following Jira issue, and perhaps you may choose to follow it and / or offer feedback directly into the Jira issue:
>> The TreeTableView control that is in the sandbox repo is far superior to the prototype that is in the 8.0 controls repo (in the com.preview.* package). It is my intention to completely remove the old TreeTableView control and replace it with the new implementation, and even go so far as to place it in the correct packages so that I can make use of package protected API. However, it is important to note that the API _is not final_ - I'm only going through the first gate here to get the code into the correct repo and packages - there will be further discussion in the future regarding API design, missing / incorrect functionality, and straight out bugs.
>> I hope that you are all excited about getting a TreeTableView control into JavaFX 8.0, and I hope you can all help guide the control towards an API that meets your requirements and use cases. I think what we have now is good, but API design can not be done in a vacuum so I look forward to your feedback. I would recommend that discussion regarding moving TreeTableView into the official OpenJFX 8.0 controls repo take place here, and that discussion around API design and functionality be posted on the Jira issue linked above (rather than here), to try to prevent the amount of noise on this list.
>> -- Jonathan
More information about the openjfx-dev