package nl.uva.polyql.view; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import javax.swing.JCheckBox; import javax.swing.JComponent; import nl.uva.polyql.ast.Question; import nl.uva.polyql.ast.values.BooleanValue; public class BooleanValueView extends QuestionView { private JCheckBox mCheckBox; public BooleanValueView(final Question question) { super(question); } @Override protected void init() { mCheckBox = new JCheckBox(); mCheckBox.addItemListener(new ItemListener() { @Override public void itemStateChanged(final ItemEvent e) { onNewInput(new BooleanValue(mCheckBox.isSelected())); } }); } @Override protected JComponent getValueComponent() { return mCheckBox; } @Override public void setComponentValue(final BooleanValue value) { mCheckBox.setSelected(value.getValue()); } @Override protected void onEditableChanged(final boolean enabled) { mCheckBox.setEnabled(enabled); } }