001    package org.springframework.richclient.components;
002    
003    import javax.swing.*;
004    import java.util.Map;
005    import java.util.HashMap;
006    import java.util.Hashtable;
007    
008    /** Factory that creates a hashmap for use with a JSlider and its labelMap. */
009    public class SliderLabelFactory
010    {
011    
012        private Map<Integer, String> labels;
013    
014        /** Creates a new SliderLabelFactory */
015        public SliderLabelFactory()
016        {
017            labels = new HashMap<Integer, String>();
018        }
019    
020        /** Sets the string labels for specific values. */
021        public void setLabels(Map<Integer, String> labels)
022        {
023            this.labels = labels;
024        }
025    
026        /** Gets a map with integer values with the corresponding JLabel for that value */
027        public Hashtable<Integer, JLabel> getSliderLabels()
028        {
029            Hashtable<Integer, JLabel> dict = new Hashtable<Integer, JLabel>();
030            for (Map.Entry<Integer, String> entry : labels.entrySet())
031            {
032                dict.put(entry.getKey(), new JLabel(entry.getValue()));
033            }
034            return dict;
035        }
036    
037    }