package com.intellij.ide;
import com.intellij.application.options.codeStyle.LanguageCodeStyleSettingsProvider;
-import com.intellij.openapi.fileTypes.LanguageFileType;
-import com.intellij.openapi.fileTypes.StdFileTypes;
+import com.intellij.lang.Language;
+import com.intellij.lang.StdLanguages;
import org.jetbrains.annotations.NotNull;
/**
*/
public class JavaLanguageCodeStyleSettingsProvider extends LanguageCodeStyleSettingsProvider {
@Override
- public LanguageFileType getLanguageFileType() {
- return StdFileTypes.JAVA;
+ public Language getLanguage() {
+ return StdLanguages.JAVA;
}
@Override
import com.intellij.application.options.ExportSchemeAction;
import com.intellij.application.options.SaveSchemeDialog;
import com.intellij.application.options.SchemesToImportPopup;
+import com.intellij.lang.Language;
import com.intellij.openapi.application.ApplicationBundle;
import com.intellij.openapi.application.ApplicationManager;
-import com.intellij.openapi.fileTypes.LanguageFileType;
import com.intellij.openapi.options.SchemesManager;
import com.intellij.openapi.ui.Messages;
import com.intellij.psi.codeStyle.CodeStyleScheme;
});
}
});
- for(LanguageFileType fileType : LanguageCodeStyleSettingsProvider.getLanguageFileTypes()) {
- myLanguageCombo.addItem(fileType.getLanguage().getDisplayName());
+ for(Language language : LanguageCodeStyleSettingsProvider.getLanguagesWithCodeStyleSettings()) {
+ myLanguageCombo.addItem(language.getDisplayName());
}
myLanguageLabel.setVisible(false);
myLanguageCombo.setVisible(false);
private void onLanguageCombo() {
Object selection = myLanguageCombo.getSelectedItem();
if (selection instanceof String) {
- LanguageFileType fileType = LanguageCodeStyleSettingsProvider.getFileType((String)selection);
- if (fileType != null && mySettingsPanel != null) {
- mySettingsPanel.setLanguage(fileType.getLanguage());
+ Language language = LanguageCodeStyleSettingsProvider.getLanguage((String)selection);
+ if (language != null && mySettingsPanel != null) {
+ mySettingsPanel.setLanguage(language);
}
}
}
import com.intellij.lang.Language;
import com.intellij.openapi.extensions.ExtensionPointName;
import com.intellij.openapi.extensions.Extensions;
-import com.intellij.openapi.fileTypes.LanguageFileType;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public static final ExtensionPointName<LanguageCodeStyleSettingsProvider> EP_NAME =
ExtensionPointName.create("com.intellij.langCodeStyleSettingsProvider");
- public abstract LanguageFileType getLanguageFileType();
+ public abstract Language getLanguage();
public abstract String getCodeSample(@NotNull SettingsType settingsType);
- public static LanguageFileType[] getLanguageFileTypes() {
- ArrayList<LanguageFileType> langFileTypes = new ArrayList<LanguageFileType>();
+ public static Language[] getLanguagesWithCodeStyleSettings() {
+ ArrayList<Language> langs = new ArrayList<Language>();
for (LanguageCodeStyleSettingsProvider provider : Extensions.getExtensions(EP_NAME)) {
- langFileTypes.add(provider.getLanguageFileType());
+ langs.add(provider.getLanguage());
}
- return langFileTypes.toArray(new LanguageFileType[langFileTypes.size()]);
+ return langs.toArray(new Language[langs.size()]);
}
public static @Nullable String getCodeSample(Language lang, @NotNull SettingsType settingsType) {
for (LanguageCodeStyleSettingsProvider provider : Extensions.getExtensions(EP_NAME)) {
- if (provider.getLanguageFileType().getLanguage().equals(lang)) {
+ if (provider.getLanguage().equals(lang)) {
return provider.getCodeSample(settingsType);
}
}
return null;
}
- public static @Nullable LanguageFileType getFileType(String langName) {
+ public static @Nullable Language getLanguage(String langName) {
for (LanguageCodeStyleSettingsProvider provider : Extensions.getExtensions(EP_NAME)) {
- if (langName.equals(provider.getLanguageFileType().getLanguage().getDisplayName())) {
- return provider.getLanguageFileType();
+ if (langName.equals(provider.getLanguage().getDisplayName())) {
+ return provider.getLanguage();
}
}
return null;
import com.intellij.application.options.CodeStyleAbstractPanel;
import com.intellij.ide.DataManager;
import com.intellij.lang.Language;
-import com.intellij.openapi.Disposable;
import com.intellij.openapi.actionSystem.PlatformDataKeys;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.command.CommandProcessor;
import org.jetbrains.annotations.NotNull;
import java.io.File;
-import java.io.IOException;
/**
* Base class for code style settings panels supporting multiple programming languages.
if (myLanguage != null) {
return myLanguage.getAssociatedFileType();
}
- LanguageFileType availTypes[] = LanguageCodeStyleSettingsProvider.getLanguageFileTypes();
- if (availTypes.length > 0) {
- myLanguage = availTypes[0].getLanguage();
- return availTypes[0];
+ Language langs[] = LanguageCodeStyleSettingsProvider.getLanguagesWithCodeStyleSettings();
+ if (langs.length > 0) {
+ myLanguage = langs[0];
+ FileType type = langs[0].getAssociatedFileType();
+ if (type != null) return type;
}
return StdFileTypes.JAVA;
}