1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
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 );
}
}
|