package com.haskforce.language.formatting; import com.haskforce.HaskellLanguage; 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 org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; /** * Provides the settings panel for Haskell in the Code Style section. */ public class HaskellCodeStyleSettingsProvider extends CodeStyleSettingsProvider { @NotNull @Override public Configurable createSettingsPage(CodeStyleSettings settings, CodeStyleSettings originalSettings) { return new CodeStyleAbstractConfigurable(settings, originalSettings, "Haskell") { @Override protected CodeStyleAbstractPanel createPanel(CodeStyleSettings settings) { return new HaskellTabbedCodeStylePanel(getCurrentSettings(), settings); } @Nullable @Override public String getHelpTopic() { return null; } }; } @Override public Language getLanguage() { return HaskellLanguage.INSTANCE; } @Override public String getConfigurableDisplayName() { return "Haskell"; } }