Show SWTMouseInput.java syntax highlighted
/**
*
*/
package ucalgary.ebe.ci.gestures.input.swt;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.events.MouseListener;
import org.eclipse.swt.events.MouseMoveListener;
import org.eclipse.swt.widgets.Control;
import ucalgary.ebe.ci.ICIInputProvider;
import ucalgary.ebe.ci.gestures.input.AbstractTimedInput;
import ucalgary.ebe.ci.gestures.input.GestureInput;
/**
* @author hkolenda
*
*/
public class SWTMouseInput extends AbstractTimedInput implements GestureInput, MouseListener, MouseMoveListener, ICIInputProvider {
private int button = 3;
private Control control = null;
public SWTMouseInput(Control control) {
control.addMouseListener(this);
control.addMouseMoveListener(this);
this.control = control;
setGestureTimeout(3000);
}
/*
* (non-Javadoc)
*
* @see org.eclipse.swt.events.MouseListener#mouseDoubleClick(org.eclipse.swt.events.MouseEvent)
*/
public void mouseDoubleClick(MouseEvent e) {
}
/*
* (non-Javadoc)
*
* @see org.eclipse.swt.events.MouseListener#mouseDown(org.eclipse.swt.events.MouseEvent)
*/
public void mouseDown(MouseEvent e) {
if (e.button == button) {
this.fireStartGesture();
}
}
/*
* (non-Javadoc)
*
* @see org.eclipse.swt.events.MouseMoveListener#mouseMove(org.eclipse.swt.events.MouseEvent)
*/
public void mouseMove(MouseEvent e) {
fireCoordInput(e.x, e.y);
}
/*
* (non-Javadoc)
*
* @see org.eclipse.swt.events.MouseListener#mouseUp(org.eclipse.swt.events.MouseEvent)
*/
public void mouseUp(MouseEvent e) {
if (e.button == button) {
this.fireStopGesture();
}
}
/**
* @param button
* the button to set
*/
public void setButton(int button) {
this.button = button;
}
/*
* (non-Javadoc)
*
* @see ucalgary.ebe.ci.ICIInputProvider#stop()
*/
public void stop() {
if (control != null) {
control.removeMouseListener(this);
control.removeMouseMoveListener(this);
}
}
}
See more files for this project here