--- old/src/share/classes/javax/swing/JSlider.java 2014-08-17 15:30:41.000000000 -0700 +++ new/src/share/classes/javax/swing/JSlider.java 2014-08-17 15:30:41.000000000 -0700 @@ -138,8 +138,11 @@ /** * {@code Dictionary} of what labels to draw at which values */ - private Dictionary labelTable; - + @SuppressWarnings("rawtypes") + private Dictionary labelTable; + // For better source compatibility, the labelTable field and + // associated getter and setter methods are being left as raw + // types. /** * The changeListener (no suffix) is the listener we add to the @@ -773,10 +776,10 @@ } // Check that there is a label with such image - Enumeration elements = labelTable.elements(); + Enumeration elements = labelTable.elements(); while (elements.hasMoreElements()) { - JComponent component = elements.nextElement(); + Component component = (Component) elements.nextElement(); if (component instanceof JLabel) { JLabel label = (JLabel) component; @@ -797,7 +800,8 @@ * @return the Dictionary containing labels and * where to draw them */ - public Dictionary getLabelTable() { + @SuppressWarnings("rawtypes") + public Dictionary getLabelTable() { /* if ( labelTable == null && getMajorTickSpacing() > 0 ) { setLabelTable( createStandardLabels( getMajorTickSpacing() ) ); @@ -830,8 +834,9 @@ * attribute: visualUpdate true * description: Specifies what labels will be drawn for any given value. */ - public void setLabelTable( Dictionary labels ) { - Dictionary oldTable = labelTable; + @SuppressWarnings("rawtypes") + public void setLabelTable( Dictionary labels ) { + Dictionary oldTable = labelTable; labelTable = labels; updateLabelUIs(); firePropertyChange("labelTable", oldTable, labelTable ); @@ -852,25 +857,27 @@ * @see JComponent#updateUI */ protected void updateLabelUIs() { - Dictionary labelTable = getLabelTable(); + @SuppressWarnings("rawtypes") + Dictionary labelTable = getLabelTable(); if (labelTable == null) { return; } - Enumeration labels = labelTable.keys(); + Enumeration labels = labelTable.keys(); while ( labels.hasMoreElements() ) { - JComponent component = labelTable.get(labels.nextElement()); + JComponent component = (JComponent) labelTable.get(labels.nextElement()); component.updateUI(); component.setSize(component.getPreferredSize()); } } private void updateLabelSizes() { - Dictionary labelTable = getLabelTable(); + @SuppressWarnings("rawtypes") + Dictionary labelTable = getLabelTable(); if (labelTable != null) { - Enumeration labels = labelTable.elements(); + Enumeration labels = labelTable.elements(); while (labels.hasMoreElements()) { - JComponent component = labels.nextElement(); + JComponent component = (JComponent) labels.nextElement(); component.setSize(component.getPreferredSize()); } } @@ -982,13 +989,13 @@ if ( e.getPropertyName().equals( "minimum" ) || e.getPropertyName().equals( "maximum" ) ) { - Enumeration keys = getLabelTable().keys(); + Enumeration keys = getLabelTable().keys(); Hashtable hashtable = new Hashtable<>(); // Save the labels that were added by the developer while ( keys.hasMoreElements() ) { - Integer key = keys.nextElement(); - JComponent value = labelTable.get(key); + Integer key = (Integer) keys.nextElement(); + JComponent value = (JComponent) labelTable.get(key); if ( !(value instanceof LabelUIResource) ) { hashtable.put( key, value ); } @@ -1000,7 +1007,7 @@ // Add the saved labels keys = hashtable.keys(); while ( keys.hasMoreElements() ) { - Integer key = keys.nextElement(); + Integer key = (Integer) keys.nextElement(); put( key, hashtable.get( key ) ); } @@ -1017,7 +1024,8 @@ SmartHashtable table = new SmartHashtable( increment, start ); - Dictionary labelTable = getLabelTable(); + @SuppressWarnings("rawtypes") + Dictionary labelTable = getLabelTable(); if (labelTable != null && (labelTable instanceof PropertyChangeListener)) { removePropertyChangeListener((PropertyChangeListener) labelTable);