package ql.gui.widget;
import ql.gui.Label;
import ql.gui.QuestionnaireFrame;
import ql.gui.input_field.IInput;
/**
* @author orosu
*/
public class LabelInputPair implements IWidget
{
private final String _id;
private final Label _label;
private final IInput _input;
private final QuestionnaireFrame _questionnaireFrame; // used by frame.pack() after setVisible
public LabelInputPair(QuestionnaireFrame questionnaireFrame,
String id, Label label, IInput input)
{
this._id = id;
this._label = label;
this._input = input;
this._questionnaireFrame = questionnaireFrame;
}
public String getId()
{
return this._id;
}
public Label getLabel()
{
return this._label;
}
public IInput getInput()
{
return this._input;
}
public void setVisible(boolean visible)
{
this._label.setVisible(visible);
this._input.setVisible(visible);
this._questionnaireFrame.pack();
}
@Override
public void setBooleanValue(boolean value)
{
this.setVisible(value);
this._input.setBooleanValue(value);
}
@Override
public void setStringValue(String value)
{
this.setVisible(true);
this._input.setStringValue(value);
}
@Override
public void setNullValue()
{
this.setVisible(false);
this._input.setNullValue();
}
@Override
public void hide()
{
this.setVisible(false);
}
}