mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-05 01:50:56 +07:00
initial integration of Alexei Orischenko's Django plugin
This commit is contained in:
@@ -20,7 +20,9 @@
|
||||
<extensions defaultExtensionNs="com.intellij">
|
||||
<moduleType id="PYTHON_MODULE" implementationClass="com.jetbrains.python.module.PythonModuleType"/>
|
||||
<facetType implementation="com.jetbrains.python.facet.PythonFacetType"/>
|
||||
<facetType implementation="com.jetbrains.django.facet.DjangoFacetType"/>
|
||||
<frameworkSupport implementation="com.jetbrains.python.facet.PythonFrameworkSupportProvider"/>
|
||||
<frameworkSupport implementation="com.jetbrains.django.facet.DjangoFacetSupportProvider"/>
|
||||
<moduleConfigurationEditorProvider implementation="com.jetbrains.python.module.PythonModuleConfigurationEditorProvider"/>
|
||||
</extensions>
|
||||
|
||||
|
||||
@@ -5,11 +5,11 @@ import com.intellij.ide.util.frameworkSupport.FrameworkSupportUtil;
|
||||
import com.intellij.ide.util.newProjectWizard.SupportForFrameworksStep;
|
||||
import com.intellij.ide.util.projectWizard.ModuleWizardStep;
|
||||
import com.intellij.ide.util.projectWizard.WizardContext;
|
||||
import com.intellij.openapi.module.ModuleType;
|
||||
import com.intellij.openapi.module.ModuleTypeManager;
|
||||
import com.intellij.openapi.roots.ui.configuration.ModulesProvider;
|
||||
import com.intellij.openapi.roots.ui.configuration.projectRoot.LibrariesContainerFactory;
|
||||
import com.intellij.openapi.util.IconLoader;
|
||||
import com.jetbrains.python.PythonModuleTypeBase;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
|
||||
import javax.swing.*;
|
||||
@@ -19,7 +19,7 @@ import java.util.List;
|
||||
/**
|
||||
* @author yole
|
||||
*/
|
||||
public class PythonModuleType extends ModuleType<PythonModuleBuilder> {
|
||||
public class PythonModuleType extends PythonModuleTypeBase<PythonModuleBuilder> {
|
||||
@NonNls public static final String PYTHON_MODULE = "PYTHON_MODULE";
|
||||
private final Icon myBigIcon = IconLoader.getIcon("/com/jetbrains/python/python_24.png");
|
||||
private final Icon myOpenIcon = IconLoader.getIcon("/com/jetbrains/python/pythonOpen.png");
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/helpers" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/pluginResources" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/pySrc" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/lib/cachedir" />
|
||||
</content>
|
||||
@@ -30,6 +29,9 @@
|
||||
<orderEntry type="module" module-name="smRunner" />
|
||||
<orderEntry type="module" module-name="platform-ultimate" />
|
||||
<orderEntry type="module" module-name="ultimate-verifier" />
|
||||
<orderEntry type="module" module-name="xml-openapi" />
|
||||
<orderEntry type="library" name="OroMatcher" level="project" />
|
||||
<orderEntry type="module" module-name="xml" />
|
||||
</component>
|
||||
<component name="copyright">
|
||||
<Base>
|
||||
|
||||
@@ -96,6 +96,33 @@
|
||||
<lang.refactoringSupport language="Python" implementationClass="com.jetbrains.python.refactoring.RefactoringProvider"/>
|
||||
<codeInsight.gotoSuper language="Python" implementationClass="com.jetbrains.python.codeInsight.PyGotoSuperHandler"/>
|
||||
<gotoDeclarationHandler implementation="com.jetbrains.python.codeInsight.PyBreakContinueGotoProvider" order="FIRST"/>
|
||||
|
||||
<!-- Django -->
|
||||
<annotator language="Python" implementationClass="com.jetbrains.django.annotator.ViewMethodAnnotator"/>
|
||||
<configurationType implementation="com.jetbrains.django.run.DjangoServerRunConfigurationType"/>
|
||||
|
||||
<lang.substitutor language="XHTML" implementationClass="com.jetbrains.django.lang.template.DjangoTemplateLanguageProvider"/>
|
||||
<lang.substitutor language="HTML" implementationClass="com.jetbrains.django.lang.template.DjangoTemplateLanguageProvider"/>
|
||||
<lang.substitutor language="XML" implementationClass="com.jetbrains.django.lang.template.DjangoTemplateLanguageProvider"/>
|
||||
|
||||
<lang.parserDefinition language="DjangoTemplate"
|
||||
implementationClass="com.jetbrains.django.lang.template.parsing.DjangoTemplateParserDefinition"/>
|
||||
<lang.fileViewProviderFactory language="DjangoTemplate"
|
||||
implementationClass="com.jetbrains.django.lang.template.DjangoTemplateFileProviderFactory"/>
|
||||
<lang.ast.factory language="DjangoTemplate" implementationClass="com.jetbrains.django.lang.template.psi.impl.DjangoASTFactory"/>
|
||||
|
||||
<lang.syntaxHighlighterFactory key="DjangoTemplate"
|
||||
implementationClass="com.jetbrains.django.lang.template.highlighting.DjangoTemplateHighlighterFactory"/>
|
||||
|
||||
<completion.contributor language="DjangoTemplate"
|
||||
implementationClass="com.jetbrains.django.completion.DjangoNameCompletionContributor"/>
|
||||
|
||||
<psi.referenceContributor implementation="com.jetbrains.django.ref.ViewMethodReferenceContributor"/>
|
||||
|
||||
<inspectionToolProvider implementation="com.jetbrains.django.inspection.DjangoInspectionToolProvider"/>
|
||||
|
||||
<moduleService serviceInterface="com.jetbrains.django.model.TemplateManager"
|
||||
serviceImplementation="com.jetbrains.django.model.TemplateManager"/>
|
||||
</extensions>
|
||||
|
||||
<extensionPoints>
|
||||
@@ -114,6 +141,9 @@
|
||||
<pyOverridingMethodsSearch implementation="com.jetbrains.python.psi.search.PyOverridingMethodsSearchExecutor"/>
|
||||
<runnableScriptFilter implementation="com.jetbrains.python.testing.pytest.PyTestRunnableScriptFilter"/>
|
||||
<runnableScriptFilter implementation="com.jetbrains.python.testing.PythonUnitTestRunnableScriptFilter"/>
|
||||
|
||||
<!-- Django -->
|
||||
<unresolvedReferenceQuickFixProvider implementation="com.jetbrains.django.ref.DjangoViewReferenceQuickFixProvider"/>
|
||||
</extensions>
|
||||
|
||||
<project-components>
|
||||
@@ -159,5 +189,11 @@
|
||||
<reference ref="CompareFileWithEditor"/>
|
||||
</group>
|
||||
|
||||
<action id="Django.RunManageTaskAction" class="com.jetbrains.django.actions.RunManageTaskAction"
|
||||
text="Run manage.py task..."
|
||||
description="Runs manage.py task">
|
||||
|
||||
<add-to-group group-id="ToolsMenu" anchor="first"/>
|
||||
</action>
|
||||
</actions>
|
||||
</idea-plugin>
|
||||
|
||||
14
python/src/com/jetbrains/python/PythonModuleTypeBase.java
Normal file
14
python/src/com/jetbrains/python/PythonModuleTypeBase.java
Normal file
@@ -0,0 +1,14 @@
|
||||
package com.jetbrains.python;
|
||||
|
||||
import com.intellij.ide.util.projectWizard.ModuleBuilder;
|
||||
import com.intellij.openapi.module.ModuleType;
|
||||
import org.jetbrains.annotations.NonNls;
|
||||
|
||||
/**
|
||||
* @author yole
|
||||
*/
|
||||
public abstract class PythonModuleTypeBase<T extends ModuleBuilder> extends ModuleType<T> {
|
||||
protected PythonModuleTypeBase(@NonNls String id) {
|
||||
super(id);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user