diff --git a/build.gradle.kts b/build.gradle.kts
index e2d6415..8a7111f 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -5,7 +5,7 @@ plugins {
}
group = "com.gregorybednov"
-version = "1.0.0"
+version = "1.0.1"
repositories {
mavenCentral()
diff --git a/src/main/kotlin/org/gregorybednov/NewCFileAction.kt b/src/main/kotlin/org/gregorybednov/NewCFileAction.kt
new file mode 100644
index 0000000..2abbe19
--- /dev/null
+++ b/src/main/kotlin/org/gregorybednov/NewCFileAction.kt
@@ -0,0 +1,25 @@
+package org.gregorybednov
+
+import com.intellij.ide.actions.CreateFileFromTemplateAction
+import com.intellij.ide.actions.CreateFileFromTemplateDialog
+import com.intellij.openapi.project.Project
+import com.intellij.psi.PsiDirectory
+import org.gregorybednov.clsp.CIcon
+
+
+class NewCFileAction :
+ CreateFileFromTemplateAction("C File", "Creates new C file", CIcon.FILE ) {
+ override fun buildDialog(project: Project, directory: PsiDirectory, builder: CreateFileFromTemplateDialog.Builder) {
+ builder
+ .setTitle("New C File")
+ .addKind("My file", CIcon.FILE, "DefaultTemplate.c")
+ }
+
+ override fun getActionName(directory: PsiDirectory?, newName: String, templateName: String?): String {
+ return "C File"
+ }
+
+ override fun getDefaultTemplateProperty(): String {
+ return "DefaultTemplate.c";
+ }
+}
\ No newline at end of file
diff --git a/src/main/kotlin/org/gregorybednov/NewCppFileAction.kt b/src/main/kotlin/org/gregorybednov/NewCppFileAction.kt
new file mode 100644
index 0000000..18e8c03
--- /dev/null
+++ b/src/main/kotlin/org/gregorybednov/NewCppFileAction.kt
@@ -0,0 +1,26 @@
+package org.gregorybednov
+
+import com.intellij.ide.actions.CreateFileFromTemplateAction
+import com.intellij.ide.actions.CreateFileFromTemplateDialog
+import com.intellij.openapi.project.Project
+import com.intellij.psi.PsiDirectory
+import org.gregorybednov.clsp.CIcon
+import org.gregorybednov.clsp.CppIcon
+
+
+class NewCppFileAction :
+ CreateFileFromTemplateAction("C++ File", "Creates new C++ file", CppIcon.FILE ) {
+ override fun buildDialog(project: Project, directory: PsiDirectory, builder: CreateFileFromTemplateDialog.Builder) {
+ builder
+ .setTitle("New C++ File")
+ .addKind("My file", CIcon.FILE, "DefaultTemplate.cpp")
+ }
+
+ override fun getActionName(directory: PsiDirectory?, newName: String, templateName: String?): String {
+ return "C++ File"
+ }
+
+ override fun getDefaultTemplateProperty(): String {
+ return "DefaultTemplate.cpp";
+ }
+}
\ No newline at end of file
diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml
index 177e38d..d8f0010 100644
--- a/src/main/resources/META-INF/plugin.xml
+++ b/src/main/resources/META-INF/plugin.xml
@@ -10,7 +10,18 @@
com.redhat.devtools.lsp4ij
org.jetbrains.plugins.textmate
+
+
+
+
+
+
+
+
+
+
+
-
diff --git a/src/main/resources/fileTemplates/internal/DefaultTemplate.c.ft b/src/main/resources/fileTemplates/internal/DefaultTemplate.c.ft
new file mode 100644
index 0000000..c1a6458
--- /dev/null
+++ b/src/main/resources/fileTemplates/internal/DefaultTemplate.c.ft
@@ -0,0 +1,6 @@
+\#include
+
+int main() {
+ printf("Hello world");
+ return 0;
+}
\ No newline at end of file
diff --git a/src/main/resources/fileTemplates/internal/DefaultTemplate.cpp.ft b/src/main/resources/fileTemplates/internal/DefaultTemplate.cpp.ft
new file mode 100644
index 0000000..29bdc26
--- /dev/null
+++ b/src/main/resources/fileTemplates/internal/DefaultTemplate.cpp.ft
@@ -0,0 +1,6 @@
+\#include
+
+int main() {
+ std::cout << "Hello world";
+ return 0;
+}
\ No newline at end of file