RFR: 4466930: JTable.selectAll boundary handling [v4]

Tejesh R tr at openjdk.org
Wed Mar 19 06:08:14 UTC 2025


On Tue, 18 Mar 2025 06:56:57 GMT, Prasanta Sadhukhan <psadhukhan at openjdk.org> wrote:

>> JTable.selectAll doesn't do anything if there are no rows or no columns. 
>> But it should still select all columns if there are no rows and the other way round. 
>> It is seen that isColumnSelected() will return false for all columns after calling selectAll() if there happened to be no rows.
>> 
>> Fix is made to select all columns even if there are no rows and similarly for rows if there are no columns.
>
> Prasanta Sadhukhan has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Formatting

src/java.desktop/share/classes/javax/swing/JTable.java line 2162:

> 2160:     }
> 2161: 
> 2162:     private void selectColumns(TableColumnModel  columnModel, int columnCount) {

Should we check whether column selection is allowed before selecting columns? Because by default only row selection is enabled.

src/java.desktop/share/classes/javax/swing/JTable.java line 2188:

> 2186:         }
> 2187:         if (rowCount > 0 && columnCount > 0) {
> 2188:             selectRows(selectionModel, rowCount);

Any reason for passing selectionModel(s) as parameters ? Anyhow they are class variables and can be used directly right ?

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/24025#discussion_r2002483403
PR Review Comment: https://git.openjdk.org/jdk/pull/24025#discussion_r2002482305


More information about the client-libs-dev mailing list