1 package osm.jp.gpx.matchtime.gui;
3 import java.awt.Dimension;
4 import java.awt.event.ActionEvent;
5 import java.awt.event.ActionListener;
7 import javax.swing.JComboBox;
8 import javax.swing.JLabel;
9 import javax.swing.JPanel;
11 @SuppressWarnings("serial")
12 public class ParameterPanelSelecter extends JPanel implements ActionListener {
13 public static final int ITEM_WIDTH_1 = 160;
14 public static final int ITEM_WIDTH_2 = 240;
15 public static final int LINE_WIDTH = ITEM_WIDTH_1 + ITEM_WIDTH_2;
16 public static final int LINE_HEIGHT = 18;
18 public JComboBox<String> field;
21 @SuppressWarnings({"OverridableMethodCallInConstructor", "LeakingThisInConstructor"})
22 public ParameterPanelSelecter(String title, String[] items) {
24 this.value = items[0];
26 this.label = new JLabel(title, JLabel.RIGHT);
27 this.label.setBounds(0, 0, ITEM_WIDTH_1 - 6, LINE_HEIGHT);
30 this.field = new JComboBox<>();
31 this.field.addActionListener(this);
32 for (String item : items) {
33 this.field.addItem(item);
35 this.field.setBounds(ITEM_WIDTH_1, 0, ITEM_WIDTH_2, LINE_HEIGHT);
38 setPreferredSize(new Dimension(ITEM_WIDTH_1, LINE_HEIGHT));
42 public void actionPerformed(ActionEvent e) {
43 this.value = (String)this.field.getSelectedItem();