mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-18 09:34:34 +07:00
show lambda text in hierarchy tree
This commit is contained in:
+3
-4
@@ -19,13 +19,12 @@ import com.intellij.psi.NavigatablePsiElement;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiFunctionalExpression;
|
||||
import com.intellij.psi.PsiMethod;
|
||||
import com.intellij.psi.presentation.java.ClassPresentationUtil;
|
||||
import com.intellij.psi.util.PsiFormatUtil;
|
||||
import com.intellij.psi.util.PsiFormatUtilBase;
|
||||
|
||||
import javax.swing.*;
|
||||
|
||||
import static com.intellij.ide.util.PsiClassOrFunctionalExpressionListCellRenderer.renderFunctionalExpression;
|
||||
|
||||
public class MethodOrFunctionalExpressionCellRenderer extends PsiElementListCellRenderer<NavigatablePsiElement> {
|
||||
private final MethodCellRenderer myMethodCellRenderer;
|
||||
|
||||
@@ -37,8 +36,8 @@ public class MethodOrFunctionalExpressionCellRenderer extends PsiElementListCell
|
||||
}
|
||||
|
||||
public String getElementText(NavigatablePsiElement element) {
|
||||
return element instanceof PsiMethod ? myMethodCellRenderer.getElementText((PsiMethod)element)
|
||||
: renderFunctionalExpression((PsiFunctionalExpression)element);
|
||||
return element instanceof PsiMethod ? myMethodCellRenderer.getElementText((PsiMethod)element)
|
||||
: ClassPresentationUtil.getFunctionalExpressionPresentation((PsiFunctionalExpression)element, false);
|
||||
}
|
||||
|
||||
protected Icon getIcon(PsiElement element) {
|
||||
|
||||
+2
-17
@@ -15,22 +15,16 @@
|
||||
*/
|
||||
package com.intellij.ide.util;
|
||||
|
||||
import com.intellij.extapi.psi.StubBasedPsiElementBase;
|
||||
import com.intellij.psi.NavigatablePsiElement;
|
||||
import com.intellij.psi.PsiBundle;
|
||||
import com.intellij.psi.PsiClass;
|
||||
import com.intellij.psi.PsiFunctionalExpression;
|
||||
import com.intellij.psi.impl.java.stubs.FunctionalExpressionStub;
|
||||
import com.intellij.psi.presentation.java.ClassPresentationUtil;
|
||||
import com.intellij.psi.stubs.StubElement;
|
||||
import com.intellij.psi.util.PsiExpressionTrimRenderer;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class PsiClassOrFunctionalExpressionListCellRenderer extends PsiElementListCellRenderer<NavigatablePsiElement> {
|
||||
@Override
|
||||
public String getElementText(NavigatablePsiElement element) {
|
||||
return element instanceof PsiClass ? ClassPresentationUtil.getNameForClass((PsiClass)element, false)
|
||||
: renderFunctionalExpression((PsiFunctionalExpression)element);
|
||||
return element instanceof PsiClass ? ClassPresentationUtil.getNameForClass((PsiClass)element, false)
|
||||
: ClassPresentationUtil.getFunctionalExpressionPresentation((PsiFunctionalExpression)element, false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -42,13 +36,4 @@ public class PsiClassOrFunctionalExpressionListCellRenderer extends PsiElementLi
|
||||
protected int getIconFlags() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
static String renderFunctionalExpression(@NotNull PsiFunctionalExpression expression) {
|
||||
final StubElement stub = ((StubBasedPsiElementBase<?>)expression).getGreenStub();
|
||||
final String lambdaText = stub instanceof FunctionalExpressionStub
|
||||
? ((FunctionalExpressionStub)stub).getPresentableText()
|
||||
: PsiExpressionTrimRenderer.render(expression);
|
||||
return PsiBundle.message("class.context.display", lambdaText, ClassPresentationUtil.getContextName(expression, false));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user