blob: 403b1e6bdd37d2ea6a02962181e63ec6aa1a6340 [file] [log] [blame]
/*
* Created on Feb 16, 2004
*
*/
package groovy.swt.impl;
import groovy.lang.Closure;
import groovy.swt.ClosureSupport;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Listener;
/**
* @author <a href="mailto:ckl@dacelo.nl">Christiaan ten Klooster </a>
* @version $Revision$
*/
public class ListenerImpl implements Listener, ClosureSupport {
private Closure closure;
public Event event;
public Closure getClosure() {
return closure;
}
public void setClosure(Closure closure) {
this.closure = closure;
}
public void handleEvent(Event event) {
if (closure == null){
throw new NullPointerException(
"No closure has been configured for this Listener");
}
this.event = event;
closure.setDelegate(this);
closure.call(this);
}
public Event getEvent() {
return event;
}
}