package pikater.gui.java; import java.awt.BorderLayout; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.table.AbstractTableModel; import pikater.ontology.messages.Attribute; import pikater.ontology.messages.DataInstances; public class ResultDetailsFrame extends JFrame { private static final long serialVersionUID = 1L; private JPanel jContentPane = null; private JScrollPane jScrollPane = null; private JTable jTable = null; private DataInstances instances = null; /** * This is the default constructor */ public ResultDetailsFrame() { super(); initialize(); } public ResultDetailsFrame(DataInstances instances) { super(); this.instances = instances; initialize(); } private class DataInstancesTableModel extends AbstractTableModel { /** * */ private static final long serialVersionUID = 8207067033399270730L; @Override public int getColumnCount() { return instances.getAttributes().size(); } @Override public int getRowCount() { return instances.getInstances().size(); } @Override public Object getValueAt(int rowIndex, int columnIndex) { return instances.toString(rowIndex, columnIndex); } @Override public String getColumnName(int column) { return ((Attribute) instances.getAttributes().get(column)) .getName(); } } /** * This method initializes this * * @return void */ private void initialize() { this.setSize(300, 200); this.setContentPane(getJContentPane()); this.setTitle("Result details"); } /** * This method initializes jContentPane * * @return javax.swing.JPanel */ private JPanel getJContentPane() { if (jContentPane == null) { jContentPane = new JPanel(); jContentPane.setLayout(new BorderLayout()); jContentPane.add(getJScrollPane(), BorderLayout.CENTER); } return jContentPane; } /** * This method initializes jScrollPane * * @return javax.swing.JScrollPane */ private JScrollPane getJScrollPane() { if (jScrollPane == null) { jScrollPane = new JScrollPane(); jScrollPane.setViewportView(getJTable()); } return jScrollPane; } /** * This method initializes jTable * * @return javax.swing.JTable */ private JTable getJTable() { if (jTable == null) { jTable = new JTable(); } jTable.setModel(new DataInstancesTableModel()); return jTable; } }