package com.vividsolutions.jump.workbench.ui;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.Iterator;
/**
* Keeps registry of action listeners, triggers each of them on demand
* with a given ActionEvent.
*/
public class ActionEventFirer {
private ArrayList actionListeners = new ArrayList();
public void add(ActionListener listener) {
actionListeners.add(listener);
}
public void remove(ActionListener listener) {
actionListeners.remove(listener);
}
public void fire(Object source, int id, String command) {
for (Iterator i = actionListeners.iterator(); i.hasNext();) {
ActionListener listener = (ActionListener) i.next();
listener.actionPerformed(new ActionEvent(source, id, command));
}
}
}