Statistics
| Revision:

gvsig-tools / org.gvsig.tools / library / trunk / org.gvsig.tools / org.gvsig.tools.swing / org.gvsig.tools.swing.impl / src / main / java / org / gvsig / tools / swing / impl / DefaultChangeListenerHelper.java @ 1746

History | View | Annotate | Download (1.37 KB)

1
package org.gvsig.tools.swing.impl;
2

    
3
import org.gvsig.tools.swing.api.ChangeListenerHelper;
4
import java.util.HashSet;
5
import java.util.Iterator;
6
import java.util.Set;
7
import javax.swing.event.ChangeEvent;
8
import javax.swing.event.ChangeListener;
9

    
10
public class DefaultChangeListenerHelper implements ChangeListenerHelper {
11

    
12
    protected Set listeners = new HashSet();
13

    
14
    public DefaultChangeListenerHelper() {
15
        
16
    }
17
    
18
    @Override
19
    public void addChangeListener(ChangeListener listener) {
20
        listeners.add(listener);
21
    }
22

    
23
    @Override
24
    public ChangeListener[] getChangeListeners() {
25
        return (ChangeListener[]) this.listeners.toArray(new ChangeListener[this.listeners.size()]);
26
    }
27

    
28
    @Override
29
    public boolean hasChangeListeners() {
30
        return !this.listeners.isEmpty();
31
    }
32
    
33
    @Override
34
    public void removeChangeListener(ChangeListener listener) {
35
        listeners.remove(listener);
36
    }
37

    
38
    @Override
39
    public void removeAllChangeListener() {
40
        this.listeners.clear();
41
    }
42

    
43
    @Override
44
    public void fireEvent() {
45
        this.fireEvent(null);
46
    }
47
    
48
    @Override
49
    public void fireEvent(ChangeEvent event) {
50
        Iterator it = this.listeners.iterator();
51
        while (it.hasNext()) {
52
            ChangeListener listener = (ChangeListener) it.next();
53
            listener.stateChanged(event);
54
        }
55
    }
56

    
57
}