test 2nd basic instead of class name completion: groovy

This commit is contained in:
peter
2012-06-28 18:45:42 +02:00
parent 1280a6792b
commit c54741df76
6 changed files with 116 additions and 77 deletions
@@ -5,6 +5,7 @@ import com.intellij.codeInsight.lookup.LookupElement;
import com.intellij.codeInsight.lookup.VariableLookupItem;
import com.intellij.psi.*;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.util.Consumer;
import org.jetbrains.annotations.NotNull;
import java.util.List;
@@ -34,7 +35,12 @@ public class JavaGlobalMemberNameCompletionContributor extends CompletionContrib
return;
}
completeStaticMembers(parameters).processStaticMethodsGlobally(result);
completeStaticMembers(parameters).processStaticMethodsGlobally(result.getPrefixMatcher(), new Consumer<LookupElement>() {
@Override
public void consume(LookupElement element) {
result.addElement(element);
}
});
}
public static StaticMemberProcessor completeStaticMembers(CompletionParameters parameters) {
@@ -46,17 +46,9 @@ public abstract class StaticMemberProcessor {
addIfNotNull(myStaticImportedClasses, psiClass);
}
public void processStaticMethodsGlobally(final CompletionResultSet resultSet) {
public void processStaticMethodsGlobally(PrefixMatcher matcher, Consumer<LookupElement> consumer) {
FeatureUsageTracker.getInstance().triggerFeatureUsed(JavaCompletionFeatures.GLOBAL_MEMBER_NAME);
final Consumer<LookupElement> consumer = new Consumer<LookupElement>() {
@Override
public void consume(LookupElement element) {
resultSet.addElement(element);
}
};
final PrefixMatcher matcher = resultSet.getPrefixMatcher();
final GlobalSearchScope scope = myPosition.getResolveScope();
final PsiShortNamesCache namesCache = PsiShortNamesCache.getInstance(myProject);
for (final String methodName : namesCache.getAllMethodNames()) {