public abstract class ContextMenue extends JPopupMenu implements MouseListener {
protected final int LEFT = -1;
protected final int RIGHT = 0;
protected final int MIDDLE = 1;
private String title = null;
/**
* @param title
*/
public ContextMenue(String title) {
super(title);
// this.title = title;
}
public abstract void showMenu(MouseEvent e);
public void mousePressed(MouseEvent e) {
if(isConetextMenuButton(e)) {
showMenu(e);
}
}
private int getButton(MouseEvent e) {
int mode = e.getModifiers();
if((mode & e.BUTTON2_MASK) > 0)
return MIDDLE;
else if((mode & e.BUTTON3_MASK) > 0)
return RIGHT;
else
return LEFT;
}
protected boolean isConetextMenuButton(MouseEvent e) {
return (RIGHT == getButton(e));
}