1
2
3
4
5
6
7
8
9
10
11 package edu.uci.ics.jung.visualization.picking;
12
13 import java.awt.event.ItemEvent;
14 import java.awt.event.ItemListener;
15
16 import javax.swing.event.EventListenerList;
17
18
19
20
21
22
23 public abstract class AbstractPickedState<T> implements PickedState<T> {
24
25 protected EventListenerList listenerList = new EventListenerList();
26
27 public void addItemListener(ItemListener l) {
28 listenerList.add(ItemListener.class, l);
29
30 }
31
32 public void removeItemListener(ItemListener l) {
33 listenerList.remove(ItemListener.class, l);
34 }
35
36 protected void fireItemStateChanged(ItemEvent e) {
37 Object[] listeners = listenerList.getListenerList();
38 for ( int i = listeners.length-2; i>=0; i-=2 ) {
39 if ( listeners[i]==ItemListener.class ) {
40 ((ItemListener)listeners[i+1]).itemStateChanged(e);
41 }
42 }
43 }
44 }