X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scl.ui%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fui%2Fsearch%2FSCLSearchResultPage.java;fp=bundles%2Forg.simantics.scl.ui%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fui%2Fsearch%2FSCLSearchResultPage.java;h=f38d8d539ead6f35c863b9c89bcb057c8ee02e53;hp=86b3ea4a359632b6fab1b78fe6f4fa604599a9d1;hb=fb103fb97098e89f8fd059b758454510b323033e;hpb=3d8c21802176627ba3ff724980bf7606bcbb5100 diff --git a/bundles/org.simantics.scl.ui/src/org/simantics/scl/ui/search/SCLSearchResultPage.java b/bundles/org.simantics.scl.ui/src/org/simantics/scl/ui/search/SCLSearchResultPage.java index 86b3ea4a3..f38d8d539 100644 --- a/bundles/org.simantics.scl.ui/src/org/simantics/scl/ui/search/SCLSearchResultPage.java +++ b/bundles/org.simantics.scl.ui/src/org/simantics/scl/ui/search/SCLSearchResultPage.java @@ -1,15 +1,17 @@ package org.simantics.scl.ui.search; +import java.util.Collection; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.Map; +import java.util.Map.Entry; import java.util.Set; import org.eclipse.jface.viewers.AbstractTreeViewer; import org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider; import org.eclipse.jface.viewers.DecorationContext; -import org.eclipse.jface.viewers.IBaseLabelProvider; +import org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider; import org.eclipse.jface.viewers.IColorProvider; import org.eclipse.jface.viewers.ILabelProvider; import org.eclipse.jface.viewers.ILabelProviderListener; @@ -21,7 +23,6 @@ import org.eclipse.jface.viewers.TableViewer; import org.eclipse.jface.viewers.TreeViewer; import org.eclipse.jface.viewers.Viewer; import org.eclipse.jface.viewers.ViewerComparator; -import org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider; import org.eclipse.search.ui.text.AbstractTextSearchResult; import org.eclipse.search.ui.text.AbstractTextSearchViewPage; import org.eclipse.search.ui.text.Match; @@ -31,7 +32,6 @@ import org.eclipse.ui.PartInitException; import org.eclipse.ui.PlatformUI; import org.simantics.scl.compiler.errors.Locations; import org.simantics.scl.compiler.module.debug.SymbolReference; -import org.simantics.scl.ui.editor2.OpenDeclaration; import org.simantics.scl.ui.editor2.OpenSCLDefinition; public class SCLSearchResultPage extends AbstractTextSearchViewPage { @@ -145,6 +145,17 @@ public class SCLSearchResultPage extends AbstractTextSearchViewPage { Set toRemove= new HashSet<>(); Set toUpdate= new HashSet<>(); Map> toAdd= new HashMap<>(); + + // TODO: Clear this for now at this point but probably this has some + // side-effects once nested children can be shown, never? + for (Entry> e : fChildrenMap.entrySet()) { + Collection refs = (Collection) e.getValue(); + refs.forEach(r -> { + remove(toRemove, toUpdate, r); + }); + } + + for (int i= 0; i < updatedElements.length; i++) { if (getPage().getDisplayedMatchCount(updatedElements[i]) > 0) insert(toAdd, toUpdate, updatedElements[i]);