package lipstone.joshua.parser.plugin.settings;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.JCheckBox;
import lipstone.joshua.parser.plugin.ParserPlugin;
import lipstone.joshua.parser.util.ConsCell;
import lipstone.joshua.parser.util.ConsType;
public class ParserSettingsCheckBox extends ParserSettingsItem<JCheckBox> {
public ParserSettingsCheckBox(String name, ParserPlugin plugin, String displayName) {
super(name, new JCheckBox(displayName), plugin);
}
@Override
protected void addListeners() {
guiItem.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
onEnter();
}
});
}
@Override
public ConsCell getValue() {
return new ConsCell("{" + guiItem.isSelected() + "}", ConsType.OBJECT);
}
@Override
public void setValue(ConsCell value) {
if (value.getCarType() == ConsType.OBJECT)
guiItem.setSelected(((String) value.getCar()).equals("{true}"));
}
}