Code Search for Developers
 
 
  

AbstractCIGestureProvider.java from MASE: Agile Software Engineering at Krugle


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

MASE: Agile Software Engineering

The MASE project investigates methods to support the coordination and executable acceptance testing of software projects. Keywords: Agile methods, distributed teams, Extreme Programming. See http://ebe.cpsc.ucalgary.ca/ebe for more information.

Project homepage: http://sourceforge.net/projects/mase
Programming language(s): Java,XML
License: other

  AbstractCIGestureProvider.java
  Gesture.java
  MultiInputGestureProvider.java