diff --git a/python/ide/src/com/jetbrains/python/PyCharmCustomizeIDEWizardStepsProvider.java b/python/ide/src/com/jetbrains/python/PyCharmCustomizeIDEWizardStepsProvider.java new file mode 100644 index 000000000000..0721120c935e --- /dev/null +++ b/python/ide/src/com/jetbrains/python/PyCharmCustomizeIDEWizardStepsProvider.java @@ -0,0 +1,38 @@ +// Copyright 2000-2017 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. +package com.jetbrains.python; + +import com.intellij.ide.customize.*; +import com.intellij.openapi.util.Pair; + +import javax.swing.*; +import java.util.List; +import java.util.Map; + +public class PyCharmCustomizeIDEWizardStepsProvider implements CustomizeIDEWizardStepsProvider { + @Override + public void initSteps(CustomizeIDEWizardDialog wizardDialog, List steps) { + PluginGroups groups = new PluginGroups() { + @Override + protected void initGroups(Map>> tree, Map featuredPlugins) { + addVcsGroup(tree); + + addVimPlugin(featuredPlugins); + addMarkdownPlugin(featuredPlugins); + featuredPlugins.put("BashSupport", "Languages:Bash language support:BashSupport"); + featuredPlugins.put(".ignore", + "VCS Integration:Support for .gitignore (GIT), .hgignore (Mercurial), .npmignore (NPM), .dockerignore (Docker) etc:mobi.hsz.idea.gitignore"); + featuredPlugins.put("R Language Support", "Languages:R language support:R4Intellij"); + featuredPlugins.put("YAML/Ansible support", "Languages:YAML/Ansible support with Jinja2 tags:YAML/Ansible support"); + } + }; + + steps.add(new CustomizeUIThemeStepPanel()); + + if (CustomizeLauncherScriptStep.isAvailable()) { + steps.add(new CustomizeLauncherScriptStep()); + } + + steps.add(new CustomizePluginsStepPanel(groups)); + steps.add(new CustomizeFeaturedPluginsStepPanel(groups)); + } +} diff --git a/python/ide/src/com/jetbrains/python/PyCharmInitialConfigurator.java b/python/ide/src/com/jetbrains/python/PyCharmInitialConfigurator.java index e43932ab8aa9..9e6ac0ed2193 100644 --- a/python/ide/src/com/jetbrains/python/PyCharmInitialConfigurator.java +++ b/python/ide/src/com/jetbrains/python/PyCharmInitialConfigurator.java @@ -15,7 +15,6 @@ */ package com.jetbrains.python; -import com.intellij.application.options.InitialConfigurationDialog; import com.intellij.codeInsight.CodeInsightSettings; import com.intellij.ide.AppLifecycleListener; import com.intellij.ide.ui.UISettings; @@ -24,15 +23,12 @@ import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.editor.ex.EditorSettingsExternalizable; import com.intellij.openapi.fileTypes.FileTypeManager; import com.intellij.openapi.util.registry.Registry; -import com.intellij.openapi.wm.WindowManager; import com.intellij.psi.codeStyle.CodeStyleSettings; import com.intellij.psi.codeStyle.CodeStyleSettingsManager; import com.intellij.util.messages.MessageBus; import com.jetbrains.python.codeInsight.PyCodeInsightSettings; import org.jetbrains.annotations.NonNls; -import javax.swing.*; - /** * Initialize PyCharm. * @@ -85,7 +81,6 @@ public class PyCharmInitialConfigurator { public void welcomeScreenDisplayed() { ApplicationManager.getApplication().invokeLater(() -> { propertiesComponent.setValue(DISPLAYED_PROPERTY, "true"); - showInitialConfigurationDialog(); }); } }); @@ -93,9 +88,4 @@ public class PyCharmInitialConfigurator { Registry.get("ide.ssh.one.time.password").setValue(true); } - - private static void showInitialConfigurationDialog() { - final JFrame frame = WindowManager.getInstance().findVisibleFrame(); - new InitialConfigurationDialog(frame, "Python").show(); - } } diff --git a/python/python-community-ide-resources/resources/idea/PyCharmCoreApplicationInfo.xml b/python/python-community-ide-resources/resources/idea/PyCharmCoreApplicationInfo.xml index abbd34948ab3..8c98cdb36270 100644 --- a/python/python-community-ide-resources/resources/idea/PyCharmCoreApplicationInfo.xml +++ b/python/python-community-ide-resources/resources/idea/PyCharmCoreApplicationInfo.xml @@ -12,6 +12,7 @@ +