package husacct.validate.presentation.tableModels;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import husacct.validate.presentation.browseViolations.ViolationPerRulePanel;
import javax.swing.JTable;
import javax.swing.table.TableColumn;
public class ViolationsPerRuleTable extends JTable {
private static final long serialVersionUID = -1359180781818542012L;
private final ViolationPerRulePanel violationPerRulePanel;
public ViolationsPerRuleTable(ViolationPerRulePanel vprPanel) {
violationPerRulePanel = vprPanel;
setColumnWidths();
setAutoCreateRowSorter(true);
addMouseListener(new MouseListener(){
@Override
public void mouseClicked(MouseEvent arg0) {
int row = getSelectedRow();
int id = (int) getValueAt(row, 0);
violationPerRulePanel.showViolationsSelectedRule(id);
}
@Override
public void mouseEntered(MouseEvent arg0) {}
@Override
public void mouseExited(MouseEvent arg0) {}
@Override
public void mousePressed(MouseEvent arg0) {}
@Override
public void mouseReleased(MouseEvent arg0) {}
});
}
public void setColumnWidths() {
TableColumn column = null;
for (int i = 0; i < getColumnCount(); i++) {
column = getColumnModel().getColumn(i);
if (i == 0) {
column.setPreferredWidth(25); // Id
} else if (i == 1) {
column.setPreferredWidth(310); // From
} else if (i == 2) {
column.setPreferredWidth(190); // Rule
} else if (i == 3) {
column.setPreferredWidth(310); // To
} else if (i == 4) {
column.setPreferredWidth(60); // Nr of Violations
}
}
}
}