package code3;
import java.util.List;
import java.util.ArrayList;
import java.util.Iterator;

public class ElementalWidget implements Event1Listener, Event2Listener {

    private String name;
    private List event1Listeners = new ArrayList();
    private List event2Listeners = new ArrayList();

    public ElementalWidget(String name) {
	this.name = name;
    }

    public void doAction1() {
	System.err.println("I do action 1: " + name);
    }

    public void doAction2() {
	System.err.println("I do action 2: " + name);
    }

    public void doEvent1() {
	Iterator listenerIterator = event1Listeners.iterator();
        while (listenerIterator.hasNext()) {
            ((WidgetEvent)listenerIterator.next()).actionPerformed(this);
        }
    }

    public void doEvent2() {
	Iterator listenerIterator = event2Listeners.iterator();
        while (listenerIterator.hasNext()) {
            ((WidgetEvent)listenerIterator.next()).actionPerformed(this);
        }
    }


    public void addEvent1Listener(Object object) {
	event1Listeners.add(object);
    }

    public void addEvent2Listener(Object object) {
	event2Listeners.add(object);
    }

}
