From a049fd1127e48ca33511e88b0811d4127739c16f Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Thu, 12 Jan 2012 14:01:53 +0400 Subject: [PATCH] KT-986 Kotlin file wizard --- .idea/compiler.xml | 1 + idea/{src => }/META-INF/plugin.xml | 7 ++++++ idea/idea.iml | 3 ++- .../fileTemplates/internal/Kotlin File.kt.ft | 2 ++ .../internal/Kotlin File.kt.html | 14 ++++++++++++ .../jetbrains/jet/plugin/JetIconProvider.java | 2 ++ .../plugin/actions/NewKotlinFileAction.java | 22 +++++++++++++++++++ 7 files changed, 50 insertions(+), 1 deletion(-) rename idea/{src => }/META-INF/plugin.xml (94%) create mode 100644 idea/resources/fileTemplates/internal/Kotlin File.kt.ft create mode 100644 idea/resources/fileTemplates/internal/Kotlin File.kt.html create mode 100644 idea/src/org/jetbrains/jet/plugin/actions/NewKotlinFileAction.java diff --git a/.idea/compiler.xml b/.idea/compiler.xml index 1397a2192d0..8d54c189540 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -15,6 +15,7 @@ + diff --git a/idea/src/META-INF/plugin.xml b/idea/META-INF/plugin.xml similarity index 94% rename from idea/src/META-INF/plugin.xml rename to idea/META-INF/plugin.xml index 5d01613d996..d5070d679f9 100644 --- a/idea/src/META-INF/plugin.xml +++ b/idea/META-INF/plugin.xml @@ -14,6 +14,10 @@ + + + + @@ -32,6 +36,9 @@ + + + diff --git a/idea/idea.iml b/idea/idea.iml index 061858ad7f7..173645c959e 100644 --- a/idea/idea.iml +++ b/idea/idea.iml @@ -1,6 +1,6 @@ - + @@ -13,6 +13,7 @@ + diff --git a/idea/resources/fileTemplates/internal/Kotlin File.kt.ft b/idea/resources/fileTemplates/internal/Kotlin File.kt.ft new file mode 100644 index 00000000000..86620bf1121 --- /dev/null +++ b/idea/resources/fileTemplates/internal/Kotlin File.kt.ft @@ -0,0 +1,2 @@ +#parse("File Header.java") + diff --git a/idea/resources/fileTemplates/internal/Kotlin File.kt.html b/idea/resources/fileTemplates/internal/Kotlin File.kt.html new file mode 100644 index 00000000000..176477df927 --- /dev/null +++ b/idea/resources/fileTemplates/internal/Kotlin File.kt.html @@ -0,0 +1,14 @@ + + + + + + +
+ + This is a built-in template used by IDEA each time you create a + Kotlin file + +
+ + \ No newline at end of file diff --git a/idea/src/org/jetbrains/jet/plugin/JetIconProvider.java b/idea/src/org/jetbrains/jet/plugin/JetIconProvider.java index a8b4b46582c..f0ce96accde 100644 --- a/idea/src/org/jetbrains/jet/plugin/JetIconProvider.java +++ b/idea/src/org/jetbrains/jet/plugin/JetIconProvider.java @@ -1,6 +1,7 @@ package org.jetbrains.jet.plugin; import com.intellij.ide.IconProvider; +import com.intellij.openapi.util.IconLoader; import com.intellij.openapi.util.Iconable; import com.intellij.psi.PsiElement; import com.intellij.psi.util.PsiTreeUtil; @@ -16,6 +17,7 @@ import javax.swing.*; */ public class JetIconProvider extends IconProvider { public static final Icon ICON_FOR_OBJECT = PlatformIcons.ANONYMOUS_CLASS_ICON; + public static final Icon KOTLIN_ICON = IconLoader.getIcon("/org/jetbrains/jet/plugin/icons/kotlin16x16.png"); @Override public Icon getIcon(@NotNull PsiElement psiElement, int flags) { diff --git a/idea/src/org/jetbrains/jet/plugin/actions/NewKotlinFileAction.java b/idea/src/org/jetbrains/jet/plugin/actions/NewKotlinFileAction.java new file mode 100644 index 00000000000..fd31ff71536 --- /dev/null +++ b/idea/src/org/jetbrains/jet/plugin/actions/NewKotlinFileAction.java @@ -0,0 +1,22 @@ +package org.jetbrains.jet.plugin.actions; + +import com.intellij.ide.fileTemplates.FileTemplateManager; +import com.intellij.ide.fileTemplates.actions.CreateFromTemplateAction; +import com.intellij.openapi.actionSystem.AnActionEvent; +import org.jetbrains.jet.plugin.JetIconProvider; + +/** + * @author Nikolay Krasko + */ +public class NewKotlinFileAction extends CreateFromTemplateAction { + + public NewKotlinFileAction() { + super(FileTemplateManager.getInstance().getInternalTemplate("Kotlin File")); + } + + @Override + public void update(AnActionEvent e) { + super.update(e); + e.getPresentation().setIcon(JetIconProvider.KOTLIN_ICON); + } +} \ No newline at end of file