diff options
| author | Benjamin Culkin <scorpress@gmail.com> | 2024-05-19 17:56:33 -0400 |
|---|---|---|
| committer | Benjamin Culkin <scorpress@gmail.com> | 2024-05-19 17:56:33 -0400 |
| commit | aedc34d55462a75e329bbf342251ff6504cd117e (patch) | |
| tree | bcc8f1f2352582717b484df302aeea6696b8f000 /projects/net.wotonomy.test/src/main/java/net/wotonomy/test/TestPanel.java | |
Initial import from SVN
Diffstat (limited to 'projects/net.wotonomy.test/src/main/java/net/wotonomy/test/TestPanel.java')
| -rw-r--r-- | projects/net.wotonomy.test/src/main/java/net/wotonomy/test/TestPanel.java | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/projects/net.wotonomy.test/src/main/java/net/wotonomy/test/TestPanel.java b/projects/net.wotonomy.test/src/main/java/net/wotonomy/test/TestPanel.java new file mode 100644 index 0000000..7e868d0 --- /dev/null +++ b/projects/net.wotonomy.test/src/main/java/net/wotonomy/test/TestPanel.java @@ -0,0 +1,110 @@ +package net.wotonomy.test; + +import java.awt.BorderLayout; +import java.awt.Component; +import java.awt.Insets; +import java.util.Vector; + +import javax.swing.JCheckBox; +import javax.swing.JComboBox; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JSlider; +import javax.swing.JTable; +import javax.swing.JTextField; +import javax.swing.border.EmptyBorder; +import javax.swing.text.JTextComponent; + +import net.wotonomy.ui.swing.components.BetterFlowLayout; +import net.wotonomy.ui.swing.components.ButtonPanel; +import net.wotonomy.ui.swing.components.InfoPanel; + +/** +* A master-detail panel with a list, some +* textfields and some buttons. +*/ +public class TestPanel extends JPanel +{ +// public JList list; + public JTable table; + public InfoPanel infoPanel; + public ButtonPanel savePanel; + public ButtonPanel buttonPanel; + public JTextComponent firstNameField; + public JTextComponent middleNameField, lastNameField; + public JComboBox dateBox, monthBox, yearBox; + public JSlider slider; + public JCheckBox checkbox; + + public TestPanel() + { + this.setLayout( new BorderLayout( 10, 10 ) ); + this.setBorder( new EmptyBorder( 10, 10, 10, 10 ) ); + + JPanel overviewPanel = new JPanel(); + overviewPanel.setLayout( new BorderLayout() ); + + //list = new JList(); + //JScrollPane scrollPane = new JScrollPane( list ); + + table = new JTable(); + JScrollPane scrollPane = new JScrollPane( table ); + + overviewPanel.add( scrollPane, BorderLayout.CENTER ); + + this.add( overviewPanel, BorderLayout.CENTER ); + + infoPanel = new InfoPanel(); + infoPanel.setColumns( 1 ); + + // 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 ); + checkbox = new JCheckBox(); + + infoPanel.addRow( "Name", new Component[] { + firstNameField, middleNameField, lastNameField, checkbox } ); + + // date comboboxen + Vector datesList = new Vector(); + for ( int i = 1; i < 32; i++ ) datesList.add( new Integer( i ) ); + dateBox = new JComboBox( datesList ); + dateBox.setEditable( true ); + monthBox = new JComboBox(); + yearBox = new JComboBox(); + infoPanel.addRow( "Create Date", + dateBox, monthBox, yearBox ); + + // year slider + infoPanel.addRow( "Day of Month", slider = new JSlider( + JSlider.HORIZONTAL, 1, 31, 1 ) ); + + // navigation buttons + + JPanel navigationPanel = new JPanel(); + navigationPanel.setLayout( new BorderLayout() ); + + buttonPanel = new ButtonPanel( new String[] { "Tree View", "Add", "Remove" } ); + buttonPanel.setAlignment( BetterFlowLayout.LEFT ); + buttonPanel.setInsets( new Insets( 0, 0, 0, 0 ) ); + navigationPanel.add( buttonPanel, BorderLayout.WEST ); + + savePanel = new ButtonPanel( new String[] { "Refresh All", "Commit" } ); + savePanel.setAlignment( BetterFlowLayout.RIGHT ); + navigationPanel.add( savePanel, BorderLayout.EAST ); + + // bottom panel layout + + JPanel bottomPanel = new JPanel(); + bottomPanel.setLayout( new BorderLayout() ); + bottomPanel.add( infoPanel, BorderLayout.NORTH ); + bottomPanel.add( navigationPanel, BorderLayout.SOUTH ); + + this.add( bottomPanel, BorderLayout.SOUTH ); + } + +} |
