getColumn("delete").setRenderer(new ButtonRenderer(event -> { Object itemId = event.getItemId(); indexed.removeItem(itemId); })); getColumn("timeStamp").setRenderer(new DateRenderer(FORMAT)); getColumns().stream().forEach(c -> c.setSortable(false)); setHeaderVisible(false);
/** * Setup {@link Renderer}s and {@link Converter}s for given <code>property</code> column, using * {@link PropertyColumn} definition and falling back to defaults. * @param property Property to which the column is bound * @param column Column to setup */ protected void setupRendererAndConverter(P property, Column column) { PropertyColumn<T, P> propertyColumn = getPropertyColumn(property); if (propertyColumn != null) { // Converter if (propertyColumn.getConverter() != null) { column.setConverter(propertyColumn.getConverter()); } else { // ue default, if available getDefaultPropertyConverter(property).ifPresent((c) -> column.setConverter(c)); } // Renderer if (propertyColumn.getRenderer() != null) { column.setRenderer(propertyColumn.getRenderer()); } else { // use default getDefaultPropertyRenderer(property).ifPresent(r -> column.setRenderer(r)); } } }
gridColumn.setRenderer(getDefaultPresentationValueProvider(column), getDefaultRenderer(column)); gridColumn.setStyleGenerator(new CellStyleGeneratorAdapter<>(column)); gridColumn.setDescriptionGenerator(new CellDescriptionGeneratorAdapter<>(column),
entryGrid.addColumn(glEntry -> glEntry.getTransaction().getTimestamp()) .setId("timestamp") .setRenderer(new DateRenderer(dateFormat)) .setCaption(getCaptionFromId("timestamp")) .setSortable(true) entryGrid.addColumn(GLEntry::getBalance) .setId("balance") .setRenderer(createAmountRenderer()) .setStyleGenerator(cellStyle -> "align-right") .setCaption(getCaptionFromId("balance"))
@SuppressWarnings("unchecked") protected void updateRendererInternal() { if (gridColumn != null) { com.vaadin.ui.renderers.Renderer vRenderer = renderer != null ? renderer.getImplementation() : owner.getDefaultRenderer(this); // The following priority is used to determine a value provider: // a presentation provider > a converter > a formatter > a renderer's presentation provider > // a value provider that always returns its input argument > a default presentation provider //noinspection RedundantCast ValueProvider vPresentationProvider = presentationProvider != null ? createPresentationProviderWrapper(presentationProvider) : converter != null ? new DataGridConverterBasedValueProvider(converter) : formatter != null ? new FormatterBasedValueProvider(formatter) : renderer != null && renderer.getPresentationValueProvider() != null ? (ValueProvider) renderer.getPresentationValueProvider() : renderer != null // In case renderer != null and there are no other user specified value providers // We use a value provider that always returns its input argument instead of a default // value provider as we want to keep the original value type. ? ValueProvider.identity() : owner.getDefaultPresentationValueProvider(this); gridColumn.setRenderer(vPresentationProvider, vRenderer); owner.repaint(); } }
@Override protected void addColumnRenderes() { getColumn(SPUILabelDefinitions.VAR_NUMBER_OF_GROUPS).setRenderer(new HtmlRenderer(), new TotalTargetGroupsConverter()); getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS_COUNT_STATUS).setRenderer(new HtmlRenderer(), new TotalTargetCountStatusConverter()); getColumn(SPUILabelDefinitions.VAR_STATUS).setRenderer(new HtmlLabelRenderer(), new RolloutStatusConverter()); final RolloutRenderer customObjectRenderer = new RolloutRenderer(RolloutRendererData.class); customObjectRenderer.addClickListener(this::onClickOfRolloutName); getColumn(ROLLOUT_RENDERER_DATA).setRenderer(customObjectRenderer); getColumn(VIRT_PROP_RUN).setRenderer( new GridButtonRenderer(clickEvent -> startOrResumeRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createRunButtonMetadata)); getColumn(VIRT_PROP_APPROVE).setRenderer( new GridButtonRenderer(clickEvent -> approveRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createApprovalButtonMetadata)); getColumn(VIRT_PROP_PAUSE).setRenderer( new GridButtonRenderer(clickEvent -> pauseRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createPauseButtonMetadata)); getColumn(VIRT_PROP_UPDATE).setRenderer( new GridButtonRenderer(clickEvent -> updateRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createUpdateButtonMetadata)); getColumn(VIRT_PROP_COPY).setRenderer( new GridButtonRenderer(clickEvent -> copyRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createCopyButtonMetadata)); getColumn(VIRT_PROP_DELETE).setRenderer( new GridButtonRenderer(clickEvent -> deleteRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createDeleteButtonMetadata)); }
@Override protected void addColumnRenderes() { getColumn(SPUILabelDefinitions.VAR_NUMBER_OF_GROUPS).setRenderer(new HtmlRenderer(), new TotalTargetGroupsConverter()); getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS_COUNT_STATUS).setRenderer(new HtmlRenderer(), new TotalTargetCountStatusConverter()); getColumn(SPUILabelDefinitions.VAR_STATUS).setRenderer(new HtmlLabelRenderer(), new RolloutStatusConverter()); final RolloutRenderer customObjectRenderer = new RolloutRenderer(RolloutRendererData.class); customObjectRenderer.addClickListener(this::onClickOfRolloutName); getColumn(ROLLOUT_RENDERER_DATA).setRenderer(customObjectRenderer); getColumn(VIRT_PROP_RUN).setRenderer( new GridButtonRenderer(clickEvent -> startOrResumeRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createRunButtonMetadata)); getColumn(VIRT_PROP_APPROVE).setRenderer( new GridButtonRenderer(clickEvent -> approveRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createApprovalButtonMetadata)); getColumn(VIRT_PROP_PAUSE).setRenderer( new GridButtonRenderer(clickEvent -> pauseRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createPauseButtonMetadata)); getColumn(VIRT_PROP_UPDATE).setRenderer( new GridButtonRenderer(clickEvent -> updateRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createUpdateButtonMetadata)); getColumn(VIRT_PROP_COPY).setRenderer( new GridButtonRenderer(clickEvent -> copyRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createCopyButtonMetadata)); getColumn(VIRT_PROP_DELETE).setRenderer( new GridButtonRenderer(clickEvent -> deleteRollout((Long) clickEvent.getItemId())), new RolloutGridButtonConverter(this::createDeleteButtonMetadata)); }
@Override protected void addColumnRenderes() { getColumn(ProxyAction.PXY_ACTION_LAST_MODIFIED_AT).setConverter(new LongToFormattedDateStringConverter()); getColumn(ProxyAction.PXY_ACTION_STATUS).setRenderer(new HtmlLabelRenderer(), new HtmlStatusLabelConverter(this::createStatusLabelMetadata)); getColumn(ProxyAction.PXY_ACTION_IS_ACTIVE_DECO).setRenderer(new HtmlLabelRenderer(), new HtmlIsActiveLabelConverter(this::createIsActiveLabelMetadata)); getColumn(VIRT_PROP_FORCED).setRenderer(new HtmlLabelRenderer(), new HtmlVirtPropLabelConverter(ActionHistoryGrid::createForcedLabelMetadata)); getColumn(VIRT_PROP_TIMEFORCED).setRenderer(new HtmlLabelRenderer(), new HtmlVirtPropLabelConverter(this::createTimeForcedLabelMetadata)); getColumn(VIRT_PROP_ACTION_CANCEL).setRenderer( new GridButtonRenderer(clickEvent -> confirmAndCancelAction((Long) clickEvent.getItemId())), new ActionGridButtonConverter(this::createCancelButtonMetadata)); getColumn(VIRT_PROP_ACTION_FORCE).setRenderer( new GridButtonRenderer(clickEvent -> confirmAndForceAction((Long) clickEvent.getItemId())), new ActionGridButtonConverter(this::createForceButtonMetadata)); getColumn(VIRT_PROP_ACTION_FORCE_QUIT).setRenderer( new GridButtonRenderer(clickEvent -> confirmAndForceQuitAction((Long) clickEvent.getItemId())), new ActionGridButtonConverter(this::createForceQuitButtonMetadata)); }
protected Grid createMetadataGrid() { final Grid metadataGrid = new Grid(); metadataGrid.addStyleName(SPUIStyleDefinitions.METADATA_GRID); metadataGrid.setImmediate(true); metadataGrid.setHeight("100%"); metadataGrid.setWidth("100%"); metadataGrid.setId(UIComponentIdProvider.METDATA_TABLE_ID); metadataGrid.setSelectionMode(SelectionMode.SINGLE); metadataGrid.setColumnReorderingAllowed(true); metadataGrid.setContainerDataSource(getMetadataContainer()); metadataGrid.getColumn(KEY).setHeaderCaption(i18n.getMessage("header.key")); metadataGrid.getColumn(VALUE).setHeaderCaption(i18n.getMessage("header.value")); metadataGrid.getColumn(VALUE).setHidden(true); metadataGrid.addSelectionListener(this::onRowClick); metadataGrid.getColumn(DELETE_BUTTON).setHeaderCaption(""); metadataGrid.getColumn(DELETE_BUTTON).setRenderer(new HtmlButtonRenderer(this::onDelete)); metadataGrid.getColumn(DELETE_BUTTON).setWidth(50); metadataGrid.getColumn(KEY).setExpandRatio(1); return metadataGrid; }
protected Grid createMetadataGrid() { final Grid metadataGrid = new Grid(); metadataGrid.addStyleName(SPUIStyleDefinitions.METADATA_GRID); metadataGrid.setImmediate(true); metadataGrid.setHeight("100%"); metadataGrid.setWidth("100%"); metadataGrid.setId(UIComponentIdProvider.METDATA_TABLE_ID); metadataGrid.setSelectionMode(SelectionMode.SINGLE); metadataGrid.setColumnReorderingAllowed(true); metadataGrid.setContainerDataSource(getMetadataContainer()); metadataGrid.getColumn(KEY).setHeaderCaption(i18n.getMessage("header.key")); metadataGrid.getColumn(VALUE).setHeaderCaption(i18n.getMessage("header.value")); metadataGrid.getColumn(VALUE).setHidden(true); metadataGrid.addSelectionListener(this::onRowClick); metadataGrid.getColumn(DELETE_BUTTON).setHeaderCaption(""); metadataGrid.getColumn(DELETE_BUTTON).setRenderer(new HtmlButtonRenderer(this::onDelete)); metadataGrid.getColumn(DELETE_BUTTON).setWidth(50); metadataGrid.getColumn(KEY).setExpandRatio(1); return metadataGrid; }
@Override protected void addColumnRenderes() { getColumn(ProxyAction.PXY_ACTION_LAST_MODIFIED_AT).setConverter(new LongToFormattedDateStringConverter()); getColumn(ProxyAction.PXY_ACTION_STATUS).setRenderer(new HtmlLabelRenderer(), new HtmlStatusLabelConverter(this::createStatusLabelMetadata)); getColumn(ProxyAction.PXY_ACTION_IS_ACTIVE_DECO).setRenderer(new HtmlLabelRenderer(), new HtmlIsActiveLabelConverter(this::createIsActiveLabelMetadata)); getColumn(VIRT_PROP_FORCED).setRenderer(new HtmlLabelRenderer(), new HtmlVirtPropLabelConverter(ActionHistoryGrid::createForcedLabelMetadata)); getColumn(VIRT_PROP_TIMEFORCED).setRenderer(new HtmlLabelRenderer(), new HtmlVirtPropLabelConverter(this::createTimeForcedLabelMetadata)); getColumn(VIRT_PROP_ACTION_CANCEL).setRenderer( new GridButtonRenderer(clickEvent -> confirmAndCancelAction((Long) clickEvent.getItemId())), new ActionGridButtonConverter(this::createCancelButtonMetadata)); getColumn(VIRT_PROP_ACTION_FORCE).setRenderer( new GridButtonRenderer(clickEvent -> confirmAndForceAction((Long) clickEvent.getItemId())), new ActionGridButtonConverter(this::createForceButtonMetadata)); getColumn(VIRT_PROP_ACTION_FORCE_QUIT).setRenderer( new GridButtonRenderer(clickEvent -> confirmAndForceQuitAction((Long) clickEvent.getItemId())), new ActionGridButtonConverter(this::createForceQuitButtonMetadata)); }
@Override protected void addColumnRenderes() { getColumn(SPUILabelDefinitions.VAR_STATUS).setRenderer(new HtmlLabelRenderer(), new StatusConverter()); }
private void setGridColumnProperties() { grid.getColumn(COLUMN_STATUS).setRenderer(new StatusRenderer()); grid.getColumn(COLUMN_PROGRESS).setRenderer(new ProgressBarRenderer()); grid.setColumnOrder(COLUMN_STATUS, COLUMN_PROGRESS, COLUMN_FILE_NAME, SPUILabelDefinitions.NAME_VERSION, COLUMN_REASON); setColumnWidth(); grid.getColumn(SPUILabelDefinitions.NAME_VERSION) .setHeaderCaption(i18n.getMessage("upload.swModuleTable.header")); grid.setFrozenColumnCount(5); }
@Override protected void addColumnRenderes() { getColumn(SPUILabelDefinitions.VAR_STATUS).setRenderer(new HtmlLabelRenderer(), new StatusConverter()); }
@Override protected void addColumnRenderes() { getColumn(SPUILabelDefinitions.VAR_STATUS).setRenderer(new HtmlLabelRenderer(), new RolloutGroupStatusConverter()); getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS_COUNT_STATUS).setRenderer(new HtmlRenderer(), new TotalTargetCountStatusConverter()); if (permissionChecker.hasRolloutTargetsReadPermission()) { getColumn(ROLLOUT_RENDERER_DATA).setRenderer(new RolloutRenderer(new RolloutGroupClickListener())); } }
@Override protected void addColumnRenderes() { getColumn(ProxyActionStatus.PXY_AS_STATUS).setRenderer(new HtmlLabelRenderer(), new HtmlStatusLabelConverter(this::createStatusLabelMetadata)); getColumn(ProxyActionStatus.PXY_AS_CREATED_AT).setConverter(new LongToFormattedDateStringConverter()); }
@Override protected void addColumnRenderes() { getColumn(ProxyActionStatus.PXY_AS_STATUS).setRenderer(new HtmlLabelRenderer(), new HtmlStatusLabelConverter(this::createStatusLabelMetadata)); getColumn(ProxyActionStatus.PXY_AS_CREATED_AT).setConverter(new LongToFormattedDateStringConverter()); }
@Override protected void addColumnRenderes() { getColumn(SPUILabelDefinitions.VAR_STATUS).setRenderer(new HtmlLabelRenderer(), new RolloutGroupStatusConverter()); getColumn(SPUILabelDefinitions.VAR_TOTAL_TARGETS_COUNT_STATUS).setRenderer(new HtmlRenderer(), new TotalTargetCountStatusConverter()); if (permissionChecker.hasRolloutTargetsReadPermission()) { getColumn(ROLLOUT_RENDERER_DATA).setRenderer(new RolloutRenderer(new RolloutGroupClickListener())); } }
private void setGridColumnProperties() { grid.getColumn(COLUMN_STATUS).setRenderer(new StatusRenderer()); grid.getColumn(COLUMN_PROGRESS).setRenderer(new ProgressBarRenderer()); grid.setColumnOrder(COLUMN_STATUS, COLUMN_PROGRESS, COLUMN_FILE_NAME, SPUILabelDefinitions.NAME_VERSION, COLUMN_REASON); setColumnWidth(); grid.getColumn(SPUILabelDefinitions.NAME_VERSION) .setHeaderCaption(i18n.getMessage("upload.swModuleTable.header")); grid.setFrozenColumnCount(5); }
/** * Sets the Renderer for this Column. Setting the renderer will cause * all currently available row data to be recreated and sent to the * client. * * @param renderer * the new renderer * @return this column * * @since 8.0.3 */ public Column<T, V> setRenderer(Renderer<? super V> renderer) { return setRenderer(ValueProvider.identity(), renderer); }