1 package hayashi.yuu.tools.properties;
\r
3 import java.awt.Dimension;
\r
4 import java.awt.event.ActionEvent;
\r
5 import javax.swing.JCheckBox;
\r
6 import javax.swing.JLabel;
\r
9 @SuppressWarnings("serial")
\r
10 public class PropertyCheckItem extends hayashi.yuu.tools.properties.PropertyItem {
\r
12 public PropertyCheckItem(hayashi.yuu.tools.properties.Properties prop, String name, String title, boolean value, boolean editable) {
\r
13 super(prop, name, title);
\r
14 field = new JCheckBox(title, Boolean.parseBoolean(prop.getProperty(name, "false")));
\r
15 ((JCheckBox)field).addActionListener(this);
\r
16 createItem(name, title, prop.getProperty(name), editable);
\r
20 void setupField(String name, String value, boolean editable) {
\r
22 ((JCheckBox)field).setSelected(Boolean.valueOf(value));
\r
24 field.setEnabled(editable);
\r
29 public boolean isSelected() {
\r
30 return ((JCheckBox)field).isSelected();
\r
34 JLabel setupLabel(String name, String value) {
\r
35 label = new JLabel(name, JLabel.RIGHT);
\r
41 void createItem(String name, String title, String value, boolean editable) {
\r
42 setupLabel(title, value);
\r
43 setupField(title, value, editable);
\r
45 //label.setBounds(0, 0, ITEM_WIDTH_1 - 6, LINE_HEIGHT);
\r
46 field.setBounds(ITEM_WIDTH_1, 0, ITEM_WIDTH_2, LINE_HEIGHT);
\r
47 setPreferredSize(new Dimension(ITEM_WIDTH_1, LINE_HEIGHT));
\r
51 public void actionPerformed(ActionEvent e) {
\r
52 this.value = Boolean.toString(((JCheckBox)field).isSelected());
\r
53 logger.info("[反映] "+ propertyName +" = "+ this.value);
\r
54 this.prop.setProperty(propertyName, this.value);
\r