boolsupport.java
字号:
package piy.support;
import java.awt.event.*;
import java.awt.*;
import piy.*;
import javax.swing.*;
import java.awt.Dimension;
/**
* Support for properties of boolean type.
* @author David Vivash
* @version 1.0, 08/02/01
*/
public class BoolSupport extends ClassSupport implements ActionListener
{
private boolean value = true;
private JRadioButton yes, no;
public BoolSupport(Property property) {
super(property);
//Make sure everything is correctly typed
if ((property.getValue() == null) || (property.getType() != boolean.class)
|| (property.getValue().getClass() != Boolean.class))
property.setValue(new Boolean(false));
//Make sure the variable with this as a property type is primitive
if (property.getHolder().getClass() == Variable.class)
((Variable)property.getHolder()).setType(boolean.class);
//Get the value stored in the property
value = ((Boolean)property.getValue()).booleanValue();
setLayout(new FlowLayout());
yes = new JRadioButton("Yes");
no = new JRadioButton("No");
ButtonGroup choice = new ButtonGroup();
choice.add(yes);
choice.add(no);
add(yes);
add(no);
yes.setSelected(value);
no.setSelected(!value);
yes.addActionListener(this);
no.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
ProjectHandler.getInstance().projectChanged();
property.setValue(new Boolean(yes.isSelected()));
}
public static Class getSupportedClass() { return boolean.class; }
public Dimension getMinimumSize() { return new Dimension(10, 24); }
public Dimension getPreferredSize() { return new Dimension(100, 24); }
public Dimension getMaximumSize() { return new Dimension(10000, 24); }
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -