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 @ 2339
History | View | Annotate | Download (1.37 KB)
1 | 1746 | jjdelcerro | 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 | } |