From 9fa2a1323160bb79888693f13ed2f645db60fb15 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Thu, 20 May 2010 19:10:09 +0400 Subject: [PATCH] don't show empty Python code style settings page; fix Python preview text --- .../psi/codeStyle/CodeStyleSettingsProvider.java | 4 ++++ .../options/CodeStyleSchemesConfigurable.java | 12 +++++++----- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettingsProvider.java b/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettingsProvider.java index 446067dec7ff..a154a764d6e1 100644 --- a/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettingsProvider.java +++ b/platform/lang-api/src/com/intellij/psi/codeStyle/CodeStyleSettingsProvider.java @@ -44,4 +44,8 @@ public abstract class CodeStyleSettingsProvider { public String getConfigurableDisplayName() { return null; } + + public boolean hasSettingsPage() { + return true; + } } diff --git a/platform/lang-impl/src/com/intellij/application/options/CodeStyleSchemesConfigurable.java b/platform/lang-impl/src/com/intellij/application/options/CodeStyleSchemesConfigurable.java index def93b6a2a80..b63e5b5d7d6a 100644 --- a/platform/lang-impl/src/com/intellij/application/options/CodeStyleSchemesConfigurable.java +++ b/platform/lang-impl/src/com/intellij/application/options/CodeStyleSchemesConfigurable.java @@ -208,11 +208,13 @@ public class CodeStyleSchemesConfigurable extends SearchableConfigurable.Parent. myPanels = new ArrayList(); for (final CodeStyleSettingsProvider provider : Extensions.getExtensions(CodeStyleSettingsProvider.EXTENSION_POINT_NAME)) { - myPanels.add(new CodeStyleConfigurableWrapper(provider, new CodeStyleSettingsPanelFactory() { - public NewCodeStyleSettingsPanel createPanel(final CodeStyleScheme scheme) { - return new NewCodeStyleSettingsPanel(provider.createSettingsPage(scheme.getCodeStyleSettings(), ensureModel().getCloneSettings(scheme))); - } - })); + if (provider.hasSettingsPage()) { + myPanels.add(new CodeStyleConfigurableWrapper(provider, new CodeStyleSettingsPanelFactory() { + public NewCodeStyleSettingsPanel createPanel(final CodeStyleScheme scheme) { + return new NewCodeStyleSettingsPanel(provider.createSettingsPage(scheme.getCodeStyleSettings(), ensureModel().getCloneSettings(scheme))); + } + })); + } } return myPanels.toArray(new Configurable[myPanels.size()]);