Show AbstractCIGestureProvider.java syntax highlighted
/**
*
*/
package ucalgary.ebe.ci.gestures.impl;
import javax.swing.event.EventListenerList;
import ucalgary.ebe.ci.gestures.ICIGestureProvider;
import ucalgary.ebe.ci.gestures.events.ICIGestureEvent;
import ucalgary.ebe.ci.gestures.events.ICIGestureListener;
/**
* @author hkolenda
*
*/
public abstract class AbstractCIGestureProvider implements ICIGestureProvider {
EventListenerList gestureListeners = new EventListenerList();
/**
* Adds an IGestureEventListener to the EventList
*
* @param listener
* The IGestureEventListener to add to the List
*/
public void addCIGestureListener(ICIGestureListener listener) {
gestureListeners.add(ICIGestureListener.class, listener);
}
/**
* Removes an IGestureListener from the EventList
*
* @param listener
* The IGestureListener to remove from the EventList
*/
public void removeCIGestureListener(ICIGestureListener listener) {
gestureListeners.remove(ICIGestureListener.class, listener);
}
protected void fireCIGestureEvent(ICIGestureEvent gestureEvent) {
Object[] listeners = gestureListeners.getListenerList();
int numListeners = listeners.length;
for (int i = 0; i < numListeners; i += 2) {
if (listeners[i] == ICIGestureListener.class) {
try {
((ICIGestureListener) listeners[i + 1]).gestureReleased(gestureEvent);
}
catch (Exception e) {
// TODO: handle exception
// Logging
}
}
}
}
}
See more files for this project here