Object itemId = event.getItemId(); indexed.removeItem(itemId); }));
protected ClickableRenderer.RendererClickListener<T> createClickListenerWrapper(Consumer<DataGrid.RendererClickEvent<T>> listener) { return (ClickableRenderer.RendererClickListener<T>) e -> { DataGrid.Column column = getColumnByGridColumn(e.getColumn()); DataGrid.RendererClickEvent<T> event = new DataGrid.RendererClickEvent<>(getDataGrid(), WebWrapperUtils.toMouseEventDetails(e), e.getItem(), column.getId()); listener.accept(event); }; }
@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)); }
private void handleOkDeleteMetadata(final RendererClickEvent event, final String key) { deleteMetadata(getSelectedEntity(), key); uiNotification.displaySuccess(i18n.getMessage("message.metadata.deleted.successfully", key)); final Object selectedRow = metaDataGrid.getSelectedRow(); metaDataGrid.getContainerDataSource().removeItem(event.getItemId()); // force grid to refresh metaDataGrid.clearSortOrder(); if (!metaDataGrid.getContainerDataSource().getItemIds().isEmpty()) { if (selectedRow != null) { if (selectedRow.equals(event.getItemId())) { metaDataGrid.select(metaDataGrid.getContainerDataSource().getIdByIndex(0)); } else { metaDataGrid.select(selectedRow); } } } else { resetFields(); } }
@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)); }
private void handleOkDeleteMetadata(final RendererClickEvent event, final String key) { deleteMetadata(getSelectedEntity(), key); uiNotification.displaySuccess(i18n.getMessage("message.metadata.deleted.successfully", key)); final Object selectedRow = metaDataGrid.getSelectedRow(); metaDataGrid.getContainerDataSource().removeItem(event.getItemId()); // force grid to refresh metaDataGrid.clearSortOrder(); if (!metaDataGrid.getContainerDataSource().getItemIds().isEmpty()) { if (selectedRow != null) { if (selectedRow.equals(event.getItemId())) { metaDataGrid.select(metaDataGrid.getContainerDataSource().getIdByIndex(0)); } else { metaDataGrid.select(selectedRow); } } } else { resetFields(); } }
private void onDelete(final RendererClickEvent event) { final Item item = metaDataGrid.getContainerDataSource().getItem(event.getItemId()); final String key = (String) item.getItemProperty(KEY).getValue(); final ConfirmationDialog confirmDialog = new ConfirmationDialog( i18n.getMessage("caption.entity.delete.action.confirmbox"), i18n.getMessage("message.confirm.delete.metadata", key), i18n.getMessage(UIMessageIdProvider.BUTTON_OK), i18n.getMessage(UIMessageIdProvider.BUTTON_CANCEL), ok -> { if (ok) { handleOkDeleteMetadata(event, key); } }); UI.getCurrent().addWindow(confirmDialog.getWindow()); confirmDialog.getWindow().bringToFront(); }
private void onDelete(final RendererClickEvent event) { final Item item = metaDataGrid.getContainerDataSource().getItem(event.getItemId()); final String key = (String) item.getItemProperty(KEY).getValue(); final ConfirmationDialog confirmDialog = new ConfirmationDialog( i18n.getMessage("caption.entity.delete.action.confirmbox"), i18n.getMessage("message.confirm.delete.metadata", key), i18n.getMessage(UIMessageIdProvider.BUTTON_OK), i18n.getMessage(UIMessageIdProvider.BUTTON_CANCEL), ok -> { if (ok) { handleOkDeleteMetadata(event, key); } }); UI.getCurrent().addWindow(confirmDialog.getWindow()); confirmDialog.getWindow().bringToFront(); }
@Override public void click(final RendererClickEvent event) { final Optional<RolloutGroup> group = rolloutGroupManagement.getWithDetailedStatus((Long) event.getItemId()); if (!group.isPresent()) { eventBus.publish(this, RolloutEvent.SHOW_ROLLOUTS); return; } rolloutUIState.setRolloutGroup(group.get()); eventBus.publish(this, RolloutEvent.SHOW_ROLLOUT_GROUP_TARGETS); } }
private void onClickOfRolloutName(final RendererClickEvent event) { rolloutUIState.setRolloutId((long) event.getItemId()); final String rolloutName = (String) getContainerDataSource().getItem(event.getItemId()) .getItemProperty(SPUILabelDefinitions.VAR_NAME).getValue(); rolloutUIState.setRolloutName(rolloutName); final String ds = (String) getContainerDataSource().getItem(event.getItemId()) .getItemProperty(SPUILabelDefinitions.VAR_DIST_NAME_VERSION).getValue(); rolloutUIState.setRolloutDistributionSet(ds); eventBus.publish(this, RolloutEvent.SHOW_ROLLOUT_GROUPS); }
private void onClickOfRolloutName(final RendererClickEvent event) { rolloutUIState.setRolloutId((long) event.getItemId()); final String rolloutName = (String) getContainerDataSource().getItem(event.getItemId()) .getItemProperty(SPUILabelDefinitions.VAR_NAME).getValue(); rolloutUIState.setRolloutName(rolloutName); final String ds = (String) getContainerDataSource().getItem(event.getItemId()) .getItemProperty(SPUILabelDefinitions.VAR_DIST_NAME_VERSION).getValue(); rolloutUIState.setRolloutDistributionSet(ds); eventBus.publish(this, RolloutEvent.SHOW_ROLLOUT_GROUPS); }
@Override public void click(final RendererClickEvent event) { final Optional<RolloutGroup> group = rolloutGroupManagement.getWithDetailedStatus((Long) event.getItemId()); if (!group.isPresent()) { eventBus.publish(this, RolloutEvent.SHOW_ROLLOUTS); return; } rolloutUIState.setRolloutGroup(group.get()); eventBus.publish(this, RolloutEvent.SHOW_ROLLOUT_GROUP_TARGETS); } }
/** * Creates a new clickable renderer with the given presentation type and * null representation. * * @param presentationType * the data type that this renderer displays, not * <code>null</code> * @param nullRepresentation * a string that will be sent to the client instead of a regular * value in case the actual cell value is <code>null</code>. May * be <code>null</code>. */ protected ClickableRenderer(Class<V> presentationType, String nullRepresentation) { super(presentationType, nullRepresentation); registerRpc((RendererClickRpc) (String rowKey, String columnId, MouseEventDetails mouseDetails) -> { Grid<T> grid = getParentGrid(); T item = grid.getDataCommunicator().getKeyMapper().get(rowKey); Column<T, V> column = getParent(); fireEvent( new RendererClickEvent<>(grid, item, column, mouseDetails)); }); }