src/share/classes/javax/swing/JSlider.java
Print this page
@@ -136,12 +136,15 @@
/**
* {@code Dictionary} of what labels to draw at which values
*/
- private Dictionary<Integer, ? extends JComponent> 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
* slider's model. This listener is initialized to the
* {@code ChangeListener} returned from {@code createChangeListener},
@@ -771,14 +774,14 @@
if (!isShowing()) {
return false;
}
// Check that there is a label with such image
- Enumeration<? extends JComponent> 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;
if (SwingUtilities.doesIconReferenceImage(label.getIcon(), img) ||
@@ -795,11 +798,12 @@
* Returns the dictionary of what labels to draw at which values.
*
* @return the <code>Dictionary</code> containing labels and
* where to draw them
*/
- public Dictionary<Integer, ? extends JComponent> getLabelTable() {
+ @SuppressWarnings("rawtypes")
+ public Dictionary getLabelTable() {
/*
if ( labelTable == null && getMajorTickSpacing() > 0 ) {
setLabelTable( createStandardLabels( getMajorTickSpacing() ) );
}
*/
@@ -828,12 +832,13 @@
* hidden: true
* bound: true
* attribute: visualUpdate true
* description: Specifies what labels will be drawn for any given value.
*/
- public void setLabelTable( Dictionary<Integer, ? extends JComponent> labels ) {
- Dictionary<Integer, ? extends JComponent> oldTable = labelTable;
+ @SuppressWarnings("rawtypes")
+ public void setLabelTable( Dictionary labels ) {
+ Dictionary oldTable = labelTable;
labelTable = labels;
updateLabelUIs();
firePropertyChange("labelTable", oldTable, labelTable );
if (labels != oldTable) {
revalidate();
@@ -850,29 +855,31 @@
*
* @see #setLabelTable
* @see JComponent#updateUI
*/
protected void updateLabelUIs() {
- Dictionary<Integer, ? extends JComponent> labelTable = getLabelTable();
+ @SuppressWarnings("rawtypes")
+ Dictionary labelTable = getLabelTable();
if (labelTable == null) {
return;
}
- Enumeration<Integer> 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<Integer, ? extends JComponent> labelTable = getLabelTable();
+ @SuppressWarnings("rawtypes")
+ Dictionary labelTable = getLabelTable();
if (labelTable != null) {
- Enumeration<? extends JComponent> labels = labelTable.elements();
+ Enumeration<?> labels = labelTable.elements();
while (labels.hasMoreElements()) {
- JComponent component = labels.nextElement();
+ JComponent component = (JComponent) labels.nextElement();
component.setSize(component.getPreferredSize());
}
}
}
@@ -980,17 +987,17 @@
}
if ( e.getPropertyName().equals( "minimum" ) ||
e.getPropertyName().equals( "maximum" ) ) {
- Enumeration<Integer> keys = getLabelTable().keys();
+ Enumeration<?> keys = getLabelTable().keys();
Hashtable<Integer, JComponent> 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 );
}
}
@@ -998,11 +1005,11 @@
createLabels();
// Add the saved labels
keys = hashtable.keys();
while ( keys.hasMoreElements() ) {
- Integer key = keys.nextElement();
+ Integer key = (Integer) keys.nextElement();
put( key, hashtable.get( key ) );
}
((JSlider)e.getSource()).setLabelTable( this );
}
@@ -1015,11 +1022,12 @@
}
}
SmartHashtable table = new SmartHashtable( increment, start );
- Dictionary<Integer, ? extends JComponent> labelTable = getLabelTable();
+ @SuppressWarnings("rawtypes")
+ Dictionary labelTable = getLabelTable();
if (labelTable != null && (labelTable instanceof PropertyChangeListener)) {
removePropertyChangeListener((PropertyChangeListener) labelTable);
}