Statistics
| Revision:

root / trunk / libraries / libFMap / src / com / iver / cit / gvsig / fmap / rendering / DefaultUniqueValueLegend.java @ 298

History | View | Annotate | Download (2.95 KB)

1
package com.iver.cit.gvsig.fmap.rendering;
2

    
3
import com.iver.cit.gvsig.fmap.rendering.styling.FStyle2D;
4

    
5
import java.util.HashMap;
6

    
7
import org.geotools.renderer.style.Style2D;
8

    
9

    
10
/**
11
 * DOCUMENT ME!
12
 *
13
 * @author Vicente Caballero Navarro
14
 */
15
public class DefaultUniqueValueLegend implements UniqueValueLegend {
16
    private HashMap symbols = new HashMap();
17
    private HashMap values = new HashMap();
18
    private int index = 0;
19
    private int field;
20
    private int labelfield;
21
    private FStyle2D defaultSymbol;
22

    
23
    /**
24
     * @see com.iver.cit.gvsig.fmap.rendering.UniqueValueLegend#setValueSymbol(java.lang.Object,
25
     *      org.geotools.renderer.style.Style2D)
26
     */
27
    public void setValueSymbol(Object value, FStyle2D symbol) {
28
        symbols.put(value, symbol);
29
        values.put(new Integer(index), value);
30
        index++;
31
    }
32

    
33
    /**
34
     * @see com.iver.cit.gvsig.fmap.rendering.UniqueValueLegend#getValues()
35
     */
36
    public Object[] getValues() {
37
        return symbols.keySet().toArray(new Object[0]);
38
    }
39

    
40
    /**
41
     * @see com.iver.cit.gvsig.fmap.rendering.UniqueValueLegend#changeValue(int,
42
     *      java.lang.Object)
43
     */
44
    public void changeValue(int oldValue, Object newValue) {
45
        Object value = values.remove(new Integer(oldValue));
46
        Object symbol = symbols.remove(value);
47
        values.put(new Integer(oldValue), newValue);
48
        symbols.put(newValue, symbol);
49
    }
50

    
51
    /**
52
     * @see com.iver.cit.gvsig.fmap.rendering.ClassifiedLegend#clear()
53
     */
54
    public void clear() {
55
        index = 0;
56
        values.clear();
57
        symbols.clear();
58
    }
59

    
60
    /**
61
     * @see com.iver.cit.gvsig.fmap.rendering.ClassifiedLegend#getDescriptions()
62
     */
63
    public String[] getDescriptions() {
64
        return null;
65
    }
66

    
67
    /**
68
     * @see com.iver.cit.gvsig.fmap.rendering.ClassifiedLegend#getSymbols()
69
     */
70
    public Style2D[] getSymbols() {
71
        return (Style2D[]) symbols.values().toArray(new Style2D[0]);
72
    }
73

    
74
    /**
75
     * @see com.iver.cit.gvsig.fmap.rendering.ClassifiedLegend#getField()
76
     */
77
    public int getField() {
78
        return field;
79
    }
80

    
81
    /**
82
     * @see com.iver.cit.gvsig.fmap.rendering.Legend#getSymbol(java.lang.Object)
83
     */
84
    public FStyle2D getSymbol(Object value) {
85
        return (FStyle2D) symbols.get(value);
86
    }
87

    
88
    /**
89
     * @see com.iver.cit.gvsig.fmap.rendering.Legend#setDefaultSymbol(com.iver.cit.gvsig.fmap.rendering.styling.FStyle2D)
90
     */
91
    public void setDefaultSymbol(FStyle2D s) {
92
        defaultSymbol = s;
93
    }
94

    
95
    /**
96
     * @see com.iver.cit.gvsig.fmap.rendering.Legend#getLabelField()
97
     */
98
    public int getLabelField() {
99
        return labelfield;
100
    }
101

    
102
    /**
103
     * @see com.iver.cit.gvsig.fmap.rendering.Legend#setLabelField(int)
104
     */
105
    public void setLabelField(int fieldIndex) {
106
    labelfield=fieldIndex;
107
    }
108

    
109
    /**
110
     * @see com.iver.cit.gvsig.fmap.rendering.ClassifiedLegend#setField()
111
     */
112
    public void setField(int i) {
113
        field = i;
114
    }
115
}