refactor: automatically determine code style settings priority

...by the main IDE language (IDEA-181423).
This commit is contained in:
nik
2018-03-01 15:55:19 +03:00
parent 73899e13d6
commit 12907a5feb
6 changed files with 16 additions and 27 deletions
@@ -18,8 +18,10 @@ package com.intellij.application.options;
import com.intellij.lang.Language;
import com.intellij.lang.java.JavaLanguage;
import com.intellij.openapi.options.Configurable;
import com.intellij.psi.codeStyle.*;
import com.intellij.util.PlatformUtils;
import com.intellij.psi.codeStyle.CodeStyleSettings;
import com.intellij.psi.codeStyle.CodeStyleSettingsProvider;
import com.intellij.psi.codeStyle.CustomCodeStyleSettings;
import com.intellij.psi.codeStyle.JavaCodeStyleSettings;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -41,11 +43,6 @@ public class JavaCodeStyleSettingsProvider extends CodeStyleSettingsProvider {
};
}
@Override
public DisplayPriority getPriority() {
return PlatformUtils.isIntelliJ() ? DisplayPriority.KEY_LANGUAGE_SETTINGS : DisplayPriority.LANGUAGE_SETTINGS;
}
@Override
public String getConfigurableDisplayName() {
return "Java";
@@ -29,7 +29,6 @@ import com.intellij.psi.PsiFileFactory;
import com.intellij.psi.codeStyle.*;
import com.intellij.psi.util.PsiUtil;
import com.intellij.util.LocalTimeCounter;
import com.intellij.util.PlatformUtils;
import org.jetbrains.annotations.NotNull;
import static com.intellij.application.options.JavaDocFormattingPanel.*;
@@ -256,12 +255,6 @@ public class JavaLanguageCodeStyleSettingsProvider extends LanguageCodeStyleSett
return file;
}
@Override
public DisplayPriority getDisplayPriority() {
if (PlatformUtils.isIntelliJ()) return DisplayPriority.KEY_LANGUAGE_SETTINGS;
return DisplayPriority.LANGUAGE_SETTINGS;
}
@Override
public CommonCodeStyleSettings getDefaultCommonSettings() {
CommonCodeStyleSettings settings = new CommonCodeStyleSettings(JavaLanguage.INSTANCE);
@@ -15,6 +15,7 @@
*/
package com.intellij.psi.codeStyle;
import com.intellij.lang.IdeLanguageCustomization;
import com.intellij.lang.Language;
import com.intellij.openapi.options.Configurable;
import com.intellij.openapi.extensions.ExtensionPointName;
@@ -53,7 +54,8 @@ public abstract class CodeStyleSettingsProvider {
}
public DisplayPriority getPriority() {
return DisplayPriority.LANGUAGE_SETTINGS;
Language mainIdeLanguage = IdeLanguageCustomization.getInstance().getMainIdeLanguage();
return mainIdeLanguage != null && mainIdeLanguage.is(getLanguage()) ? DisplayPriority.KEY_LANGUAGE_SETTINGS : DisplayPriority.LANGUAGE_SETTINGS;
}
/**
@@ -16,6 +16,7 @@
package com.intellij.psi.codeStyle;
import com.intellij.application.options.IndentOptionsEditor;
import com.intellij.lang.IdeLanguageCustomization;
import com.intellij.lang.Language;
import com.intellij.openapi.extensions.ExtensionPointName;
import com.intellij.openapi.extensions.Extensions;
@@ -110,7 +111,8 @@ public abstract class LanguageCodeStyleSettingsProvider {
}
public DisplayPriority getDisplayPriority() {
return DisplayPriority.LANGUAGE_SETTINGS;
Language mainIdeLanguage = IdeLanguageCustomization.getInstance().getMainIdeLanguage();
return mainIdeLanguage != null && mainIdeLanguage.is(getLanguage()) ? DisplayPriority.KEY_LANGUAGE_SETTINGS : DisplayPriority.LANGUAGE_SETTINGS;
}
@NotNull
@@ -17,13 +17,14 @@ package com.jetbrains.python.formatter;
import com.intellij.application.options.CodeStyleAbstractConfigurable;
import com.intellij.application.options.CodeStyleAbstractPanel;
import com.intellij.lang.Language;
import com.intellij.openapi.options.Configurable;
import com.intellij.psi.codeStyle.CodeStyleSettings;
import com.intellij.psi.codeStyle.CodeStyleSettingsProvider;
import com.intellij.psi.codeStyle.CustomCodeStyleSettings;
import com.intellij.psi.codeStyle.DisplayPriority;
import com.intellij.util.PlatformUtils;
import com.jetbrains.python.PythonLanguage;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
/**
* @author yole
@@ -54,8 +55,9 @@ public class PyCodeStyleSettingsProvider extends CodeStyleSettingsProvider {
return "Python";
}
@Nullable
@Override
public DisplayPriority getPriority() {
return PlatformUtils.isPyCharm() ? DisplayPriority.KEY_LANGUAGE_SETTINGS : DisplayPriority.LANGUAGE_SETTINGS;
public Language getLanguage() {
return PythonLanguage.getInstance();
}
}
@@ -21,9 +21,7 @@ import com.intellij.lang.Language;
import com.intellij.openapi.application.ApplicationBundle;
import com.intellij.psi.codeStyle.CodeStyleSettingsCustomizable;
import com.intellij.psi.codeStyle.CommonCodeStyleSettings;
import com.intellij.psi.codeStyle.DisplayPriority;
import com.intellij.psi.codeStyle.LanguageCodeStyleSettingsProvider;
import com.intellij.util.PlatformUtils;
import com.jetbrains.python.PyBundle;
import com.jetbrains.python.PythonLanguage;
import org.jetbrains.annotations.NotNull;
@@ -171,11 +169,6 @@ public class PyLanguageCodeStyleSettingsProvider extends LanguageCodeStyleSettin
return defaultSettings;
}
@Override
public DisplayPriority getDisplayPriority() {
return PlatformUtils.isPyCharm() ? DisplayPriority.KEY_LANGUAGE_SETTINGS : DisplayPriority.LANGUAGE_SETTINGS;
}
@SuppressWarnings("FieldCanBeLocal")
private static final String SPACING_SETTINGS_PREVIEW = "def settings_preview(argument, key=value):\n" +
" dict = {1:'a', 2:'b', 3:'c'}\n" +