package com.simpleplugin; import com.intellij.application.options.CodeStyleAbstractConfigurable; import com.intellij.application.options.CodeStyleAbstractPanel; import com.intellij.application.options.TabbedLanguageCodeStylePanel; 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 org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; public class SimpleCodeStyleSettingsProvider extends CodeStyleSettingsProvider { @Override public CustomCodeStyleSettings createCustomSettings(CodeStyleSettings settings) { return new SimpleCodeStyleSettings(settings); } @Nullable @Override public String getConfigurableDisplayName() { return "Simple"; } @NotNull @Override public Configurable createSettingsPage(CodeStyleSettings settings, CodeStyleSettings originalSettings) { return new CodeStyleAbstractConfigurable(settings, originalSettings, "Simple") { @Override protected CodeStyleAbstractPanel createPanel(CodeStyleSettings settings) { return new SimpleCodeStyleMainPanel(getCurrentSettings(), settings); } @Nullable @Override public String getHelpTopic() { return null; } }; } private static class SimpleCodeStyleMainPanel extends TabbedLanguageCodeStylePanel { public SimpleCodeStyleMainPanel(CodeStyleSettings currentSettings, CodeStyleSettings settings) { super(SimpleLanguage.INSTANCE, currentSettings, settings); } } }