more LookupElementBuilder clients

This commit is contained in:
Peter Gromov
2009-09-03 14:13:39 +04:00
parent 97abd8a9e0
commit 1b67955d8a
3 changed files with 9 additions and 21 deletions
@@ -2,8 +2,8 @@ package com.jetbrains.python.codeInsight;
import com.intellij.codeInsight.TailType;
import com.intellij.codeInsight.completion.*;
import com.intellij.codeInsight.lookup.LookupElementFactory;
import com.intellij.codeInsight.lookup.LookupItem;
import com.intellij.codeInsight.lookup.LookupElementBuilder;
import com.intellij.codeInsight.lookup.TailTypeDecorator;
import com.intellij.lang.ASTNode;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.editor.Editor;
@@ -433,12 +433,8 @@ public class PyKeywordCompletionContributor extends CompletionContributor {
// ======
private static void putKeywords(@NonNls @NotNull String[] words, TailType tail, final CompletionResultSet result) {
final LookupElementFactory factory = LookupElementFactory.getInstance();
for (String s : words) {
LookupItem<String> elt = (LookupItem<String>)factory.createLookupElement(s);
elt.setBold();
elt.setTailType(tail);
result.addElement(elt);
result.addElement(TailTypeDecorator.createDecorator(LookupElementBuilder.create(s).setBold(), tail));
}
}
@@ -16,8 +16,8 @@
package com.jetbrains.python.psi.impl;
import com.intellij.codeInsight.lookup.LookupElementBuilder;
import com.intellij.codeInsight.lookup.LookupElementFactory;
import com.intellij.codeInsight.lookup.LookupItem;
import com.intellij.lang.ASTNode;
import com.intellij.lang.annotation.HighlightSeverity;
import com.intellij.openapi.extensions.Extensions;
@@ -28,9 +28,9 @@ import com.intellij.psi.impl.PsiManagerImpl;
import com.intellij.psi.impl.source.resolve.ResolveCache;
import com.intellij.psi.scope.PsiScopeProcessor;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.util.Icons;
import com.intellij.util.IncorrectOperationException;
import com.intellij.util.ProcessingContext;
import com.intellij.util.Icons;
import com.intellij.util.containers.SortedList;
import com.jetbrains.python.PyElementTypes;
import com.jetbrains.python.PyNames;
@@ -440,9 +440,7 @@ public class PyReferenceExpressionImpl extends PyElementImpl implements PyRefere
PyNamedParameter n_param = par.getAsNamed();
assert n_param != null;
if (! n_param.isKeywordContainer() && ! n_param.isPositionalContainer()) {
LookupItem item = (LookupItem)factory.createLookupElement(n_param.getName() + "=");
item.setIcon(n_param.getIcon(0));
ret.add(item);
ret.add(LookupElementBuilder.create(n_param.getName() + "=").setIcon(n_param.getIcon(0)));
}
}
}
@@ -474,9 +472,7 @@ public class PyReferenceExpressionImpl extends PyElementImpl implements PyRefere
PsiFile f = getContainingFile();
if (f instanceof PyFile) {
for (String name : PyModuleType.getPossibleInstanceMembers()) {
LookupItem item = (LookupItem)factory.createLookupElement(name);
item.setIcon(Icons.FIELD_ICON);
ret.add(item);
ret.add(LookupElementBuilder.create(name).setIcon(Icons.FIELD_ICON));
}
}
@@ -1,8 +1,7 @@
package com.jetbrains.python.psi.types;
import com.intellij.codeInsight.lookup.LookupElement;
import com.intellij.codeInsight.lookup.LookupElementFactory;
import com.intellij.codeInsight.lookup.LookupItem;
import com.intellij.codeInsight.lookup.LookupElementBuilder;
import com.intellij.psi.*;
import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.util.ProcessingContext;
@@ -89,7 +88,6 @@ public class PyModuleType implements PyType { // Maybe make it a PyClassType ref
}
else result.addAll(processor.getResultList());
}
LookupElementFactory maker = LookupElementFactory.getInstance();
for (PsiFileSystemItem pfsi : getSubmodulesList()) {
String s = pfsi.getName();
int pos = s.lastIndexOf('.'); // it may not contain a dot, except in extension; cut it off.
@@ -99,9 +97,7 @@ public class PyModuleType implements PyType { // Maybe make it a PyClassType ref
if (names_already.contains(s)) continue;
else names_already.add(s);
}
LookupItem item = (LookupItem)maker.createLookupElement(pfsi, s);
item.setPresentableText(s); // not raw filename
result.add(item);
result.add(LookupElementBuilder.create(pfsi, s).setPresentableText(s));
}
return result.toArray();
}