### Eclipse Workspace Patch 1.0 #P org.eclipse.jdt.ui Index: ui/org/eclipse/jdt/internal/ui/search/JavaSearchQuery.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/search/JavaSearchQuery.java,v retrieving revision 1.42 diff -u -r1.42 JavaSearchQuery.java --- ui/org/eclipse/jdt/internal/ui/search/JavaSearchQuery.java 10 Apr 2006 10:03:58 -0000 1.42 +++ ui/org/eclipse/jdt/internal/ui/search/JavaSearchQuery.java 18 May 2006 14:37:41 -0000 @@ -124,7 +124,7 @@ } else { PatternQuerySpecification patternSpec = (PatternQuerySpecification) fPatternData; stringPattern= patternSpec.getPattern(); - int matchMode= getMatchMode(stringPattern) | SearchPattern.R_ERASURE_MATCH; + int matchMode = patternSpec.matchMode(); if (patternSpec.isCaseSensitive()) matchMode |= SearchPattern.R_CASE_SENSITIVE; pattern= SearchPattern.createPattern(patternSpec.getPattern(), patternSpec.getSearchFor(), patternSpec.getLimitTo(), matchMode); Index: ui/org/eclipse/jdt/internal/ui/search/JavaSearchPage.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/search/JavaSearchPage.java,v retrieving revision 1.125 diff -u -r1.125 JavaSearchPage.java --- ui/org/eclipse/jdt/internal/ui/search/JavaSearchPage.java 4 Apr 2006 14:44:41 -0000 1.125 +++ ui/org/eclipse/jdt/internal/ui/search/JavaSearchPage.java 18 May 2006 14:37:41 -0000 @@ -82,25 +82,31 @@ private static class SearchPatternData { private int searchFor; private int limitTo; + private int matchMode; private String pattern; private boolean isCaseSensitive; private IJavaElement javaElement; - private boolean includeJRE; + private int includeMask; private int scope; private IWorkingSet[] workingSets; - public SearchPatternData(int searchFor, int limitTo, boolean isCaseSensitive, String pattern, IJavaElement element, boolean includeJRE) { - this(searchFor, limitTo, pattern, isCaseSensitive, element, ISearchPageContainer.WORKSPACE_SCOPE, null, includeJRE); + public SearchPatternData(int searchFor, int limitTo, boolean isCaseSensitive, String pattern, IJavaElement element, int includeMask) { + this(searchFor, limitTo, SearchPattern.R_EXACT_MATCH, pattern, isCaseSensitive, element, ISearchPageContainer.WORKSPACE_SCOPE, null, includeMask); } - public SearchPatternData(int searchFor, int limitTo, String pattern, boolean isCaseSensitive, IJavaElement element, int scope, IWorkingSet[] workingSets, boolean includeJRE) { + public SearchPatternData(int searchFor, int limitTo, int matchMode, boolean isCaseSensitive, String pattern, IJavaElement element, int includeMask) { + this(searchFor, limitTo, matchMode, pattern, isCaseSensitive, element, ISearchPageContainer.WORKSPACE_SCOPE, null, includeMask); + } + + public SearchPatternData(int searchFor, int limitTo, int matchMode, String pattern, boolean isCaseSensitive, IJavaElement element, int scope, IWorkingSet[] workingSets, int includeMask) { this.searchFor= searchFor; this.limitTo= limitTo; + this.matchMode = matchMode; this.pattern= pattern; this.isCaseSensitive= isCaseSensitive; this.scope= scope; this.workingSets= workingSets; - this.includeJRE= includeJRE; + this.includeMask= includeMask; setJavaElement(element); } @@ -117,6 +123,10 @@ return javaElement; } + public int getIncludeMask() { + return includeMask; + } + public int getLimitTo() { return limitTo; } @@ -133,19 +143,21 @@ return searchFor; } + public int getMatchMode() { + return this.matchMode; + } + public IWorkingSet[] getWorkingSets() { return workingSets; } - public boolean includesJRE() { - return includeJRE; - } - public void store(IDialogSettings settings) { settings.put("searchFor", searchFor); //$NON-NLS-1$ settings.put("scope", scope); //$NON-NLS-1$ settings.put("pattern", pattern); //$NON-NLS-1$ settings.put("limitTo", limitTo); //$NON-NLS-1$ + settings.put("includeMask", includeMask); //$NON-NLS-1$ + settings.put("matchMode", this.matchMode); //$NON-NLS-1$ settings.put("javaElement", javaElement != null ? javaElement.getHandleIdentifier() : ""); //$NON-NLS-1$ //$NON-NLS-2$ settings.put("isCaseSensitive", isCaseSensitive); //$NON-NLS-1$ if (workingSets != null) { @@ -157,7 +169,6 @@ } else { settings.put("workingSets", new String[0]); //$NON-NLS-1$ } - settings.put("includeJRE", includeJRE); //$NON-NLS-1$ } public static SearchPatternData create(IDialogSettings settings) { @@ -190,15 +201,10 @@ int searchFor= settings.getInt("searchFor"); //$NON-NLS-1$ int scope= settings.getInt("scope"); //$NON-NLS-1$ int limitTo= settings.getInt("limitTo"); //$NON-NLS-1$ + int includeMask= settings.getInt("includeMask"); //$NON-NLS-1$ + int matchMode= settings.getInt("matchMode"); //$NON-NLS-1$ boolean isCaseSensitive= settings.getBoolean("isCaseSensitive"); //$NON-NLS-1$ - - boolean includeJRE; - if (settings.get("includeJRE") != null) { //$NON-NLS-1$ - includeJRE= settings.getBoolean("includeJRE"); //$NON-NLS-1$ - } else { - includeJRE= forceIncludeJRE(limitTo); - } - return new SearchPatternData(searchFor, limitTo, pattern, isCaseSensitive, elem, scope, workingSets, includeJRE); + return new SearchPatternData(searchFor, limitTo, matchMode, pattern, isCaseSensitive, elem, scope, workingSets, includeMask); } catch (NumberFormatException e) { return null; } @@ -229,14 +235,21 @@ private Combo fPattern; private ISearchPageContainer fContainer; private Button fCaseSensitive; - + private Button[] fSearchFor; private String[] fSearchForText= { SearchMessages.SearchPage_searchFor_type, SearchMessages.SearchPage_searchFor_method, SearchMessages.SearchPage_searchFor_package, SearchMessages.SearchPage_searchFor_constructor, - SearchMessages.SearchPage_searchFor_field}; + SearchMessages.SearchPage_searchFor_field, + SearchMessages.SearchPage_searchFor_class, + SearchMessages.SearchPage_searchFor_interface, + SearchMessages.SearchPage_searchFor_enum, + SearchMessages.SearchPage_searchFor_annotation, + SearchMessages.SearchPage_searchFor_class_enum, + SearchMessages.SearchPage_searchFor_class_interface, + }; private Button[] fLimitTo; private String[] fLimitToText= { @@ -247,7 +260,42 @@ SearchMessages.SearchPage_limitTo_readReferences, SearchMessages.SearchPage_limitTo_writeReferences}; - private Button fIncludeJRECheckbox; +// private Button fIncludeJRECheckbox; + Button[] includeMaskButtons; + String[] includeMaskText = { + SearchMessages.SearchPage_includeMask_sources, + SearchMessages.SearchPage_includeMask_applicationLibraries, + SearchMessages.SearchPage_includeMask_systemLibraries, + SearchMessages.SearchPage_includeMask_referencedProjects + }; + final static int DEFAULT_INCLUDE_MASK = IJavaSearchScope.SOURCES | IJavaSearchScope.APPLICATION_LIBRARIES; // | IJavaSearchScope.REFERENCED_PROJECTS; + final static int FULL_INCLUDE_MASK = DEFAULT_INCLUDE_MASK | IJavaSearchScope.SYSTEM_LIBRARIES; + + Button[] matchMode; + String[] matchModeText= { + SearchMessages.SearchPage_matchMode_exact, + SearchMessages.SearchPage_matchMode_prefix, + SearchMessages.SearchPage_matchMode_pattern, + SearchMessages.SearchPage_matchMode_regexp, + SearchMessages.SearchPage_matchMode_erasure, + SearchMessages.SearchPage_matchMode_equivalent, + SearchMessages.SearchPage_matchMode_full, + SearchMessages.SearchPage_matchMode_camelcase, + }; + final static int[] MATCH_MODE_VALUES = { + SearchPattern.R_EXACT_MATCH, + SearchPattern.R_PREFIX_MATCH, + SearchPattern.R_PATTERN_MATCH, + SearchPattern.R_REGEXP_MATCH, + SearchPattern.R_ERASURE_MATCH, + SearchPattern.R_EQUIVALENT_MATCH, + SearchPattern.R_FULL_MATCH, + SearchPattern.R_CAMELCASE_MATCH, + }; + + private Button fSearchJRE; + private static final int INDEX_REFERENCES= 2; + private static final int INDEX_ALL= 3; /** * @@ -270,7 +318,9 @@ IJavaSearchScope scope= null; String scopeDescription= ""; //$NON-NLS-1$ - boolean includeJRE= data.includesJRE(); + int includeMask = data.getIncludeMask(); +// boolean includeJRE= data.includesJRE(); + boolean includeJRE= (includeMask & IJavaSearchScope.SYSTEM_LIBRARIES) != 0; JavaSearchScopeFactory factory= JavaSearchScopeFactory.getInstance(); switch (getContainer().getSelectedScope()) { @@ -285,8 +335,8 @@ break; case ISearchPageContainer.SELECTED_PROJECTS_SCOPE: { String[] projectNames= getContainer().getSelectedProjectNames(); - scope= factory.createJavaProjectSearchScope(projectNames, includeJRE); - scopeDescription= factory.getProjectScopeDescription(projectNames, includeJRE); + scope= factory.createJavaProjectSearchScope(projectNames, getIncludeMask()); + scopeDescription= factory.getProjectScopeDescription(projectNames, getIncludeMask()); break; } case ISearchPageContainer.WORKING_SET_SCOPE: { @@ -306,7 +356,7 @@ SearchUtil.warnIfBinaryConstant(data.getJavaElement(), getShell()); querySpec= new ElementQuerySpecification(data.getJavaElement(), data.getLimitTo(), scope, scopeDescription); } else { - querySpec= new PatternQuerySpecification(data.getPattern(), data.getSearchFor(), data.isCaseSensitive(), data.getLimitTo(), scope, scopeDescription); + querySpec= new PatternQuerySpecification(data.getPattern(), data.getSearchFor(), data.getMatchMode(), data.isCaseSensitive(), data.getLimitTo(), scope, scopeDescription); data.setJavaElement(null); } @@ -315,6 +365,16 @@ return true; } + int getIncludeMask() { + int mask = 0; + for (int i= 0; i < includeMaskButtons.length; i++) { + if (includeMaskButtons[i].getSelection()) { + mask |= 1 << i; + } + } + return mask; + } + private int getLimitTo() { for (int i= 0; i < fLimitTo.length; i++) { if (fLimitTo[i].getSelection()) @@ -323,8 +383,16 @@ return -1; } + private void setIncludeMask(int includeMask) { + + for (int i= 0; i < includeMaskButtons.length; i++) { + int bit = includeMask & (1 << i); + includeMaskButtons[i].setSelection(bit != 0); + } + } + private void setLimitTo(int searchFor, int limitTo) { - if (!(searchFor == TYPE || searchFor == INTERFACE) && limitTo == IMPLEMENTORS) { + if (!(searchFor == TYPE || searchFor == INTERFACE || searchFor == CLASS) && limitTo == IMPLEMENTORS) { limitTo= REFERENCES; } @@ -337,7 +405,7 @@ } fLimitTo[DECLARATIONS].setEnabled(true); - fLimitTo[IMPLEMENTORS].setEnabled(searchFor == INTERFACE || searchFor == TYPE); + fLimitTo[IMPLEMENTORS].setEnabled(searchFor == INTERFACE || searchFor == TYPE || searchFor == CLASS); fLimitTo[REFERENCES].setEnabled(true); fLimitTo[ALL_OCCURRENCES].setEnabled(true); fLimitTo[READ_ACCESSES].setEnabled(searchFor == FIELD); @@ -363,6 +431,16 @@ return -1; } + private int getMatchMode() { + int mode = SearchPattern.R_EXACT_MATCH; + for (int i= 0, l=this.matchMode.length; i 0) { - return new SearchPatternData(TYPE, REFERENCES, fIsCaseSensitive, selectedText.substring(0, i), null, true); + return new SearchPatternData(TYPE, REFERENCES, fIsCaseSensitive, selectedText.substring(0, i), null, FULL_INCLUDE_MASK); } } return null; @@ -829,7 +968,7 @@ if (!fPreviousSearchPatterns.isEmpty()) { return (SearchPatternData) fPreviousSearchPatterns.get(0); } - return new SearchPatternData(TYPE, REFERENCES, fIsCaseSensitive, "", null, false); //$NON-NLS-1$ + return new SearchPatternData(TYPE, REFERENCES, fIsCaseSensitive, "", null, DEFAULT_INCLUDE_MASK); //$NON-NLS-1$ } /* Index: ui/org/eclipse/jdt/internal/ui/search/SearchMessages.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/search/SearchMessages.java,v retrieving revision 1.17 diff -u -r1.17 SearchMessages.java --- ui/org/eclipse/jdt/internal/ui/search/SearchMessages.java 4 Apr 2006 14:44:41 -0000 1.17 +++ ui/org/eclipse/jdt/internal/ui/search/SearchMessages.java 18 May 2006 14:37:42 -0000 @@ -56,6 +56,21 @@ public static String SearchPage_searchFor_field; public static String SearchPage_searchFor_package; public static String SearchPage_searchFor_constructor; + public static String SearchPage_searchFor_class; + public static String SearchPage_searchFor_interface; + public static String SearchPage_searchFor_enum; + public static String SearchPage_searchFor_annotation; + public static String SearchPage_searchFor_class_enum; + public static String SearchPage_searchFor_class_interface; + public static String SearchPage_matchMode_label; + public static String SearchPage_matchMode_exact; + public static String SearchPage_matchMode_prefix; + public static String SearchPage_matchMode_pattern; + public static String SearchPage_matchMode_regexp; + public static String SearchPage_matchMode_erasure; + public static String SearchPage_matchMode_equivalent; + public static String SearchPage_matchMode_full; + public static String SearchPage_matchMode_camelcase; public static String SearchPage_limitTo_label; public static String SearchPage_limitTo_declarations; public static String SearchPage_limitTo_implementors; @@ -65,7 +80,12 @@ public static String SearchPage_limitTo_writeReferences; public static String SearchPage_expression_label; public static String SearchPage_expression_caseSensitive; - public static String SearchPage_searchJRE_label; +// public static String SearchPage_searchJRE_label; + public static String SearchPage_includeMask_label; + public static String SearchPage_includeMask_sources; + public static String SearchPage_includeMask_applicationLibraries; + public static String SearchPage_includeMask_systemLibraries; + public static String SearchPage_includeMask_referencedProjects; public static String SearchUtil_workingSetConcatenation; public static String Search_FindDeclarationAction_label; public static String Search_FindDeclarationAction_tooltip; @@ -161,10 +181,13 @@ public static String DoubleSelectionScopeNoJRE; public static String EnclosingProjectsScope; public static String EnclosingProjectsScopeNoJRE; + public static String EnclosingProjectsScopeMask; public static String EnclosingProjectsScope2; public static String EnclosingProjectsScope2NoJRE; + public static String EnclosingProjectsScope2Mask; public static String EnclosingProjectScope; public static String EnclosingProjectScopeNoJRE; + public static String EnclosingProjectScopeMask; public static String ProjectScope; public static String ProjectScopeNoJRE; public static String HierarchyScope; Index: ui/org/eclipse/jdt/internal/ui/search/JavaSearchScopeFactory.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/search/JavaSearchScopeFactory.java,v retrieving revision 1.35 diff -u -r1.35 JavaSearchScopeFactory.java --- ui/org/eclipse/jdt/internal/ui/search/JavaSearchScopeFactory.java 4 Apr 2006 14:44:41 -0000 1.35 +++ ui/org/eclipse/jdt/internal/ui/search/JavaSearchScopeFactory.java 18 May 2006 14:37:41 -0000 @@ -119,8 +119,12 @@ public IJavaSearchScope createJavaSearchScope(ISelection selection, boolean includeJRE) { return createJavaSearchScope(getJavaElements(selection), includeJRE); } - + public IJavaSearchScope createJavaProjectSearchScope(String[] projectNames, boolean includeJRE) { + return createJavaProjectSearchScope(projectNames, getSearchFlags(includeJRE)); + } + + public IJavaSearchScope createJavaProjectSearchScope(String[] projectNames, int includeMask) { ArrayList res= new ArrayList(); IWorkspaceRoot root= ResourcesPlugin.getWorkspace().getRoot(); for (int i= 0; i < projectNames.length; i++) { @@ -129,7 +133,7 @@ res.add(project); } } - return createJavaSearchScope(res, includeJRE); + return createJavaSearchScope(res, includeMask); } public IJavaSearchScope createJavaProjectSearchScope(IJavaProject project, boolean includeJRE) { @@ -169,6 +173,35 @@ return scopeDescription; } + public String getProjectScopeDescription(String[] projectNames, int includeMask) { + if (projectNames.length == 0) { + return SearchMessages.JavaSearchScopeFactory_undefined_projects; + } + String scopeDescription; + StringBuffer buffer=new StringBuffer(); + if ((includeMask & IJavaSearchScope.SOURCES) != 0) buffer.append("Src"); //$NON-NLS-1$ + if ((includeMask & IJavaSearchScope.APPLICATION_LIBRARIES) != 0) { + if (buffer.length()>0) buffer.append(','); + buffer.append("App"); //$NON-NLS-1$ + } + if ((includeMask & IJavaSearchScope.SYSTEM_LIBRARIES) != 0) { + if (buffer.length()>0) buffer.append(','); + buffer.append("Sys"); //$NON-NLS-1$ + } + if ((includeMask & IJavaSearchScope.REFERENCED_PROJECTS) != 0) { + if (buffer.length()>0) buffer.append(','); + buffer.append("Ref"); //$NON-NLS-1$ + } + if (projectNames.length == 1) { + scopeDescription= Messages.format(SearchMessages.EnclosingProjectScopeMask, new String[] { projectNames[0], buffer.toString()}); + } else if (projectNames.length == 2) { + scopeDescription= Messages.format(SearchMessages.EnclosingProjectsScope2Mask, new String[] { projectNames[0], projectNames[1], buffer.toString()}); + } else { + scopeDescription= Messages.format(SearchMessages.EnclosingProjectsScopeMask, new String[] { projectNames[0], projectNames[1], buffer.toString()}); + } + return scopeDescription; + } + public String getProjectScopeDescription(IJavaProject project, boolean includeJRE) { if (includeJRE) { return Messages.format(SearchMessages.ProjectScope, project.getElementName()); @@ -280,10 +313,14 @@ } private IJavaSearchScope createJavaSearchScope(Collection javaElements, boolean includeJRE) { + return createJavaSearchScope(javaElements, getSearchFlags(includeJRE)); + } + + private IJavaSearchScope createJavaSearchScope(Collection javaElements, int includeMask) { if (javaElements.isEmpty()) return EMPTY_SCOPE; IJavaElement[] elementArray= (IJavaElement[]) javaElements.toArray(new IJavaElement[javaElements.size()]); - return SearchEngine.createJavaSearchScope(elementArray, getSearchFlags(includeJRE)); + return SearchEngine.createJavaSearchScope(elementArray, includeMask); } private static int getSearchFlags(boolean includeJRE) { Index: ui/org/eclipse/jdt/internal/ui/search/SearchMessages.properties =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/search/SearchMessages.properties,v retrieving revision 1.113 diff -u -r1.113 SearchMessages.properties --- ui/org/eclipse/jdt/internal/ui/search/SearchMessages.properties 10 Apr 2006 10:03:58 -0000 1.113 +++ ui/org/eclipse/jdt/internal/ui/search/SearchMessages.properties 18 May 2006 14:37:43 -0000 @@ -48,6 +48,22 @@ SearchPage_searchFor_field= &Field SearchPage_searchFor_package= &Package SearchPage_searchFor_constructor= Co&nstructor +SearchPage_searchFor_class= &Class +SearchPage_searchFor_interface= &Interface +SearchPage_searchFor_enum= &Enum +SearchPage_searchFor_annotation= &Annotation +SearchPage_searchFor_class_enum= Class+En&um +SearchPage_searchFor_class_interface= Class+Inte&rface + +SearchPage_matchMode_label= Match Mode +SearchPage_matchMode_exact= &Exact +SearchPage_matchMode_prefix= &Prefix +SearchPage_matchMode_pattern= Pa&ttern +SearchPage_matchMode_regexp= &Regexp +SearchPage_matchMode_erasure= Eras&ure +SearchPage_matchMode_equivalent= E&quivalent +SearchPage_matchMode_full= &Full +SearchPage_matchMode_camelcase= &Camel Case SearchPage_limitTo_label= Limit To SearchPage_limitTo_declarations= Dec&larations @@ -60,7 +76,12 @@ SearchPage_expression_label= Se&arch string (* = any string, ? = any character): SearchPage_expression_caseSensitive= Case sens&itive -SearchPage_searchJRE_label=Search the JRE s&ystem libraries +#SearchPage_searchJRE_label=Search the JRE s&ystem libraries +SearchPage_includeMask_label=Search include mask +SearchPage_includeMask_sources=Sources +SearchPage_includeMask_applicationLibraries=Application Libraries +SearchPage_includeMask_systemLibraries=System Libraries +SearchPage_includeMask_referencedProjects=Referenced Projects # Concatenate two working set names e.g. "Source, Lib" SearchUtil_workingSetConcatenation= {0}, {1} @@ -199,10 +220,13 @@ EnclosingProjectsScope=projects ''{0}'', ''{1}'', ... EnclosingProjectsScopeNoJRE=projects ''{0}'', ''{1}'', ... (no JRE) +EnclosingProjectsScopeMask=projects ''{0}'', ''{1}'', ... ({2}) EnclosingProjectScope=project ''{0}'' EnclosingProjectScopeNoJRE=project ''{0}'' (no JRE) +EnclosingProjectScopeMask=project ''{0}'' ({1}) EnclosingProjectsScope2=projects ''{0}'', ''{1}'' EnclosingProjectsScope2NoJRE=projects ''{0}'', ''{1}'' (no JRE) +EnclosingProjectsScope2Mask=projects ''{0}'', ''{1}'' ({2}) ProjectScope= project ''{0}'' ProjectScopeNoJRE= project ''{0}'' (no JRE) Index: ui/org/eclipse/jdt/ui/search/PatternQuerySpecification.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/search/PatternQuerySpecification.java,v retrieving revision 1.8 diff -u -r1.8 PatternQuerySpecification.java --- ui/org/eclipse/jdt/ui/search/PatternQuerySpecification.java 17 Jun 2005 15:51:59 -0000 1.8 +++ ui/org/eclipse/jdt/ui/search/PatternQuerySpecification.java 18 May 2006 14:37:43 -0000 @@ -28,6 +28,7 @@ public class PatternQuerySpecification extends QuerySpecification { private String fPattern; private int fSearchFor; + private int matchMode; private boolean fCaseSensitive; /** @@ -46,11 +47,12 @@ * * @see org.eclipse.jdt.core.search.SearchPattern#createPattern(java.lang.String, int, int, int) */ - public PatternQuerySpecification(String pattern, int searchFor, boolean caseSensitive, int limitTo, IJavaSearchScope scope, String scopeDescription) { + public PatternQuerySpecification(String pattern, int searchFor, int mode, boolean caseSensitive, int limitTo, IJavaSearchScope scope, String scopeDescription) { super(limitTo, scope, scopeDescription); fPattern= pattern; fSearchFor= searchFor; fCaseSensitive= caseSensitive; + this.matchMode= mode; } /** @@ -60,6 +62,9 @@ public boolean isCaseSensitive() { return fCaseSensitive; } + public int matchMode() { + return this.matchMode; + } /** * Returns the search pattern the query should search for. #P org.eclipse.jdt.ui.tests Index: ui/org/eclipse/jdt/ui/tests/search/SearchTestHelper.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/search/SearchTestHelper.java,v retrieving revision 1.6 diff -u -r1.6 SearchTestHelper.java --- ui/org/eclipse/jdt/ui/tests/search/SearchTestHelper.java 28 Mar 2006 16:57:25 -0000 1.6 +++ ui/org/eclipse/jdt/ui/tests/search/SearchTestHelper.java 18 May 2006 14:37:49 -0000 @@ -17,6 +17,7 @@ import org.eclipse.jdt.core.IType; import org.eclipse.jdt.core.JavaModelException; import org.eclipse.jdt.core.search.IJavaSearchConstants; +import org.eclipse.jdt.core.search.SearchPattern; import org.eclipse.jdt.ui.search.ElementQuerySpecification; import org.eclipse.jdt.ui.search.PatternQuerySpecification; @@ -55,7 +56,7 @@ } static JavaSearchQuery runMethodRefQuery(String methodName, String[] parameterTypes) throws JavaModelException { - JavaSearchQuery query= new JavaSearchQuery(new PatternQuerySpecification(methodName, IJavaSearchConstants.METHOD, true, IJavaSearchConstants.REFERENCES, JavaSearchScopeFactory.getInstance().createWorkspaceScope(true), "workspace scope")); + JavaSearchQuery query= new JavaSearchQuery(new PatternQuerySpecification(methodName, IJavaSearchConstants.METHOD, SearchPattern.R_EXACT_MATCH, true, IJavaSearchConstants.REFERENCES, JavaSearchScopeFactory.getInstance().createWorkspaceScope(true), "workspace scope")); NewSearchUI.runQueryInForeground(null, query); return query; }