List of usage examples for com.vaadin.v7.data.util GeneratedPropertyContainer GeneratedPropertyContainer
@Deprecated
public GeneratedPropertyContainer(Container.Indexed container)
From source file:com.haulmont.cuba.web.widgets.renderers.componentrenderer.grid.ComponentGridDecorator.java
License:Apache License
/** * Replaces the current grid container with a {@link GeneratedPropertyContainer} * while preserving the {@link Grid.DetailsGenerator}. *//*from w w w . ja v a2 s . c o m*/ private void initGpc() { gpc = new GeneratedPropertyContainer(grid.getContainerDataSource()); Grid.DetailsGenerator details = grid.getDetailsGenerator(); grid.setContainerDataSource(gpc); grid.setDetailsGenerator(details); }
From source file:de.symeda.sormas.ui.dashboard.DiseaseBurdenGrid.java
License:Open Source License
public DiseaseBurdenGrid() { setSizeFull();//from www .ja v a2s . c o m BeanItemContainer<DiseaseBurdenDto> container = new BeanItemContainer<DiseaseBurdenDto>( DiseaseBurdenDto.class); GeneratedPropertyContainer generatedContainer = new GeneratedPropertyContainer(container); setContainerDataSource(generatedContainer); setColumns(/* VIEW_DETAILS_BTN_ID, */ DiseaseBurdenDto.DISEASE, DiseaseBurdenDto.CASE_COUNT, DiseaseBurdenDto.PREVIOUS_CASE_COUNT, DiseaseBurdenDto.CASES_DIFFERENCE_PERCENTAGE, DiseaseBurdenDto.EVENT_COUNT, DiseaseBurdenDto.OUTBREAK_DISTRICT_COUNT, DiseaseBurdenDto.CASE_DEATH_COUNT, DiseaseBurdenDto.CASE_FATALITY_RATE); for (Column column : getColumns()) { if (column.getPropertyId().equals(VIEW_DETAILS_BTN_ID)) { column.setHeaderCaption(""); } else { column.setHeaderCaption(I18nProperties.getPrefixCaption(DiseaseBurdenDto.I18N_PREFIX, column.getPropertyId().toString(), column.getHeaderCaption())); } } getColumn(DiseaseBurdenDto.CASES_DIFFERENCE_PERCENTAGE).setHeaderCaption( I18nProperties.getPrefixCaption(DiseaseBurdenDto.I18N_PREFIX, DiseaseBurdenDto.CASES_DIFFERENCE)); // format columns getColumn(DiseaseBurdenDto.CASE_FATALITY_RATE).setRenderer(new PercentageRenderer()); // format casesGrowth column with chevrons getColumn(DiseaseBurdenDto.CASES_DIFFERENCE_PERCENTAGE).setConverter(new StringToFloatConverter() { @Override public String convertToPresentation(Float value, Class<? extends String> targetType, Locale locale) throws ConversionException { String stringRepresentation = super.convertToPresentation(value, targetType, locale); String chevronType = ""; String criticalLevel = ""; if (value > 0) { chevronType = VaadinIcons.CHEVRON_UP.getHtml(); criticalLevel = CssStyles.LABEL_CRITICAL; } else if (value < 0) { chevronType = VaadinIcons.CHEVRON_DOWN.getHtml(); criticalLevel = CssStyles.LABEL_POSITIVE; } else { chevronType = VaadinIcons.CHEVRON_RIGHT.getHtml(); criticalLevel = CssStyles.LABEL_IMPORTANT; } String strValue = "" + Math.abs(value); if (strValue.equals("100.0")) strValue = "100"; // or use below to remove insignificant decimals // if (strValue.endsWith(".0")) // strValue = strValue.substring(0, strValue.length() - 3); stringRepresentation = "<div style=\"width:100%\">" + "<div class=\"\" style=\"display: inline-block;margin-top: 2px;width: 70%;text-align:left;\">" + strValue + "%" + "</div>" + "<div class=\"v-label v-widget " + criticalLevel + " v-label-" + criticalLevel + " align-center v-label-align-center bold v-label-bold large v-label-large v-has-width\" " + " style=\"width: 15px;width: 30%;text-align: left;\">" + "<span class=\"v-icon\" style=\"font-family: VaadinIcons;\">" + chevronType + "</span>" + "</div>" + "</div>"; return stringRepresentation; } }).setRenderer(new HtmlRenderer()); setSelectionMode(SelectionMode.NONE); }
From source file:de.symeda.sormas.ui.dashboard.map.CasePopupGrid.java
License:Open Source License
public CasePopupGrid(Window window, FacilityReferenceDto facility, DashboardMapComponent dashboardMapComponent) { this.facility = facility; this.dashboardMapComponent = dashboardMapComponent; setWidth(960, Unit.PIXELS);/*from w w w . ja v a 2s. c om*/ setHeightUndefined(); setSelectionMode(SelectionMode.NONE); BeanItemContainer<CaseDataDto> container = new BeanItemContainer<CaseDataDto>(CaseDataDto.class); GeneratedPropertyContainer generatedContainer = new GeneratedPropertyContainer(container); setContainerDataSource(generatedContainer); generatedContainer.addGeneratedProperty(DISEASE_SHORT, new PropertyValueGenerator<String>() { @Override public String getValue(Item item, Object itemId, Object propertyId) { CaseDataDto caseDataDto = (CaseDataDto) itemId; String diseaseName = caseDataDto.getDisease().getName(); return Disease.valueOf(diseaseName).toShortString(); } @Override public Class<String> getType() { return String.class; } }); generatedContainer.addGeneratedProperty(FIRST_NAME, new PropertyValueGenerator<String>() { @Override public String getValue(Item item, Object itemId, Object propertyId) { CaseDataDto caseDataDto = (CaseDataDto) itemId; PersonDto personDto = FacadeProvider.getPersonFacade() .getPersonByUuid(caseDataDto.getPerson().getUuid()); return personDto.getFirstName(); } @Override public Class<String> getType() { return String.class; } }); generatedContainer.addGeneratedProperty(LAST_NAME, new PropertyValueGenerator<String>() { @Override public String getValue(Item item, Object itemId, Object propertyId) { CaseDataDto caseDataDto = (CaseDataDto) itemId; PersonDto personDto = FacadeProvider.getPersonFacade() .getPersonByUuid(caseDataDto.getPerson().getUuid()); return personDto.getLastName(); } @Override public Class<String> getType() { return String.class; } }); setColumns(CaseDataDto.UUID, DISEASE_SHORT, CaseDataDto.CASE_CLASSIFICATION, FIRST_NAME, LAST_NAME, CaseDataDto.REPORT_DATE, CaseDataDto.HEALTH_FACILITY_DETAILS); getColumn(CaseDataDto.UUID).setRenderer(new V7UuidRenderer()); getColumn(CaseDataDto.REPORT_DATE).setRenderer(new DateRenderer(DateHelper.getLocalDateTimeFormat())); if (facility == null || !FacilityHelper.isOtherOrNoneHealthFacility(facility.getUuid())) { getColumn(CaseDataDto.HEALTH_FACILITY_DETAILS).setHidden(true); } for (Column column : getColumns()) { column.setHeaderCaption(I18nProperties.getPrefixCaption(CaseDataDto.I18N_PREFIX, column.getPropertyId().toString(), column.getHeaderCaption())); } addItemClickListener(e -> { window.close(); ControllerProvider.getCaseController().navigateToCase(((CaseDataDto) e.getItemId()).getUuid(), true); }); reload(); }
From source file:de.symeda.sormas.ui.person.PersonGrid.java
License:Open Source License
private void buildGrid() { setSizeFull();//w ww . j a va 2 s.co m setSelectionMode(SelectionMode.SINGLE); setHeightMode(HeightMode.ROW); BeanItemContainer<PersonIndexDto> container = new BeanItemContainer<PersonIndexDto>(PersonIndexDto.class); GeneratedPropertyContainer generatedContainer = new GeneratedPropertyContainer(container); setContainerDataSource(generatedContainer); generatedContainer.addGeneratedProperty(CASE_LOC, new PropertyValueGenerator<String>() { @Override public String getValue(Item item, Object itemId, Object propertyId) { PersonIndexDto person = (PersonIndexDto) itemId; if (person.getCaseDisease() != null) { return "<a href='" + Page.getCurrent().getLocation() + "/data/" + person.getCaseUuid() + "' target='_blank'>" + person.getCaseDisease().toShortString() + " (" + DateHelper.formatLocalShortDate(person.getCaseDiseaseStartDate()) + ")</a>"; } else { return ""; } } @Override public Class<String> getType() { return String.class; } }); setColumns(PersonIndexDto.FIRST_NAME, PersonIndexDto.LAST_NAME, PersonIndexDto.NICKNAME, PersonIndexDto.APPROXIMATE_AGE, PersonIndexDto.SEX, PersonIndexDto.PRESENT_CONDITION, PersonIndexDto.DISTRICT_NAME, PersonIndexDto.COMMUNITY_NAME, PersonIndexDto.CITY, CASE_LOC); for (Column column : getColumns()) { column.setHeaderCaption(I18nProperties.getPrefixCaption(PersonIndexDto.I18N_PREFIX, column.getPropertyId().toString(), column.getHeaderCaption())); } getColumn(PersonIndexDto.FIRST_NAME).setMinimumWidth(150); getColumn(PersonIndexDto.LAST_NAME).setMinimumWidth(150); getColumn(CASE_LOC).setRenderer(new HtmlRenderer()); getColumn(CASE_LOC).setHeaderCaption(I18nProperties.getPrefixCaption(PersonIndexDto.I18N_PREFIX, associatedCase == null ? PersonIndexDto.LAST_DISEASE : PersonIndexDto.MATCHING_CASE)); }
From source file:de.symeda.sormas.ui.reports.WeeklyReportOfficersGrid.java
License:Open Source License
public WeeklyReportOfficersGrid() { setSizeFull();/* w w w .j ava 2s . co m*/ BeanItemContainer<WeeklyReportOfficerSummaryDto> container = new BeanItemContainer<WeeklyReportOfficerSummaryDto>( WeeklyReportOfficerSummaryDto.class); GeneratedPropertyContainer generatedContainer = new GeneratedPropertyContainer(container); setContainerDataSource(generatedContainer); generatedContainer.addGeneratedProperty(VIEW_DETAILS_BTN_ID, new PropertyValueGenerator<String>() { @Override public String getValue(Item item, Object itemId, Object propertyId) { if (((WeeklyReportOfficerSummaryDto) itemId).getInformants() > 0) { return VaadinIcons.EYE.getHtml(); } else { return ""; } } @Override public Class<String> getType() { return String.class; } }); setColumns(VIEW_DETAILS_BTN_ID, WeeklyReportOfficerSummaryDto.OFFICER, WeeklyReportOfficerSummaryDto.DISTRICT, WeeklyReportOfficerSummaryDto.OFFICER_REPORT_DATE, WeeklyReportOfficerSummaryDto.TOTAL_CASE_COUNT, WeeklyReportOfficerSummaryDto.INFORMANTS, WeeklyReportOfficerSummaryDto.INFORMANT_REPORTS, WeeklyReportOfficerSummaryDto.INFORMANT_REPORT_PERCENTAGE, WeeklyReportOfficerSummaryDto.INFORMANT_ZERO_REPORTS); for (Column column : getColumns()) { if (column.getPropertyId().equals(VIEW_DETAILS_BTN_ID)) { column.setHeaderCaption(""); } else { column.setHeaderCaption(I18nProperties.getPrefixCaption(WeeklyReportOfficerSummaryDto.I18N_PREFIX, column.getPropertyId().toString(), column.getHeaderCaption())); } } HeaderRow headerRow = getHeaderRow(0); headerRow.getCell(WeeklyReportOfficerSummaryDto.INFORMANTS).setStyleName(CssStyles.GRID_CELL_ODD); headerRow.getCell(WeeklyReportOfficerSummaryDto.INFORMANT_REPORTS).setStyleName(CssStyles.GRID_CELL_ODD); headerRow.getCell(WeeklyReportOfficerSummaryDto.INFORMANT_REPORT_PERCENTAGE) .setStyleName(CssStyles.GRID_CELL_ODD); headerRow.getCell(WeeklyReportOfficerSummaryDto.INFORMANT_ZERO_REPORTS) .setStyleName(CssStyles.GRID_CELL_ODD); HeaderRow preHeaderRow = prependHeaderRow(); HeaderCell preHeaderCell = preHeaderRow.join(WeeklyReportOfficerSummaryDto.INFORMANTS, WeeklyReportOfficerSummaryDto.INFORMANT_REPORTS, WeeklyReportOfficerSummaryDto.INFORMANT_REPORT_PERCENTAGE, WeeklyReportOfficerSummaryDto.INFORMANT_ZERO_REPORTS); preHeaderCell.setHtml(I18nProperties.getCaption(Captions.weeklyReportOfficerInformants)); preHeaderCell.setStyleName(CssStyles.GRID_CELL_ODD); getColumn(VIEW_DETAILS_BTN_ID).setRenderer(new HtmlRenderer()); getColumn(VIEW_DETAILS_BTN_ID).setWidth(60); getColumn(WeeklyReportOfficerSummaryDto.OFFICER_REPORT_DATE) .setRenderer(new HtmlRenderer(I18nProperties.getCaption(Captions.weeklyReportNoReport))); getColumn(WeeklyReportOfficerSummaryDto.INFORMANT_REPORT_PERCENTAGE).setRenderer(new PercentageRenderer()); setCellStyleGenerator(new WeeklyReportGridCellStyleGenerator()); setSelectionMode(SelectionMode.NONE); addItemClickListener(this); }
From source file:de.symeda.sormas.ui.reports.WeeklyReportRegionsGrid.java
License:Open Source License
public WeeklyReportRegionsGrid() { setSizeFull();/* w w w . j av a 2 s. c om*/ BeanItemContainer<WeeklyReportRegionSummaryDto> container = new BeanItemContainer<WeeklyReportRegionSummaryDto>( WeeklyReportRegionSummaryDto.class); GeneratedPropertyContainer generatedContainer = new GeneratedPropertyContainer(container); VaadinUiUtil.addIconColumn(generatedContainer, VIEW_DETAILS_BTN_ID, VaadinIcons.EYE); setContainerDataSource(generatedContainer); setColumns(VIEW_DETAILS_BTN_ID, WeeklyReportRegionSummaryDto.REGION, WeeklyReportRegionSummaryDto.OFFICERS, WeeklyReportRegionSummaryDto.OFFICER_REPORTS, WeeklyReportRegionSummaryDto.OFFICER_REPORT_PERCENTAGE, WeeklyReportRegionSummaryDto.OFFICER_ZERO_REPORTS, WeeklyReportRegionSummaryDto.INFORMANTS, WeeklyReportRegionSummaryDto.INFORMANT_REPORTS, WeeklyReportRegionSummaryDto.INFORMANT_REPORT_PERCENTAGE, WeeklyReportRegionSummaryDto.INFORMANT_ZERO_REPORTS); for (Column column : getColumns()) { if (column.getPropertyId().equals(VIEW_DETAILS_BTN_ID)) { column.setHeaderCaption(""); } else { column.setHeaderCaption(I18nProperties.getPrefixCaption(WeeklyReportRegionSummaryDto.I18N_PREFIX, column.getPropertyId().toString(), column.getHeaderCaption())); } } HeaderRow headerRow = getHeaderRow(0); headerRow.getCell(WeeklyReportRegionSummaryDto.OFFICERS).setStyleName(CssStyles.GRID_CELL_ODD); headerRow.getCell(WeeklyReportRegionSummaryDto.OFFICER_REPORTS).setStyleName(CssStyles.GRID_CELL_ODD); headerRow.getCell(WeeklyReportRegionSummaryDto.OFFICER_REPORT_PERCENTAGE) .setStyleName(CssStyles.GRID_CELL_ODD); headerRow.getCell(WeeklyReportRegionSummaryDto.OFFICER_ZERO_REPORTS).setStyleName(CssStyles.GRID_CELL_ODD); HeaderRow preHeaderRow = prependHeaderRow(); HeaderCell preHeaderCell = preHeaderRow.join(WeeklyReportRegionSummaryDto.OFFICERS, WeeklyReportRegionSummaryDto.OFFICER_REPORTS, WeeklyReportRegionSummaryDto.OFFICER_REPORT_PERCENTAGE, WeeklyReportRegionSummaryDto.OFFICER_ZERO_REPORTS); preHeaderCell.setHtml(I18nProperties.getCaption(Captions.weeklyReportRegionOfficers)); preHeaderCell.setStyleName(CssStyles.GRID_CELL_ODD); preHeaderRow .join(WeeklyReportRegionSummaryDto.INFORMANTS, WeeklyReportRegionSummaryDto.INFORMANT_REPORTS, WeeklyReportRegionSummaryDto.INFORMANT_REPORT_PERCENTAGE, WeeklyReportRegionSummaryDto.INFORMANT_ZERO_REPORTS) .setHtml(I18nProperties.getCaption(Captions.weeklyReportRegionInformants)); getColumn(VIEW_DETAILS_BTN_ID).setRenderer(new HtmlRenderer()); getColumn(VIEW_DETAILS_BTN_ID).setWidth(60); getColumn(WeeklyReportRegionSummaryDto.OFFICER_REPORT_PERCENTAGE).setRenderer(new PercentageRenderer()); getColumn(WeeklyReportRegionSummaryDto.INFORMANT_REPORT_PERCENTAGE).setRenderer(new PercentageRenderer()); setCellStyleGenerator(new WeeklyReportGridCellStyleGenerator()); setSelectionMode(SelectionMode.NONE); addItemClickListener(this); }