package ringdb.ui;
import java.awt.FlowLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.sql.SQLException;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import ringdb.database.Tower;
public class PealScreen extends JPanel {
/** Version ID */
private static final long serialVersionUID = 8498217752258805827L;
private Tower m_Tower;
public PealScreen() {
m_Tower = new Tower();
createContents();
}
public PealScreen(final Tower pr_Tower) {
m_Tower = pr_Tower;
createContents();
}
private void createContents() {
setLayout(new FlowLayout(FlowLayout.LEFT, 10, 10));
JPanel panel = new JPanel();
panel.setLayout(new GridBagLayout());
GridBagConstraints labels = new GridBagConstraints();
labels.gridx = 0;
labels.anchor = GridBagConstraints.LINE_END;
labels.fill = GridBagConstraints.NONE;
labels.ipadx = 10;
labels.ipady = 10;
GridBagConstraints fields = new GridBagConstraints();
fields.gridx = 1;
fields.anchor = GridBagConstraints.LINE_START;
fields.fill = GridBagConstraints.NONE;
labels.gridy = 0;
panel.add(new JLabel("Town"), labels);
fields.gridy = 0;
final JTextField townTextField = new JTextField();
townTextField.setColumns(30);
townTextField.setText(m_Tower.getTown());
townTextField.addKeyListener(new KeyListener() {
@Override
public void keyTyped(final KeyEvent pr_Event) { }
@Override
public void keyReleased(final KeyEvent pr_Event) { }
@Override
public void keyPressed(final KeyEvent pr_Event) {
m_Tower.setTown(townTextField.getText());
}
});
panel.add(townTextField, fields);
labels.gridy = 1;
panel.add(new JLabel("Area"), labels);
fields.gridy = 1;
JTextField areaTextField = new JTextField();
areaTextField.setColumns(30);
panel.add(areaTextField, fields);
labels.gridy = 2;
panel.add(new JLabel("County"), labels);
fields.gridy = 2;
JTextField countyTextField = new JTextField();
countyTextField.setColumns(30);
panel.add(countyTextField, fields);
labels.gridy = 3;
panel.add(new JLabel("Dedication"), labels);
fields.gridy = 3;
JTextField dedicationTextField = new JTextField();
dedicationTextField.setColumns(30);
panel.add(dedicationTextField, fields);
labels.gridy = 4;
panel.add(new JLabel("Number of Bells"), labels);
fields.gridy = 4;
JTextField numberOfBellsTextField = new JTextField();
numberOfBellsTextField.setColumns(3);
panel.add(numberOfBellsTextField, fields);
labels.gridy = 5;
panel.add(new JLabel("Tenor Weight"), labels);
fields.gridy = 5;
JTextField tenorWeightTextField = new JTextField();
tenorWeightTextField.setColumns(10);
panel.add(tenorWeightTextField, fields);
JPanel buttonPanel = new JPanel();
buttonPanel.add(new JButton("Cancel"));
JButton okButton = new JButton("OK");
okButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent pr_Event) {
try {
m_Tower.commit();
} catch (SQLException e) {
e.printStackTrace();
}
}
});
buttonPanel.add(okButton);
fields.gridx = 1;
fields.gridy = 6;
fields.gridwidth = 2;
fields.anchor = GridBagConstraints.LINE_END;
panel.add(buttonPanel, fields);
add(panel);
}
}