mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
java folding: use unicode right arrow for closures, move deps to the right place
This commit is contained in:
@@ -18,13 +18,18 @@ package com.intellij.codeInsight.folding.impl;
|
||||
import com.intellij.codeInsight.ExpectedTypeInfo;
|
||||
import com.intellij.codeInsight.ExpectedTypesProvider;
|
||||
import com.intellij.lang.java.JavaLanguage;
|
||||
import com.intellij.openapi.editor.colors.EditorColorsManager;
|
||||
import com.intellij.openapi.editor.colors.EditorFontType;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.psi.*;
|
||||
import com.intellij.psi.codeStyle.CodeStyleSettings;
|
||||
import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
|
||||
import com.intellij.util.FontUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.awt.*;
|
||||
|
||||
public class JavaFoldingBuilder extends JavaFoldingBuilderBase {
|
||||
|
||||
@Override
|
||||
protected boolean isBelowRightMargin(Project project, int lineLength) {
|
||||
final CodeStyleSettings settings = CodeStyleSettingsManager.getSettings(project);
|
||||
@@ -41,5 +46,12 @@ public class JavaFoldingBuilder extends JavaFoldingBuilderBase {
|
||||
ExpectedTypeInfo[] types = ExpectedTypesProvider.getExpectedTypes(expression, false);
|
||||
return types.length != 1 || !types[0].getType().equals(anonymousClass.getBaseClassType());
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
protected String rightArrow() {
|
||||
Font font = EditorColorsManager.getInstance().getGlobalScheme().getFont(EditorFontType.PLAIN);
|
||||
return FontUtil.rightArrow(font);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+6
-3
@@ -833,9 +833,7 @@ public abstract class JavaFoldingBuilderBase extends CustomFoldingBuilder implem
|
||||
return psiParameter.getName();
|
||||
}
|
||||
}, ", ");
|
||||
//Font font = EditorColorsManager.getInstance().getGlobalScheme().getFont(EditorFontType.PLAIN);
|
||||
//String arrow = FontUtil.rightArrow(font);
|
||||
String arrow = "->";
|
||||
String arrow = rightArrow();
|
||||
@NonNls final String lambdas = type + methodName + "(" + params + ") " + arrow + " {";
|
||||
|
||||
final int closureStart = expression.getTextRange().getStartOffset();
|
||||
@@ -867,6 +865,11 @@ public abstract class JavaFoldingBuilderBase extends CustomFoldingBuilder implem
|
||||
return isClosure;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
protected String rightArrow() {
|
||||
return "->";
|
||||
}
|
||||
|
||||
private boolean fitsRightMargin(PsiElement element, Document document, int foldingStart, int foldingEnd, int collapsedLength) {
|
||||
final int beforeLength = foldingStart - document.getLineStartOffset(document.getLineNumber(foldingStart));
|
||||
final int afterLength = document.getLineEndOffset(document.getLineNumber(foldingEnd)) - foldingEnd;
|
||||
|
||||
Reference in New Issue
Block a user