private ColumnModel buildColumnModel() { List<ColumnConfig> config = new ArrayList<>(); config.add(new ColumnConfig("database", I18N.CONSTANTS.database(), 100)); config.add(new ColumnConfig("activity", I18N.CONSTANTS.activity(), 100)); config.add(new ColumnConfig("partner", I18N.CONSTANTS.partner(), 100)); config.add(new ColumnConfig("location", I18N.CONSTANTS.location(), 100)); config.add(new ColumnConfig("date", I18N.CONSTANTS.date(), 100)); config.add(new ColumnConfig("indicator", I18N.CONSTANTS.indicator(), 100)); ColumnConfig valueColumn = new ColumnConfig("value", I18N.CONSTANTS.value(), 100); valueColumn.setNumberFormat(IndicatorNumberFormat.INSTANCE); valueColumn.setAlignment(Style.HorizontalAlignment.RIGHT); config.add(valueColumn); return new ColumnModel(config); }
config.setToolTip(metadata.getDescription()); config.setWidth(100); // [px] config.setAlignment(p.isTypeOf(Number.class) ? HorizontalAlignment.RIGHT : HorizontalAlignment.LEFT); config.setAlignment(HorizontalAlignment.CENTER); config.setRenderer(new GridCellRenderer() { @Override
column.setAlignment(Style.HorizontalAlignment.RIGHT); column.setSortable(false); column.setMenuDisabled(true);
public ColumnConfig createIndicatorColumn(IndicatorDTO indicator, String header) { NumberField indicatorField = new NumberField(); indicatorField.getPropertyEditor().setFormat(IndicatorNumberFormat.INSTANCE); ColumnConfig indicatorColumn = new ColumnConfig(indicator.getPropertyName(), header, 50); indicatorColumn.setToolTip(indicator.getName()); indicatorColumn.setNumberFormat(IndicatorNumberFormat.INSTANCE); indicatorColumn.setEditor(new CellEditor(indicatorField)); indicatorColumn.setAlignment(Style.HorizontalAlignment.RIGHT); if (indicator.getType() == FieldTypeClass.QUANTITY) { // For SUM indicators, don't show ZEROs in the Grid // (it looks better if we don't) if (indicator.getAggregation() == IndicatorDTO.AGGREGATE_SUM) { indicatorColumn.setRenderer(new QuantityCellRenderer()); } else if (indicator.getAggregation() == IndicatorDTO.AGGREGATE_SITE_COUNT) { indicatorColumn.setRenderer(new SiteCountCellRenderer()); } } else if (indicator.getType() == FieldTypeClass.FREE_TEXT || indicator.getType() == FieldTypeClass.NARRATIVE) { indicatorColumn.setRenderer(new TextIndicatorCellRenderer()); } return indicatorColumn; }