diff options
Diffstat (limited to 'python/src/com/jetbrains/python/structureView/PyStructureViewElement.java')
-rw-r--r-- | python/src/com/jetbrains/python/structureView/PyStructureViewElement.java | 33 |
1 files changed, 6 insertions, 27 deletions
diff --git a/python/src/com/jetbrains/python/structureView/PyStructureViewElement.java b/python/src/com/jetbrains/python/structureView/PyStructureViewElement.java index 93c44f7f2a17..de9f7bf5a5ca 100644 --- a/python/src/com/jetbrains/python/structureView/PyStructureViewElement.java +++ b/python/src/com/jetbrains/python/structureView/PyStructureViewElement.java @@ -23,7 +23,6 @@ import com.intellij.openapi.editor.colors.TextAttributesKey; import com.intellij.psi.PsiElement; import com.intellij.psi.util.PsiTreeUtil; import com.intellij.ui.LayeredIcon; -import com.intellij.util.Function; import com.jetbrains.python.PyNames; import com.jetbrains.python.psi.*; import icons.PythonIcons; @@ -33,9 +32,6 @@ import org.jetbrains.annotations.Nullable; import javax.swing.*; import java.util.*; -import static com.intellij.openapi.util.text.StringUtil.join; -import static com.intellij.openapi.util.text.StringUtil.notNullize; - /** * Handles nodes in Structure View. * @author yole @@ -237,32 +233,15 @@ public class PyStructureViewElement implements StructureViewTreeElement { @NotNull @Override public ItemPresentation getPresentation() { + final ItemPresentation presentation = myElement.getPresentation(); return new ColoredItemPresentation() { + @Nullable + @Override public String getPresentableText() { - final String unnamed = "<unnamed>"; - if (myElement instanceof PyFunction) { - PyParameterList argList = ((PyFunction) myElement).getParameterList(); - StringBuilder result = new StringBuilder(notNullize(myElement.getName(), unnamed)); - result.append(argList.getPresentableText(true)); - return result.toString(); - } - else if (myElement instanceof PyClass && myElement.isValid()) { - PyClass c = (PyClass) myElement; - StringBuilder result = new StringBuilder(notNullize(c.getName(), unnamed)); - PyExpression[] superClassExpressions = c.getSuperClassExpressions(); - if (superClassExpressions.length > 0) { - result.append("("); - result.append(join(Arrays.asList(superClassExpressions), new Function<PyExpression, String>() { - public String fun(PyExpression expr) { - String name = expr.getText(); - return notNullize(name, unnamed); - } - }, ", ")); - result.append(")"); - } - return result.toString(); + if (myElement instanceof PyFile) { + return myElement.getName(); } - return notNullize(myElement.getName(), unnamed); + return presentation != null ? presentation.getPresentableText() : PyNames.UNNAMED_ELEMENT; } @Nullable |