package qlProject.gui.input_response_visitors; import javax.swing.JCheckBox; import javax.swing.JComponent; import javax.swing.JTextField; import qlProject.ast.type.BooleanType; import qlProject.ast.type.ITypeVisitor; import qlProject.ast.type.IntType; import qlProject.ast.type.StringType; import qlProject.ast.value.Value; import qlProject.gui.gui_building_visitors.QuestionWidget; public class InputUpdaterVisitor implements ITypeVisitor { public JComponent inputWidget; public Value res; public InputUpdaterVisitor(QuestionWidget questionWidget, Value res) { this.inputWidget = questionWidget.getComponent(); this.res = res; } public JComponent visit (StringType type){ ((JTextField)inputWidget).setText(res.getValue().toString()); return inputWidget; } public JComponent visit(IntType type){ ((JTextField)inputWidget).setText(res.getValue().toString()); return inputWidget; } public JComponent visit(BooleanType type){ ((JCheckBox)inputWidget).setSelected((Boolean)res.getValue()); return inputWidget; } }