From 1b67955d8a31d892a86a9ddfe85bc07e9a75ed8f Mon Sep 17 00:00:00 2001 From: Peter Gromov Date: Thu, 3 Sep 2009 14:13:39 +0400 Subject: [PATCH] more LookupElementBuilder clients --- .../codeInsight/PyKeywordCompletionContributor.java | 10 +++------- .../python/psi/impl/PyReferenceExpressionImpl.java | 12 ++++-------- .../com/jetbrains/python/psi/types/PyModuleType.java | 8 ++------ 3 files changed, 9 insertions(+), 21 deletions(-) diff --git a/python/src/com/jetbrains/python/codeInsight/PyKeywordCompletionContributor.java b/python/src/com/jetbrains/python/codeInsight/PyKeywordCompletionContributor.java index 4ac61dc2a19d..511907165453 100644 --- a/python/src/com/jetbrains/python/codeInsight/PyKeywordCompletionContributor.java +++ b/python/src/com/jetbrains/python/codeInsight/PyKeywordCompletionContributor.java @@ -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 elt = (LookupItem)factory.createLookupElement(s); - elt.setBold(); - elt.setTailType(tail); - result.addElement(elt); + result.addElement(TailTypeDecorator.createDecorator(LookupElementBuilder.create(s).setBold(), tail)); } } diff --git a/python/src/com/jetbrains/python/psi/impl/PyReferenceExpressionImpl.java b/python/src/com/jetbrains/python/psi/impl/PyReferenceExpressionImpl.java index 155a72dd9540..c5659986d3bc 100644 --- a/python/src/com/jetbrains/python/psi/impl/PyReferenceExpressionImpl.java +++ b/python/src/com/jetbrains/python/psi/impl/PyReferenceExpressionImpl.java @@ -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)); } } diff --git a/python/src/com/jetbrains/python/psi/types/PyModuleType.java b/python/src/com/jetbrains/python/psi/types/PyModuleType.java index 204df513931a..d71918ed8bcd 100644 --- a/python/src/com/jetbrains/python/psi/types/PyModuleType.java +++ b/python/src/com/jetbrains/python/psi/types/PyModuleType.java @@ -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(); }