On Thu, 15 Jul 2021 20:20:41 GMT, Kevin Rushforth <[email protected]> wrote:
>> In the `TreeTableCell` class there is a mismatch between name of the
>> following property method vs the getter:
>>
>>
>> public final ReadOnlyObjectProperty<TreeTableRow<S>> tableRowProperty()
>> public final TreeTableRow<S> getTreeTableRow()
>>
>>
>> The get method has "Tree" in the name while the property method does not.
>>
>> By contrast, the corresponding methods for column are self-consistent, and
>> are named without "Tree" in the name:
>>
>>
>> public final ReadOnlyObjectProperty<TreeTableColumn<S,T>>
>> tableColumnProperty()
>> public final TreeTableColumn<S,T> getTableColumn()
>>
>>
>> The solution is to effectively change `getTreeTableRow()` to
>> `getTableRow()`. In order to preserve source and binary compatibility, the
>> method is copied rather than renamed. The existing `getTreeTableRow()`
>> method is deprecated (not for removal).
>>
>> Additionally, the docs for each property is on a private property field that
>> *does* have tree in the name, which results in no docs being generated for
>> either the `tableRow` or `tableColumn` property.
>>
>> Finally, there is a problem with the implementation of the
>> `tableRowProperty()` method in that it returns the writable property by
>> mistake rather than the read-only property that is specified by the method's
>> return type.
>>
>> In summary, the following changes are made to `TreeTableCell`:
>>
>> 1. Deprecate the `getTreeTableRow` method.
>> 2. Add a `getTableRow` method.
>> 3. Rename the (private) property object fields from `treeTableRow` and
>> `treeTableColumn` to `tableRow` and `tableColumn`, including the name of the
>> bean, so that they match the public property method names. This will allow
>> API docs to be generated.
>> 4. Change the implementation of the tableRowProperty() method to return a
>> read-only property.
>>
>> In addition to changing the existing implementation and tests to call the
>> new `getTableRow` method instead of the now-deprecated `getTreeTableRow`
>> method, I added unit tests to validate changes 3 and 4.
>>
>> NOTE: this is targeted to `jfx17`.
>
> Kevin Rushforth has updated the pull request incrementally with one
> additional commit since the last revision:
>
> Fix typo in javadoc comment
As suggested, I also renamed `updateTreeTable{Row,Column}` to
`updateTable{Row,Column}` (by deprecating the existing methods and adding new
methods).
I'll update the CSR to match after those new changes have been reviewed.
-------------
PR: https://git.openjdk.java.net/jfx/pull/575