public final BSActionColumn<T, S> appendAction(IModel<?> labelModel, IBSAction<T> action) { return appendAction(labelModel, (IModel<Icone>) null, action); }
public BSDataTableBuilder<T, S, BSActionColumn<T, S>> appendActionColumn(IModel<String> displayModel, BSActionColumnCallback<T, S> callback) { BSActionColumn<T, S> column = new BSActionColumn<>(displayModel); callback.accept(column); return appendColumn(column); } public BSDataTableBuilder<T, S, BSActionColumn<T, S>> appendActionColumn(String headerTitle, BSActionColumnCallback<T, S> callback) {
protected void appendEditAction(BSActionColumn<T, String> actionColumn) { actionColumn.appendStaticAction(getMessage("label.table.column.edit"), DefaultIcons.PENCIL_SQUARE, this::createEditionLink); }
@Override public final void populateItem(Item<ICellPopulator<T>> cellItem, String componentId, IModel<T> rowModel) { BSActionPanel<T> actionPanel = newActionPanel(componentId, rowModel); cellItem.add(actionPanel); onPopulateActions(rowModel, actionPanel); }
@Override protected void appendActionColumns(BSDataTableBuilder<BoxItemModel, String, IColumn<BoxItemModel, String>> builder) { BSActionColumn<BoxItemModel, String> actionColumn = new BSActionColumn<>(getMessage("label.table.column.actions")); actionColumn.appendStaticAction( $m.ofValue(itemAction.getLabel()), itemAction.getIcon(), c -> c.styleClasses($m.ofValue("worklist-action-btn"))); } else if (itemAction.getType() == ItemActionType.ENDPOINT) { actionColumn.appendAction( $m.ofValue(itemAction.getLabel()), itemAction.getIcon(), .appendStaticAction( getMessage("label.table.column.history"), Icone.HISTORY,
@Override protected void onPopulateActions(IModel<BoxItemDataMap> rowModel, BSActionPanel<BoxItemDataMap> actionPanel) { resetActions(); Set<Map.Entry<String, BoxItemAction>> actions = Optional .ofNullable(rowModel) .map(IModel::getObject) .map(BoxItemDataMap::getActionsMap) .map(Map::entrySet) .orElse(new HashSet<>(0)); for (Map.Entry<String, BoxItemAction> entry : actions) { BoxItemAction itemAction = entry.getValue(); if (itemAction.getType() == ItemActionType.URL_POPUP) { appendStaticAction( $m.ofValue(itemAction.getLabel()), itemAction.getIcon(), linkFunction(itemAction, getLinkParams()), visibleFunction(itemAction), c -> c.styleClasses($m.ofValue("worklist-action-btn"))); } else if (itemAction.getType() == ItemActionType.EXECUTE) { appendAction( $m.ofValue(itemAction.getLabel()), itemAction.getIcon(), dynamicLinkFunction(itemAction, getLinkParams()), visibleFunction(itemAction), c -> c.styleClasses($m.ofValue("worklist-action-btn"))); } } super.onPopulateActions(rowModel, actionPanel); }
protected BSDataTable<RequirementHistoryDTO, String> setupDataTable(BaseDataProvider<RequirementHistoryDTO, String> dataProvider) { return new BSDataTableBuilder<>(dataProvider) .appendPropertyColumn(getMessage("label.table.column.task.name"), RequirementHistoryDTO::getTaskName) .appendPropertyColumn(getMessage("label.table.column.begin.date"), RequirementHistoryDTO::getBeginDate) .appendPropertyColumn(getMessage("label.table.column.end.date"), RequirementHistoryDTO::getEndDate) .appendPropertyColumn(getMessage("label.table.column.action"), RequirementHistoryDTO::getExecutedTransition) .appendPropertyColumn(getMessage("label.table.column.allocated.user"), RequirementHistoryDTO::getActor) .appendActionColumn( Model.of(""), column -> column.appendComponentFactory((id, model) -> { final DropDownButtonPanel dropDownButtonPanel; dropDownButtonPanel = new DropDownButtonPanel(id) .setDropdownLabel(Model.of("Formulários")) .setInvisibleIfEmpty(Boolean.TRUE) .setPullRight(Boolean.TRUE); Optional.of(model.getObject()) .map(RequirementHistoryDTO::getRequirementContentHistory) .map(RequirementContentHistoryEntity::getFormVersionHistoryEntities) .ifPresent(list -> list.forEach(fvh -> dropDownButtonPanel .addButton(Model.of(fvh.getFormVersion().getFormEntity().getFormType().getLabel()), viewFormButton(fvh)))); return dropDownButtonPanel; }) ) .build("tabela"); }
@Override public final void populateItem(Item<ICellPopulator<T>> cellItem, String componentId, IModel<T> rowModel) { BSActionPanel<T> actionPanel = newActionPanel(componentId, rowModel); cellItem.add(actionPanel); onPopulateActions(rowModel, actionPanel); }
@Override protected void onPopulateActions(IModel<BoxItemDataMap> rowModel, BSActionPanel<BoxItemDataMap> actionPanel) { resetActions(); Set<Map.Entry<String, BoxItemAction>> actions = Optional .ofNullable(rowModel) .map(IModel::getObject) .map(BoxItemDataMap::getActionsMap) .map(Map::entrySet) .orElse(new HashSet<>(0)); for (Map.Entry<String, BoxItemAction> entry : actions) { BoxItemAction itemAction = entry.getValue(); if (itemAction.getType() == ItemActionType.URL_POPUP) { appendStaticAction( $m.ofValue(itemAction.getLabel()), itemAction.getIcon(), linkFunction(itemAction, getLinkParams()), visibleFunction(itemAction), c -> c.styleClasses($m.ofValue("worklist-action-btn"))); } else if (itemAction.getType() == ItemActionType.EXECUTE) { appendAction( $m.ofValue(itemAction.getLabel()), itemAction.getIcon(), dynamicLinkFunction(itemAction, getLinkParams()), visibleFunction(itemAction), c -> c.styleClasses($m.ofValue("worklist-action-btn"))); } } super.onPopulateActions(rowModel, actionPanel); }
column -> column.appendComponentFactory((id, model) -> {
public final BSActionColumn<T, S> appendAction(IModel<?> labelModel, IBSAction<T> action) { return appendAction(labelModel, (IModel<Icon>) null, action); }
protected void appendViewAction(BSActionColumn<T, String> actionColumn) { actionColumn.appendStaticAction(getMessage("label.table.column.view"), Icone.EYE, this::criarLinkVisualizacao); }
public BSDataTableBuilder<T, S, BSActionColumn<T, S>> appendActionColumn( IModel<String> displayModel, BSActionColumnCallback<T, S> callback) { BSActionColumn<T, S> column = new BSActionColumn<>(displayModel); callback.accept(column); return appendColumn(column); }
c -> c.styleClasses($m.ofValue("worklist-action-btn"))); super.onPopulateActions(rowModel, actionPanel);
column -> column.appendComponentFactory((id, model) -> {
public final BSActionColumn<T, S> appendAction(IModel<?> labelModel, Icone icone, IBSAction<T> action) { return appendAction(labelModel, $m.ofValue(icone), action); }
protected void appendEditAction(BSActionColumn<T, String> actionColumn) { actionColumn.appendStaticAction(getMessage("label.table.column.edit"), DefaultIcons.PENCIL_SQUARE, this::createEditionLink); }
protected void appendActionColumns(BSDataTableBuilder<T, String, IColumn<T, String>> builder) { BSActionColumn<T, String> actionColumn = new BSActionColumn<>(getMessage("label.table.column.actions")); appendEditAction(actionColumn); appendViewAction(actionColumn); appendDeleteAction(actionColumn); builder.appendColumn(actionColumn); }
public final BSActionColumn<T, S> appendAction(IModel<?> labelModel, Icon icone, IBSAction<T> action, IFunction<IModel<T>, Boolean> visibleFunction) { return appendAction(labelModel, icone, action, visibleFunction, IConsumer.noop()); }
protected void appendEditAction(BSActionColumn<T, String> actionColumn) { actionColumn.appendStaticAction(getMessage("label.table.column.edit"), DefaultIcons.PENCIL_SQUARE, this::createEditionLink); }