Skip to content

Commit

Permalink
MID-8147: adding help and translation of threshold column for levenst…
Browse files Browse the repository at this point in the history
…hein and similarity
  • Loading branch information
skublik committed Oct 7, 2022
1 parent 0b96040 commit cd8449c
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 22 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
<html xmlns:wicket="http://wicket.apache.org">
<wicket:panel>
<div wicket:id="name" style="float: left;"/>
<i wicket:id="help" style="float: left; margin-top: 4px;" class="fa fa-fw fa-info-circle text-info"/>
<span class="btn btn-tool">
<i wicket:id="help" data-toggle="tooltip" data-placement="right" class="fa fa-fw fa-info-circle text-info"/>
</span>
</wicket:panel>
</html>
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ private void initLayout() {

Label help = new Label(ID_HELP);
IModel<String> helpModel = getHelpModel();
help.add(AttributeModifier.replace("title",createStringResource(helpModel.getObject() != null ? helpModel.getObject() : "")));
help.add(AttributeModifier.replace("data-original-title",createStringResource(helpModel.getObject() != null ? helpModel.getObject() : "")));
help.add(new VisibleBehaviour(() -> StringUtils.isNotEmpty(helpModel.getObject())));
help.setOutputMarkupId(true);
add(help);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
package com.evolveum.midpoint.gui.impl.page.admin.resource.component.wizard.objectType.correlation;

import com.evolveum.midpoint.gui.api.GuiStyleConstants;
import com.evolveum.midpoint.gui.api.component.LabelWithHelpPanel;
import com.evolveum.midpoint.gui.api.model.LoadableModel;
import com.evolveum.midpoint.gui.api.prism.wrapper.ItemWrapper;
import com.evolveum.midpoint.gui.api.prism.wrapper.PrismContainerValueWrapper;
Expand All @@ -19,9 +20,12 @@
import com.evolveum.midpoint.gui.impl.component.data.column.PrismPropertyWrapperColumnPanel;
import com.evolveum.midpoint.gui.impl.component.icon.CompositedIconBuilder;
import com.evolveum.midpoint.gui.impl.component.input.ContainersDropDownPanel;
import com.evolveum.midpoint.gui.impl.prism.panel.ItemHeaderPanel;
import com.evolveum.midpoint.gui.impl.prism.panel.PrismPropertyHeaderPanel;
import com.evolveum.midpoint.model.api.AssignmentObjectRelation;
import com.evolveum.midpoint.prism.PrismContainerDefinition;
import com.evolveum.midpoint.prism.PrismContainerValue;
import com.evolveum.midpoint.prism.PrismValue;
import com.evolveum.midpoint.prism.path.ItemName;
import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.util.exception.SchemaException;
Expand All @@ -42,6 +46,7 @@
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.behavior.AttributeAppender;
import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn;
import org.apache.wicket.markup.html.form.FormComponent;
import org.apache.wicket.markup.html.panel.Panel;
Expand Down Expand Up @@ -169,6 +174,11 @@ protected <IW extends ItemWrapper> Component createColumnPanel(String componentI
protected void onUpdate(AjaxRequestTarget target) {
target.add(findParent(SelectableDataTable.SelectableRowItem.class));
}

@Override
protected String getNullValidDisplayValue() {
return getString("CorrelationItemRefsTable.column.fuzzy.nullValue");
}
};
panel.setOutputMarkupId(true);
return panel;
Expand All @@ -181,32 +191,32 @@ public String getCssClass() {
});

columns.add(createColumnForPropertyOfFuzzyContainer(
correlationDef,
LevenshteinDistanceSearchDefinitionType.F_THRESHOLD,
"CorrelationItemRefsTable.column.threshold.label",
"CorrelationItemRefsTable.column.threshold.help",
"col-3"));
columns.add(createColumnForPropertyOfFuzzyContainer(
correlationDef,
LevenshteinDistanceSearchDefinitionType.F_INCLUSIVE,
"CorrelationItemRefsTable.column.inclusive.label",
"CorrelationItemRefsTable.column.inclusive.help",
"col-2"));

return columns;
}

private IColumn<PrismContainerValueWrapper<CorrelationItemType>, String> createColumnForPropertyOfFuzzyContainer(
IModel<PrismContainerDefinition<CorrelationItemType>> correlationDef, ItemName propertyName, String cssClass) {
return new PrismPropertyWrapperColumn<CorrelationItemType, String>(
correlationDef,
ItemPath.create(
CorrelationItemType.F_SEARCH,
ItemSearchDefinitionType.F_FUZZY,
FuzzySearchDefinitionType.F_LEVENSHTEIN,
propertyName),
AbstractItemWrapperColumn.ColumnType.VALUE,
getPageBase()) {
ItemName propertyName, String labelKey, String helpKey, String cssClass) {
return new AbstractColumn<>(
getPageBase().createStringResource(labelKey)) {

@Override
protected boolean isHelpTextVisible(boolean originalHelpTextVisible) {
return false;
public Component getHeader(String componentId) {
return new LabelWithHelpPanel(componentId, getDisplayModel()) {
@Override
protected IModel<String> getHelpModel() {
return getPageBase().createStringResource(helpKey);
}
};
}

@Override
Expand Down Expand Up @@ -237,7 +247,8 @@ public void populateItem(
return null;
};

Component panel = createColumnPanel(componentId, model);
Component panel = new PrismPropertyWrapperColumnPanel<>(
componentId, model, AbstractItemWrapperColumn.ColumnType.VALUE);
panel.add(new VisibleBehaviour(() -> model.getObject() != null));
cellItem.add(panel);
}
Expand Down Expand Up @@ -277,6 +288,6 @@ protected UserProfileStorage.TableId getTableId() {

@Override
protected String getKeyOfTitleForNewObjectButton() {
return "CorrelationItemRefTable.newObject";
return "CorrelationItemRefsTable.newObject";
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ protected void addCustomButtons(RepeatingView buttons) {
AjaxIconButton saveButton = new AjaxIconButton(
buttons.newChildId(),
Model.of("fa fa-check"),
getPageBase().createStringResource("CorrelationItemRefTableWizardPanel.confirmSettings")) {
getPageBase().createStringResource("CorrelationItemRefsTableWizardPanel.confirmSettings")) {
@Override
public void onClick(AjaxRequestTarget target) {
onExitPerformed(target);
Expand All @@ -76,17 +76,17 @@ protected IModel<String> getBreadcrumbLabel() {
if (StringUtils.isNotBlank(name)) {
return Model.of(name);
}
return getPageBase().createStringResource("CorrelationItemRefTableWizardPanel.breadcrumb");
return getPageBase().createStringResource("CorrelationItemRefsTableWizardPanel.breadcrumb");
}

@Override
protected IModel<String> getTextModel() {
return getPageBase().createStringResource("CorrelationItemRefTableWizardPanel.text");
return getPageBase().createStringResource("CorrelationItemRefsTableWizardPanel.text");
}

@Override
protected IModel<String> getSubTextModel() {
return getPageBase().createStringResource("CorrelationItemRefTableWizardPanel.subText");
return getPageBase().createStringResource("CorrelationItemRefsTableWizardPanel.subText");
}

protected CorrelationItemRefsTable getTable() {
Expand Down

0 comments on commit cd8449c

Please sign in to comment.