package com.vaadin.tests.components.combobox;
import com.vaadin.tests.components.TestBase;
import com.vaadin.ui.CheckBox;
import com.vaadin.ui.ComboBox;
public class WidthToggleReadOnly extends TestBase {
@Override
protected void setup() {
ComboBox combo = createNewComboBoxA("Untouched combobox");
addComponent(combo);
combo = createNewComboBoxA("Toggled combobox");
addComponent(combo);
addComponent(createReadOnlyForComboBox(combo));
}
private ComboBox<String> createNewComboBoxA(String caption) {
ComboBox<String> combo = new ComboBox<>(caption);
combo.setItems("first");
combo.setValue("first");
addComponent(combo);
return combo;
}
private CheckBox createReadOnlyForComboBox(ComboBox combo) {
CheckBox readonly = new CheckBox("Second combobox is read only");
readonly.setValue(combo.isReadOnly());
readonly.addValueChangeListener(
event -> combo.setReadOnly(event.getValue()));
addComponent(readonly);
return readonly;
}
@Override
protected String getDescription() {
return "Check that toggling read only mode of second combobox does not change it's width.";
}
@Override
protected Integer getTicketNumber() {
return 5833;
}
}