Skip to content

Commit

Permalink
improve search by using the full label
Browse files Browse the repository at this point in the history
Signed-off-by: Christoph Rueger <chrisrueger@gmail.com>
  • Loading branch information
chrisrueger committed May 5, 2024
1 parent 2621c80 commit e83718a
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ public class ResolutionFailurePanel {
private static final String SEARCHSTRING_HINT = "Enter search string to filter unresolved requirements (Space to separate terms; '*' for partial matches)";

private static final boolean failureTreeMode = true;
private RequirementWithResourceLabelProvider requirementWithResourceLabelProvider;

public void createControl(final Composite parent) {
FormToolkit toolkit = new FormToolkit(parent.getDisplay());
Expand Down Expand Up @@ -95,9 +96,11 @@ public void createControl(final Composite parent) {

unresolvedViewer = new TreeViewer(treeUnresolved);

unresolvedRequirementsContentProvider = new UnresolvedRequirementsContentProvider();
requirementWithResourceLabelProvider = new RequirementWithResourceLabelProvider();
unresolvedViewer.setLabelProvider(requirementWithResourceLabelProvider);
unresolvedRequirementsContentProvider = new UnresolvedRequirementsContentProvider(
requirementWithResourceLabelProvider);
unresolvedViewer.setContentProvider(unresolvedRequirementsContentProvider);
unresolvedViewer.setLabelProvider(new RequirementWithResourceLabelProvider());
setFailureViewMode();

addSearchbarForUnresolved();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import java.util.LinkedList;
import java.util.List;

import org.bndtools.core.ui.resource.RequirementWithResourceLabelProvider;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.Viewer;
import org.osgi.resource.Requirement;
Expand All @@ -15,6 +16,11 @@
public class UnresolvedRequirementsContentProvider implements ITreeContentProvider {

private String wildcardFilter = null;
private RequirementWithResourceLabelProvider labelProvider;

public UnresolvedRequirementsContentProvider(RequirementWithResourceLabelProvider labelProvider) {
this.labelProvider = labelProvider;
}

@Override
public Object[] getElements(Object inputElement) {
Expand Down Expand Up @@ -96,7 +102,8 @@ private Object[] filter(Object[] array) {
if (obj instanceof Requirement rw) {

for (Glob g : globs) {
if (g.matcher(rw.toString()
if (g.matcher(labelProvider.getLabel(rw)
.toString()
.toLowerCase())
.find()) {
filteredResults.add(obj);
Expand Down

0 comments on commit e83718a

Please sign in to comment.