package org.simantics.scl.ui.search; import org.eclipse.core.resources.IFile; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.osgi.util.NLS; import org.eclipse.search.ui.ISearchQuery; import org.eclipse.search.ui.text.AbstractTextSearchResult; import org.eclipse.search.ui.text.IEditorMatchAdapter; import org.eclipse.search.ui.text.IFileMatchAdapter; import org.eclipse.search.ui.text.Match; import org.eclipse.ui.IEditorPart; public class SCLSearchResult extends AbstractTextSearchResult implements IEditorMatchAdapter, IFileMatchAdapter { private SCLSearchQuery query; public SCLSearchResult(SCLSearchQuery sclSearchQuery) { this.query = sclSearchQuery; } @Override public String getLabel() { return NLS.bind(Messages.SCLSearchResult_SCLSearchLabelFor , query.getValueName()); } @Override public String getTooltip() { return getLabel(); } @Override public ImageDescriptor getImageDescriptor() { return null; } @Override public ISearchQuery getQuery() { return query; } @Override public Match[] computeContainedMatches(AbstractTextSearchResult result, IFile file) { return null; } @Override public IFile getFile(Object element) { return null; } @Override public boolean isShownInEditor(Match match, IEditorPart editor) { Object element= match.getElement(); // if (element instanceof IJavaElement) { // element= ((IJavaElement) element).getOpenable(); // class file or compilation unit // return element != null && element.equals(editor.getEditorInput().getAdapter(IJavaElement.class)); // } else if (element instanceof IFile) { // return element.equals(editor.getEditorInput().getAdapter(IFile.class)); // } return false; } @Override public Match[] computeContainedMatches(AbstractTextSearchResult result, IEditorPart editor) { // TODO Auto-generated method stub return null; } @Override public IEditorMatchAdapter getEditorMatchAdapter() { return this; } @Override public IFileMatchAdapter getFileMatchAdapter() { return this; } }