diff --git a/resources/META-INF/plugin.xml b/resources/META-INF/plugin.xml index cc9442b..04eaba3 100644 --- a/resources/META-INF/plugin.xml +++ b/resources/META-INF/plugin.xml @@ -1,6 +1,6 @@ - + dev.senya.packagetemplates - 0.3.0-beta + 0.4.0-beta Package Templates CeH9 @@ -9,10 +9,7 @@ ]]> - - Text Injections
- - Reworked Global Variables
- - UI improvements
+ Changelog available on GitHub pages. ]]>
diff --git a/resources/localization/MyResources_en_US.properties b/resources/localization/MyResources_en_US.properties index 6c4c86c..c0a9f0c 100644 --- a/resources/localization/MyResources_en_US.properties +++ b/resources/localization/MyResources_en_US.properties @@ -141,8 +141,8 @@ injectDirection.PrevLine=Prev Line injectDirection.NextLine=Next Line injectDirection.Replace=Replace injectDirection.StartOfFile=Start of File -injectDirection.EndOfFile=End of File injectDirection.SOF_END_OF_LINE=Start of File, End of line +injectDirection.EndOfFile=End of File injectDirection.EOF_START_OF_LINE=End of File, Start of line WriteRules.FromParent=From Parent diff --git a/src/core/actions/custom/CreateFileTemplateAction.java b/src/core/actions/custom/CreateFileTemplateAction.java index aa9f833..2098d7c 100644 --- a/src/core/actions/custom/CreateFileTemplateAction.java +++ b/src/core/actions/custom/CreateFileTemplateAction.java @@ -2,24 +2,24 @@ import com.intellij.ide.fileTemplates.FileTemplate; import com.intellij.ide.fileTemplates.FileTemplateManager; +import com.intellij.ide.fileTemplates.FileTemplateUtil; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.command.CommandProcessor; import com.intellij.openapi.project.Project; +import com.intellij.util.ArrayUtil; import core.actions.custom.base.SimpleAction; import core.report.ReportHelper; import core.report.enums.ExecutionState; import core.report.models.FailedActionReport; import core.report.models.SuccessActionReport; -import global.utils.Logger; -import global.utils.factories.GsonFactory; import global.utils.file.FileReaderUtil; -import global.utils.file.FileWriter; import global.utils.i18n.Localizer; import global.utils.templates.FileTemplateHelper; import global.utils.text.StringTools; import java.io.File; +import java.util.Arrays; /** * Created by Arsen on 09.01.2017. @@ -55,25 +55,25 @@ private void doRunInWrite() { return; } - FileTemplateManager ftm = FileTemplateManager.getInstance(project); + + FileTemplateManager ftm = FileTemplateHelper.getManagerInstance(project); FileTemplate oldTemplate = ftm.getTemplate(StringTools.getNameWithoutExtension(fileFrom.getName())); if (oldTemplate != null) { - //todo ask? -// Logger.log("CreateFileTemplateAction file Exists"); ftm.removeTemplate(oldTemplate); - ftm.saveAllTemplates(); +// ftm.saveAllTemplates(); } - FileTemplate newTemplate = ftm.addTemplate( + FileTemplate[] templates = ftm.getAllTemplates(); + + FileTemplate template = FileTemplateUtil.createTemplate( StringTools.getNameWithoutExtension(fileFrom.getName()), - StringTools.getExtensionFromName(fileFrom.getName()) + StringTools.getExtensionFromName(fileFrom.getName()), + text, templates ); + ftm.setTemplates(FileTemplateManager.DEFAULT_TEMPLATES_CATEGORY, Arrays.asList(ArrayUtil.append(templates, template))); - newTemplate.setText(text); - ftm.saveAllTemplates(); - ReportHelper.putReport(new SuccessActionReport(this, toString())); } diff --git a/src/core/actions/executor/ActionExecutor.java b/src/core/actions/executor/ActionExecutor.java index 16218cb..f8b6ff2 100644 --- a/src/core/actions/executor/ActionExecutor.java +++ b/src/core/actions/executor/ActionExecutor.java @@ -1,5 +1,6 @@ package core.actions.executor; +import com.intellij.ide.fileTemplates.impl.FileTemplateManagerImpl; import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.command.CommandProcessor; import core.actions.custom.DummyDirectoryAction; diff --git a/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplateDialog.java b/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplateDialog.java index a5ba97b..9b4dc9a 100644 --- a/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplateDialog.java +++ b/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplateDialog.java @@ -340,6 +340,11 @@ public void setPathBtnText(String path) { btnPath.setText(path); } + @Override + public void hideDialog() { + doCancelAction(); + } + //================================================================= // Favourites //================================================================= diff --git a/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplatePresenterImpl.java b/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplatePresenterImpl.java index 195ec32..2cf1188 100644 --- a/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplatePresenterImpl.java +++ b/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplatePresenterImpl.java @@ -227,6 +227,7 @@ public void removeFavourite(String path) { @Override public void onAutoImportAction() { + view.hideDialog(); ApplicationManager.getApplication().runReadAction(() -> { AutoImport autoImport = SaveUtil.reader().getAutoImport(); ArrayList listVirtualFile = new ArrayList<>(); diff --git a/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplateView.java b/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplateView.java index 4c9b61e..66e25ea 100644 --- a/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplateView.java +++ b/src/core/actions/newPackageTemplate/dialogs/select/packageTemplate/SelectPackageTemplateView.java @@ -19,4 +19,6 @@ public interface SelectPackageTemplateView { void selectFavourite(Favourite selected); void setPathBtnText(String path); + + void hideDialog(); } diff --git a/src/global/Const.java b/src/global/Const.java index cdee2b3..66d2b73 100644 --- a/src/global/Const.java +++ b/src/global/Const.java @@ -10,7 +10,7 @@ */ public interface Const { - boolean IS_DEBUG = true; + boolean IS_DEBUG = false; boolean SHOULD_LOG_TO_NOTIFICATION = false; String EXPORT_FILE_NAME = "Templates.json"; diff --git a/src/global/utils/templates/FileTemplateHelper.java b/src/global/utils/templates/FileTemplateHelper.java index f4c91ce..af7353d 100644 --- a/src/global/utils/templates/FileTemplateHelper.java +++ b/src/global/utils/templates/FileTemplateHelper.java @@ -3,19 +3,15 @@ import com.intellij.ide.fileTemplates.FileTemplate; import com.intellij.ide.fileTemplates.FileTemplateManager; import com.intellij.ide.fileTemplates.FileTemplatesScheme; -import com.intellij.openapi.options.SchemeState; +import com.intellij.ide.fileTemplates.impl.FileTemplateManagerImpl; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.Messages; -import com.intellij.util.ArrayUtil; import global.models.TemplateForSearch; import global.utils.i18n.Localizer; -import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.io.File; import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashSet; import java.util.Properties; /** @@ -28,7 +24,7 @@ public static boolean isDefaultScheme(Project project) { } private static FileTemplateManager getProjectManager(Project project) { - return FileTemplateManager.getInstance(project); + return FileTemplateManagerImpl.getInstance(project); } private static FileTemplateManager getDefaultManager() { @@ -44,6 +40,17 @@ public static String getFileTemplatesDefaultDirPath() { } + private static FileTemplateManager fileTemplateManager; + + public static FileTemplateManager getManagerInstance(Project project) { + if (fileTemplateManager == null) { + fileTemplateManager = FileTemplateManagerImpl.getInstance(project); + } + + return fileTemplateManager; + } + + //================================================================= // Read //================================================================= diff --git a/src/global/wrappers/PackageTemplateWrapper.java b/src/global/wrappers/PackageTemplateWrapper.java index 804addc..896e323 100644 --- a/src/global/wrappers/PackageTemplateWrapper.java +++ b/src/global/wrappers/PackageTemplateWrapper.java @@ -191,7 +191,7 @@ private void buildProperties() { if (mode == ViewMode.USAGE) { jtfName.setEditable(false); jtaDescription.setEditable(false); - cboxFileTemplateSource.setEditable(false); + cboxFileTemplateSource.setEnabled(false); } else { // Properties cbShouldRegisterAction = new JBCheckBox(Localizer.get("property.ShouldRegisterAction"), packageTemplate.isShouldRegisterAction());