/*
@test %I% %E%
@bug 6315717
@summary verifies that MouseEvent CTOR accepts extra mouse button numbers
@author Andrei Dmitriev : area=awt.event
@run main AcceptExtraButton
*/
//package acceptextrabutton;
import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseAdapter;
public class AcceptExtraButton extends Frame {
static int [] eventID = new int []{MouseEvent.MOUSE_PRESSED, MouseEvent.MOUSE_RELEASED, MouseEvent.MOUSE_CLICKED};
public static void main(String []s){
AcceptExtraButton f = new AcceptExtraButton();
f.setSize(300, 300);
f.setVisible(true);
for (int buttonId = 0; buttonId<eventID.length; buttonId++) {
for (int button = 0; button <= MouseInfo.getNumberOfButtons(); button++){
System.out.println("button == "+button);
MouseEvent me = new MouseEvent(f,
eventID[buttonId],
System.currentTimeMillis(),
0, //MouseEvent.BUTTON1_DOWN_MASK, modifiers
100, 100, // x, y
150, 150, // x, y on screen
1, //clickCount
false, //popupTrigger
button );// MouseEvent.NOBUTTON : button
System.out.println("dispatching >>>"+me);
f.dispatchEvent( ( AWTEvent )me );
}
}
MouseAdapter ma1 = new MouseAdapter() {
public void mousePressed(MouseEvent e) {
System.out.println("PRESSED "+e);
}
public void mouseReleased(MouseEvent e) {
System.out.println("RELEASED "+e);
}
public void mouseClicked(MouseEvent e) {
System.out.println("CLICKED "+e);
}
};
f.addMouseListener(ma1);
}
}