package org.obo.app.swing;
import java.awt.event.MouseEvent;
import java.util.ArrayList;
import java.util.Collection;
import javax.swing.JPopupMenu;
import javax.swing.JTable;
public class TablePopupListener extends PopupListener {
private final JTable table;
private final Collection<Integer> columns = new ArrayList<Integer>();
public TablePopupListener(JPopupMenu popupMenu, JTable table) {
super(popupMenu);
this.table = table;
}
public void setPopupColumns(Collection<Integer> columns) {
this.columns.clear();
this.columns.addAll(columns);
}
@Override
protected void maybeShowPopup(MouseEvent e) {
final int column = this.table.getTableHeader().columnAtPoint(e.getPoint());
if (this.columns.contains(new Integer(column))) {
super.maybeShowPopup(e);;
}
}
}