1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-08 18:26:01 +02:00

Search UI fix for Integration builds

This commit is contained in:
Bogdan Gheorghe 2004-04-28 21:04:33 +00:00
parent fe6b0c576b
commit 9cc4fa6e5a
3 changed files with 64 additions and 4 deletions

View file

@ -144,6 +144,13 @@ public class CSearchResult extends AbstractTextSearchResult {
* @see org.eclipse.search.ui.ISearchResult#getLabel()
*/
public String getLabel() {
return cQuery.getLabel();
int matches = getMatchCount();
String label = null;
if (matches == 1)
return cQuery.getSingularLabel();
else
label = cQuery.getPluralLabelPattern();
return MessageFormat.format(label, new Object[]{new Integer(matches)});
}
}

View file

@ -23,7 +23,6 @@ import org.eclipse.core.resources.IMarker;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.TreeViewer;
import org.eclipse.search.internal.ui.text.DelegatingLabelProvider;
import org.eclipse.search.ui.SearchUI;
import org.eclipse.search.ui.text.AbstractTextSearchViewPage;
import org.eclipse.search.ui.text.Match;
@ -93,7 +92,7 @@ public class CSearchResultPage extends AbstractTextSearchViewPage {
*/
protected void configureTreeViewer(TreeViewer viewer) {
//viewer.setSorter(new ViewerSorter());
viewer.setLabelProvider(new CSearchResultLabelProvider());
viewer.setLabelProvider(new CountLabelProvider(this,new CSearchResultLabelProvider()));
_contentProvider= new LevelTreeContentProvider(viewer, _currentGrouping);
viewer.setContentProvider(_contentProvider);
}
@ -101,7 +100,7 @@ public class CSearchResultPage extends AbstractTextSearchViewPage {
* @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#configureTableViewer(org.eclipse.jface.viewers.TableViewer)
*/
protected void configureTableViewer(TableViewer viewer) {
viewer.setLabelProvider(new DelegatingLabelProvider(this, new CSearchResultLabelProvider()));
viewer.setLabelProvider(new CountLabelProvider(this, new CSearchResultLabelProvider()));
_contentProvider=new CSearchTableContentProvider(viewer);
viewer.setContentProvider(_contentProvider);
//setSortOrder(_currentSortOrder);

View file

@ -0,0 +1,54 @@
/*
* Created on Apr 28, 2004
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
package org.eclipse.cdt.internal.ui.search;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.LabelProvider;
import org.eclipse.search.ui.text.AbstractTextSearchViewPage;
import org.eclipse.swt.graphics.Image;
/**
* @author bgheorgh
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class CountLabelProvider extends LabelProvider {
private ILabelProvider fLabelProvider;
private AbstractTextSearchViewPage fPage;
public CountLabelProvider(AbstractTextSearchViewPage page, ILabelProvider inner) {
fPage= page;
fLabelProvider= inner;
}
public ILabelProvider getLabelProvider() {
return fLabelProvider;
}
public Image getImage(Object element) {
return fLabelProvider.getImage(element);
}
public String getText(Object element) {
int matchCount= fPage.getInput().getMatchCount(element);
String text= fLabelProvider.getText(element);
if (matchCount == 0)
return text;
if (matchCount == 1)
return fLabelProvider.getText(element)+ " (" + 1 + " match)"; //$NON-NLS-1$ //$NON-NLS-2$
return text + " (" + matchCount + " matches)"; //$NON-NLS-1$ //$NON-NLS-2$
}
public void dispose() {
fLabelProvider.dispose();
super.dispose();
}
}