src/share/classes/javax/swing/JSlider.java

Print this page

        

@@ -136,11 +136,11 @@
 
 
     /**
      * {@code Dictionary} of what labels to draw at which values
      */
-    private Dictionary labelTable;
+    private Dictionary<Integer, JComponent> labelTable;
 
 
     /**
      * The changeListener (no suffix) is the listener we add to the
      * slider's model.  This listener is initialized to the

@@ -767,14 +767,14 @@
         if (!isShowing()) {
             return false;
         }
 
         // Check that there is a label with such image
-        Enumeration elements = labelTable.elements();
+        Enumeration<JComponent> elements = labelTable.elements();
 
         while (elements.hasMoreElements()) {
-            Component component = (Component) elements.nextElement();
+            JComponent component = elements.nextElement();
 
             if (component instanceof JLabel) {
                 JLabel label = (JLabel) component;
 
                 if (SwingUtilities.doesIconReferenceImage(label.getIcon(), img) ||

@@ -791,11 +791,11 @@
      * 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 getLabelTable() {
+    public Dictionary<Integer, JComponent> getLabelTable() {
 /*
         if ( labelTable == null && getMajorTickSpacing() > 0 ) {
             setLabelTable( createStandardLabels( getMajorTickSpacing() ) );
         }
 */

@@ -824,12 +824,12 @@
      *       hidden: true
      *        bound: true
      *    attribute: visualUpdate true
      *  description: Specifies what labels will be drawn for any given value.
      */
-    public void setLabelTable( Dictionary labels ) {
-        Dictionary oldTable = labelTable;
+    public void setLabelTable( Dictionary<Integer, JComponent> labels ) {
+        Dictionary<Integer, JComponent> oldTable = labelTable;
         labelTable = labels;
         updateLabelUIs();
         firePropertyChange("labelTable", oldTable, labelTable );
         if (labels != oldTable) {
             revalidate();

@@ -846,29 +846,29 @@
      *
      * @see #setLabelTable
      * @see JComponent#updateUI
      */
     protected void updateLabelUIs() {
-        Dictionary labelTable = getLabelTable();
+        Dictionary<Integer, JComponent> labelTable = getLabelTable();
 
         if (labelTable == null) {
             return;
         }
-        Enumeration labels = labelTable.keys();
+        Enumeration<Integer> labels = labelTable.keys();
         while ( labels.hasMoreElements() ) {
-            JComponent component = (JComponent) labelTable.get(labels.nextElement());
+            JComponent component = labelTable.get(labels.nextElement());
             component.updateUI();
             component.setSize(component.getPreferredSize());
         }
     }
 
     private void updateLabelSizes() {
-        Dictionary labelTable = getLabelTable();
+        Dictionary<Integer, JComponent> labelTable = getLabelTable();
         if (labelTable != null) {
-            Enumeration labels = labelTable.elements();
+            Enumeration<JComponent> labels = labelTable.elements();
             while (labels.hasMoreElements()) {
-                JComponent component = (JComponent) labels.nextElement();
+                JComponent component = labels.nextElement();
                 component.setSize(component.getPreferredSize());
             }
         }
     }
 

@@ -892,11 +892,11 @@
      * @see #setLabelTable
      * @see #setPaintLabels
      * @throws IllegalArgumentException if {@code increment} is less than or
      *          equal to zero
      */
-    public Hashtable createStandardLabels( int increment ) {
+    public Hashtable<Integer, JComponent> createStandardLabels( int increment ) {
         return createStandardLabels( increment, getMinimum() );
     }
 
 
     /**

@@ -920,20 +920,20 @@
      * @see #setPaintLabels
      * @exception IllegalArgumentException if {@code start} is
      *          out of range, or if {@code increment} is less than or equal
      *          to zero
      */
-    public Hashtable createStandardLabels( int increment, int start ) {
+    public Hashtable<Integer, JComponent> createStandardLabels( int increment, int start ) {
         if ( start > getMaximum() || start < getMinimum() ) {
             throw new IllegalArgumentException( "Slider label start point out of range." );
         }
 
         if ( increment <= 0 ) {
             throw new IllegalArgumentException( "Label incremement must be > 0" );
         }
 
-        class SmartHashtable extends Hashtable<Object, Object> implements PropertyChangeListener {
+        class SmartHashtable extends Hashtable<Integer, JComponent> implements PropertyChangeListener {
             int increment = 0;
             int start = 0;
             boolean startAtMin = false;
 
             class LabelUIResource extends JLabel implements UIResource {

@@ -976,17 +976,17 @@
                 }
 
                 if ( e.getPropertyName().equals( "minimum" ) ||
                      e.getPropertyName().equals( "maximum" ) ) {
 
-                    Enumeration keys = getLabelTable().keys();
-                    Hashtable<Object, Object> hashtable = new Hashtable<Object, Object>();
+                    Enumeration<Integer> keys = getLabelTable().keys();
+                    Hashtable<Integer, JComponent> hashtable = new Hashtable<>();
 
                     // Save the labels that were added by the developer
                     while ( keys.hasMoreElements() ) {
-                        Object key = keys.nextElement();
-                        Object value = labelTable.get(key);
+                        Integer key = keys.nextElement();
+                        JComponent value = labelTable.get(key);
                         if ( !(value instanceof LabelUIResource) ) {
                             hashtable.put( key, value );
                         }
                     }
 

@@ -994,11 +994,11 @@
                     createLabels();
 
                     // Add the saved labels
                     keys = hashtable.keys();
                     while ( keys.hasMoreElements() ) {
-                        Object key = keys.nextElement();
+                        Integer key = keys.nextElement();
                         put( key, hashtable.get( key ) );
                     }
 
                     ((JSlider)e.getSource()).setLabelTable( this );
                 }

@@ -1011,11 +1011,11 @@
             }
         }
 
         SmartHashtable table = new SmartHashtable( increment, start );
 
-        Dictionary labelTable = getLabelTable();
+        Dictionary<Integer, JComponent> labelTable = getLabelTable();
 
         if (labelTable != null && (labelTable instanceof PropertyChangeListener)) {
             removePropertyChangeListener((PropertyChangeListener) labelTable);
         }