<Swing Dev> RFR: 8049700: Deprecate obsolete classes and methods in javax/swing/plaf/basic

Tejpal Rebari trebari at openjdk.java.net
Tue Jan 19 14:33:52 UTC 2021


On Wed, 13 Jan 2021 05:52:49 GMT, Prasanta Sadhukhan <psadhukhan at openjdk.org> wrote:

>> Please review the following fix for jdk17.
>> In this fix i have deprecated and marked for removal following classes and methods 
>>    public void intervalAdded(ListDataEvent e)
>>    public void intervalRemoved(ListDataEvent e)
>>    protected boolean lt(File a, File b) in BasicDirectoryModel.java
>> 
>>    inner class PropertyChangeHandler, VSBChangeListener, HSBChangeListener, 
>>    ViewportChangeHandler in BasicScrollPaneUI.java
>>    inner class MouseInputHandler in BasicMenuItemUI.java
>>    method BasicToolBarUI.java#createFloatingFrame
>> 
>> From 8049700 not deprecated the paintText(Graphics g, JComponent c, Rectangle textRect, String text) method in BasicButtonUI  as AquaButtonUI, MetalButtonUI and MetalToggleButtonUI overrides it.
>> Similarly not deprecated ChangeHandler of BasicMenuUI as AquaMenuUI and MotifMenuUI uses this class.
>
> Please elaborate as to why this methods are to be deprecated.
> It will be useful if you give alternate methods to be used in the javadoc in @deprecated tag 
> which are supposed to be called by user once these are removed.

The methods intervalAdded(ListDataEvent e) ,intervalRemoved(ListDataEvent e) and  lt(File a, File b) of  javax/swing/plaf/basic/BasicDirectoryModel.java  states that "Obsolete - not used" ( in the doc).

The BasicDirectoryModel uses similar methods like fireIntervalAdded, fireIntervalRemoved which calls AbstractListModel#fireIntervalAdded.
But not sure that these are the  alternate methods.Also dont see anything similar to lt(File a, File b).

The method createFloatingFrame in the BasicToolBarUI.java states that it is "No longer used" and also specifies to use BasicToolBarUI.createFloatingWindow(JToolBar).

The class MouseInputHandler in BasicMenuUI.java and classes PropertyChangeHandler, VSBChangeListener, HSBChangeListener, ViewportChangeHandler in BasicScrollPaneUI.java states that(as comments inside the class)
        "This class exists only for backward compatibility. All
        its functionality has been moved into Handler."
we can add the above in the doc for these classes.

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

PR: https://git.openjdk.java.net/jdk/pull/1958


More information about the swing-dev mailing list