List of usage examples for com.vaadin.v7.ui ComboBox setValue
@Override public void setValue(Object newValue) throws Property.ReadOnlyException
From source file:de.symeda.sormas.ui.caze.CaseFacilityChangeForm.java
License:Open Source License
@Override protected void addFields() { ComboBox region = addField(CaseDataDto.REGION, ComboBox.class); ComboBox district = addField(CaseDataDto.DISTRICT, ComboBox.class); ComboBox community = addField(CaseDataDto.COMMUNITY, ComboBox.class); community.setNullSelectionAllowed(true); ComboBox facility = addField(CaseDataDto.HEALTH_FACILITY, ComboBox.class); ComboBox officer = addField(CaseDataDto.SURVEILLANCE_OFFICER, ComboBox.class); TextField facilityDetails = addField(CaseDataDto.HEALTH_FACILITY_DETAILS, TextField.class); region.addValueChangeListener(e -> { RegionReferenceDto regionDto = (RegionReferenceDto) e.getProperty().getValue(); FieldHelper.updateItems(district, regionDto != null ? FacadeProvider.getDistrictFacade().getAllByRegion(regionDto.getUuid()) : null);//from ww w.java 2 s . c o m }); district.addValueChangeListener(e -> { if (community.getValue() == null) { FieldHelper.removeItems(facility); } FieldHelper.removeItems(community); DistrictReferenceDto districtDto = (DistrictReferenceDto) e.getProperty().getValue(); FieldHelper.updateItems(community, districtDto != null ? FacadeProvider.getCommunityFacade().getAllByDistrict(districtDto.getUuid()) : null); FieldHelper.updateItems(facility, districtDto != null ? FacadeProvider.getFacilityFacade().getHealthFacilitiesByDistrict(districtDto, true) : null); List<UserReferenceDto> assignableSurveillanceOfficers = FacadeProvider.getUserFacade() .getUserRefsByDistrict(districtDto, false, UserRole.SURVEILLANCE_OFFICER); FieldHelper.updateItems(officer, assignableSurveillanceOfficers); if (assignableSurveillanceOfficers.size() == 1) { officer.setValue(assignableSurveillanceOfficers.get(0)); } else { officer.setValue(null); } }); community.addValueChangeListener(e -> { FieldHelper.removeItems(facility); CommunityReferenceDto communityDto = (CommunityReferenceDto) e.getProperty().getValue(); FieldHelper.updateItems(facility, communityDto != null ? FacadeProvider.getFacilityFacade().getHealthFacilitiesByCommunity(communityDto, true) : district.getValue() != null ? FacadeProvider.getFacilityFacade() .getHealthFacilitiesByDistrict((DistrictReferenceDto) district.getValue(), true) : null); }); facility.addValueChangeListener(e -> { if (e.getProperty().getValue() != null) { boolean otherHealthFacility = ((FacilityReferenceDto) e.getProperty().getValue()).getUuid() .equals(FacilityDto.OTHER_FACILITY_UUID); boolean noneHealthFacility = ((FacilityReferenceDto) e.getProperty().getValue()).getUuid() .equals(FacilityDto.NONE_FACILITY_UUID); boolean visibleAndRequired = otherHealthFacility || noneHealthFacility; facilityDetails.setVisible(visibleAndRequired); facilityDetails.setRequired(visibleAndRequired); if (otherHealthFacility) { facilityDetails.setCaption(I18nProperties.getPrefixCaption(CaseDataDto.I18N_PREFIX, CaseDataDto.HEALTH_FACILITY_DETAILS)); } if (noneHealthFacility) { facilityDetails.setCaption( I18nProperties.getPrefixCaption(CaseDataDto.I18N_PREFIX, NONE_HEALTH_FACILITY_DETAILS)); } if (!visibleAndRequired) { facilityDetails.clear(); } } else { facilityDetails.setVisible(false); facilityDetails.setRequired(false); facilityDetails.clear(); } }); region.addItems(FacadeProvider.getRegionFacade().getAllAsReference()); FieldHelper.addSoftRequiredStyle(community, facilityDetails, officer); setRequired(true, CaseDataDto.REGION, CaseDataDto.DISTRICT, CaseDataDto.HEALTH_FACILITY); officer.setNullSelectionAllowed(true); }
From source file:de.symeda.sormas.ui.configuration.infrastructure.CommunityEditForm.java
License:Open Source License
@Override protected void addFields() { addField(CommunityDto.NAME, TextField.class); ComboBox region = new ComboBox(); region.setCaption(I18nProperties.getPrefixCaption(CommunityDto.I18N_PREFIX, REGION_LOC)); region.setWidth(100, Unit.PERCENTAGE); getContent().addComponent(region, REGION_LOC); ComboBox district = addField(CommunityDto.DISTRICT, ComboBox.class); setRequired(true, CommunityDto.NAME, CommunityDto.DISTRICT); region.setRequired(true);/* w w w. j a v a2 s .c o m*/ region.addValueChangeListener(e -> { RegionReferenceDto regionDto = (RegionReferenceDto) e.getProperty().getValue(); FieldHelper.updateItems(district, regionDto != null ? FacadeProvider.getDistrictFacade().getAllByRegion(regionDto.getUuid()) : null); }); district.addValueChangeListener(e -> { if (e.getProperty().getValue() != null && region.getValue() == null) { DistrictDto communityDistrict = FacadeProvider.getDistrictFacade() .getDistrictByUuid(((DistrictReferenceDto) e.getProperty().getValue()).getUuid()); region.setValue(communityDistrict.getRegion()); } }); region.addItems(FacadeProvider.getRegionFacade().getAllAsReference()); // TODO: Workaround until cases and other data is properly transfered when infrastructure data changes if (!create) { region.setEnabled(false); district.setEnabled(false); } }
From source file:de.symeda.sormas.ui.samples.SampleEditForm.java
License:Open Source License
public void makePathogenTestResultRequired() { ComboBox pathogenTestResultField = (ComboBox) getFieldGroup().getField(SampleDto.PATHOGEN_TEST_RESULT); pathogenTestResultField.setEnabled(true); pathogenTestResultField.setRequired(true); if (pathogenTestResultField.getValue() == null) { pathogenTestResultField.setValue(PathogenTestResultType.PENDING); }// ww w. j a v a2 s. co m }