package net.wotonomy.test; import java.awt.BorderLayout; import java.awt.FlowLayout; import javax.swing.JList; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextField; import javax.swing.border.EmptyBorder; import javax.swing.text.JTextComponent; import net.wotonomy.ui.swing.components.ButtonPanel; import net.wotonomy.ui.swing.components.InfoPanel; import net.wotonomy.ui.swing.components.RadioButtonPanel; /** * A simple editor panel with a few textfields. */ public class EditPanel extends JPanel { public JTextComponent firstNameField; public JTextField middleNameField, lastNameField; public RadioButtonPanel yearRadioPanel; public InfoPanel infoPanel; public JList list; public ButtonPanel addPanel; public EditPanel() { this.setLayout(new BorderLayout()); this.setBorder(new EmptyBorder(10, 10, 10, 10)); infoPanel = new InfoPanel(); // name fields firstNameField = new JTextField(); infoPanel.addPair("First Name", firstNameField); middleNameField = new JTextField(); infoPanel.addPair("Middle Name", middleNameField); lastNameField = new JTextField(); infoPanel.addPair("Last Name", lastNameField); yearRadioPanel = new RadioButtonPanel(); infoPanel.addPair("Year", yearRadioPanel); list = new JList(); JPanel containerPanel = new JPanel(); containerPanel.setLayout(new BorderLayout(0, 5)); JScrollPane scrollPane = new JScrollPane(list); scrollPane.setPreferredSize(new java.awt.Dimension(100, 100)); addPanel = new ButtonPanel(new String[] { "Add", "Remove" }); addPanel.setAlignment(FlowLayout.CENTER); containerPanel.add(scrollPane, BorderLayout.CENTER); containerPanel.add(addPanel, BorderLayout.SOUTH); infoPanel.addRow("Children", containerPanel); this.add(infoPanel, BorderLayout.CENTER); } }