protected void addAppliedFilter() { if (lastAppliedFilter == null) return; if (!appliedFilters.isEmpty() && appliedFilters.getLast().filter.equals(lastAppliedFilter)) return; this.layout.add(appliedFiltersLayout, CONDITIONS_LOCATION_TOP.equals(conditionsLocation) ? 0 : 1); BoxLayout layout = uiComponents.create(HBoxLayout.class); layout.setSpacing(true); if (!appliedFilters.isEmpty()) { AppliedFilterHolder holder = appliedFilters.getLast(); holder.layout.remove(holder.button); } Label<String> label = uiComponents.create(Label.NAME); label.setValue(lastAppliedFilter.getText()); layout.add(label); label.setAlignment(Alignment.MIDDLE_LEFT); LinkButton button = uiComponents.create(LinkButton.class); button.setIcon("icons/item-remove.png"); button.addClickListener(e -> removeAppliedFilter()); layout.add(button); addAppliedFilterLayoutHook(layout); appliedFiltersLayout.add(layout); appliedFilters.add(new AppliedFilterHolder(lastAppliedFilter, layout, button)); }
while (iterator.hasNext()) { Node<AbstractCondition> childNode = iterator.next(); recursivelyCreateConditionCaption(childNode, sb); if (iterator.hasNext()) sb.append(", "); sb.append(condition.getOperationCaption()) .append(" ") .append(formatParamValue(param));
boolean makeDefaultActionEnabled = !isDefault && !isFolder && !isSet && !isAdHocFilter && (!isGlobal || userCanEditGlobalFilter); boolean pinAppliedActionEnabled = lastAppliedFilter != null && !(lastAppliedFilter.getFilterEntity() == adHocFilter && lastAppliedFilter.getConditions().getRoots().size() == 0) && (adapter == null || Stores.isMain(metadata.getTools().getStoreName(adapter.getMetaClass()))); boolean saveAsSearchFolderActionEnabled = folderActionsEnabled && !isFolder && !hasCode;
public String getText() { String name = filterEntity.getName(); if (StringUtils.isBlank(name)) { name = messages.getMainMessage(filterEntity.getCode()); } StringBuilder sb = new StringBuilder(name); List<Node<AbstractCondition>> visibleRootNodesWithValues = new ArrayList<>(); for (Node<AbstractCondition> rootNode : conditions.getRootNodes()) { AbstractCondition condition = rootNode.getData(); if (!condition.getHidden() && (condition.isGroup() || condition.getParam() != null && condition.getParam().getValue() != null)) visibleRootNodesWithValues.add(rootNode); } Iterator<Node<AbstractCondition>> iterator = visibleRootNodesWithValues.iterator(); if (iterator.hasNext()) sb.append(": "); while (iterator.hasNext()) { Node<AbstractCondition> rootNode = iterator.next(); recursivelyCreateConditionCaption(rootNode, sb); if (iterator.hasNext()) sb.append(", "); } return sb.toString(); }
lastAppliedFilter = new AppliedFilter(filterEntity, conditions); } else { lastAppliedFilter = null;