package gjt; import java.awt.Event; /** * An extension of java.awt.Event, specifically designed for * selection events.
* * SelectionEvents are constructed with arguments:
*
*
* // handleEvent(Event) method of a container that
* // contain objects that generate SelectionEvents
*
* public boolean handleEvent(Event event) {
* if(event instanceof SelectionEvent) {
* SelectionEvent sevent =
* (SelectionEvent)event;
*
* if(sevent.isSelected()) {
* // do something for selection
* }
* else {
* // do something for deselection
* }
* }
* }
*
*
* @version 1.0, Apr 1 1996
* @author David Geary
* @see LabelCanvas
* @see ImageButtonEvent
* @see gjt.test.LabelCanvasTest
*/
public class SelectionEvent extends Event {
public static final int SELECT = 1;
public static final int DESELECT = 2;
private int eventType;
public SelectionEvent(Object target,
Event event,
int type) {
super(target, event.when, event.id, event.x, event.y,
event.key, event.modifiers, event.arg);
Assert.notFalse(type == SELECT || type == DESELECT);
eventType = type;
id = -1;
}
public boolean isSelected() {
return eventType == SELECT;
}
protected String paramString() {
String typeString = new String();
if(eventType == SelectionEvent.SELECT)
typeString = "SELECT";
else if(eventType == SelectionEvent.DESELECT)
typeString = "DESELECT";
return super.paramString() + typeString;
}
}