diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/AbstractDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/AbstractDialog.java index c793f6fcc..4ea9b7d4b 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/AbstractDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/AbstractDialog.java @@ -59,8 +59,18 @@ protected void centerDialog(final AbstractDialog dialog) { dialog.setLocation(coordinateX, coordinateY); } + /** + * Default on cancel action. + */ protected void onCancel() { - this.setVisible(false); + this.exit(); + } + + /** + * Right way to hide dialog window. + */ + protected void exit() { + dispose(); } /** diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/CreateAPluginDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/CreateAPluginDialog.java index 0bec74d19..c2257e1ae 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/CreateAPluginDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/CreateAPluginDialog.java @@ -157,30 +157,28 @@ private void fillTargetAreaOptions() { } protected void onOK() { - if (!validateFormFields()) { - return; + if (validateFormFields()) { + new PluginClassGenerator(new PluginFileData( + getPluginDirectory(), + getPluginClassName(), + getPluginType(), + getPluginModule(), + targetClass, + targetMethod, + getPluginClassFqn(), + getNamespace() + ), project).generate(CreateAPluginAction.ACTION_NAME, true); + + new PluginDiXmlGenerator(new PluginDiXmlData( + getPluginArea(), + getPluginModule(), + targetClass, + getPluginSortOrder(), + getPluginName(), + getPluginClassFqn() + ), project).generate(CreateAPluginAction.ACTION_NAME); } - new PluginClassGenerator(new PluginFileData( - getPluginDirectory(), - getPluginClassName(), - getPluginType(), - getPluginModule(), - targetClass, - targetMethod, - getPluginClassFqn(), - getNamespace() - ), project).generate(CreateAPluginAction.ACTION_NAME, true); - - new PluginDiXmlGenerator(new PluginDiXmlData( - getPluginArea(), - getPluginModule(), - targetClass, - getPluginSortOrder(), - getPluginName(), - getPluginClassFqn() - ), project).generate(CreateAPluginAction.ACTION_NAME); - - this.setVisible(false); + exit(); } public String getPluginName() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/CreateAnObserverDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/CreateAnObserverDialog.java index 920c7e233..223ecee01 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/CreateAnObserverDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/CreateAnObserverDialog.java @@ -150,27 +150,25 @@ private void fillTargetAreaOptions() { * Perform code generation using input data. */ private void onOK() { - if (!validateFormFields()) { - return; + if (validateFormFields()) { + new ObserverClassGenerator(new ObserverFileData( + getObserverDirectory(), + getObserverClassName(), + getObserverModule(), + targetEvent, + getObserverClassFqn(), + getNamespace() + ), project).generate(CreateAnObserverAction.ACTION_NAME, true); + + new ObserverEventsXmlGenerator(new ObserverEventsXmlData( + getObserverArea(), + getObserverModule(), + targetEvent, + getObserverName(), + getObserverClassFqn() + ), project).generate(CreateAPluginAction.ACTION_NAME); } - new ObserverClassGenerator(new ObserverFileData( - getObserverDirectory(), - getObserverClassName(), - getObserverModule(), - targetEvent, - getObserverClassFqn(), - getNamespace() - ), project).generate(CreateAnObserverAction.ACTION_NAME, true); - - new ObserverEventsXmlGenerator(new ObserverEventsXmlData( - getObserverArea(), - getObserverModule(), - targetEvent, - getObserverName(), - getObserverClassFqn() - ), project).generate(CreateAPluginAction.ACTION_NAME); - - this.setVisible(false); + exit(); } public String getObserverClassName() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/InjectAViewModelDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/InjectAViewModelDialog.java index 8252be35c..19bd8b1ec 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/InjectAViewModelDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/InjectAViewModelDialog.java @@ -138,6 +138,7 @@ protected void updateArgumentText() { protected void onOK() { if (!validateFormFields()) { + exit(); return; } final String moduleName = GetModuleNameByDirectoryUtil.execute( @@ -168,6 +169,7 @@ protected void onOK() { JOptionPane.ERROR_MESSAGE ); + exit(); return; } @@ -176,9 +178,9 @@ protected void onOK() { this.getViewModelArgumentName(), XsiTypes.object.toString(), namespaceBuilder.getClassFqn() - ).generate(targetBlockTag); + ).generate(targetBlockTag); - this.setVisible(false); + exit(); } public String getViewModelClassName() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewBlockDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewBlockDialog.java index e215d7364..6bc982cc5 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewBlockDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewBlockDialog.java @@ -111,11 +111,10 @@ public static void open(final Project project, final PsiDirectory directory) { } protected void onOK() { - if (!validateFormFields()) { - return; + if (validateFormFields()) { + generateFile(); } - generateFile(); - this.setVisible(false); + exit(); } private PsiFile generateFile() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCLICommandDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCLICommandDialog.java index def6d7eaa..ef139e58e 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCLICommandDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCLICommandDialog.java @@ -179,11 +179,10 @@ public String getCLICommandClassFqn() { } private void onOK() { - if (!validateFormFields() || !isPHPClassValid()) { - return; + if (validateFormFields() && isPHPClassValid()) { + this.generate(); } - this.generate(); - this.setVisible(false); + exit(); } private Boolean isPHPClassValid() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewControllerDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewControllerDialog.java index 7e1e3627e..c5e88c022 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewControllerDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewControllerDialog.java @@ -194,12 +194,10 @@ public static void open(final Project project, final PsiDirectory directory) { } private void onOK() { - if (!validateFormFields()) { - return; + if (validateFormFields()) { + generateFile(); } - - generateFile(); - this.setVisible(false); + exit(); } /** diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCronGroupDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCronGroupDialog.java index 64f76277c..ea37a5a25 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCronGroupDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCronGroupDialog.java @@ -140,12 +140,10 @@ public static void open(final Project project, final PsiDirectory directory) { } private void onOK() { - if (!validateFormFields()) { - return; + if (validateFormFields()) { + generateFile(); } - - generateFile(); - this.setVisible(false); + exit(); } @Override diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCronjobDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCronjobDialog.java index 4682f9f8e..626bd2de1 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCronjobDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewCronjobDialog.java @@ -281,6 +281,7 @@ private String suggestCronjobName(final String cronjobClassname) { */ private void onOK() { if (!validateFormFields()) { + exit(); return; } @@ -298,7 +299,7 @@ private void onOK() { // todo: catch validation exceptions this.generate(cronjobClassData, crontabXmlData); - this.setVisible(false); + exit(); } /** diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewDataModelDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewDataModelDialog.java index 64baf0743..040572b21 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewDataModelDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewDataModelDialog.java @@ -145,8 +145,8 @@ private void onOK() { generateDataModelInterfaceFile(); generatePreferenceForInterface(); } - this.setVisible(false); } + exit(); } @Override diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewDbSchemaDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewDbSchemaDialog.java index 818280fea..b5314a571 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewDbSchemaDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewDbSchemaDialog.java @@ -135,21 +135,18 @@ private void onOK() { columnsTable.getCellEditor().stopCellEditing(); } - if (!validateFormFields()) { - return; + if (validateFormFields()) { + final DbSchemaXmlData dbSchemaXmlData = new DbSchemaXmlData( + getTableName(), + getTableResource(), + getTableEngine(), + getTableComment(), + getColumns() + ); + generateDbSchemaXmlFile(dbSchemaXmlData); + generateWhitelistJsonFile(dbSchemaXmlData); } - - final DbSchemaXmlData dbSchemaXmlData = new DbSchemaXmlData( - getTableName(), - getTableResource(), - getTableEngine(), - getTableComment(), - getColumns() - ); - generateDbSchemaXmlFile(dbSchemaXmlData); - generateWhitelistJsonFile(dbSchemaXmlData); - - this.setVisible(false); + exit(); } /** diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewEmailTemplateDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewEmailTemplateDialog.java index 9d902e458..2ee468ebf 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewEmailTemplateDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewEmailTemplateDialog.java @@ -206,12 +206,14 @@ private String getModuleName() { private void onOK() { final boolean emailTemplateCanBeDeclared = !this.validator.validate(this); + if (!validateFormFields() || emailTemplateCanBeDeclared) { + exit(); return; } - generateFile(); - this.setVisible(false); + + exit(); } private void generateFile() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewEntityDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewEntityDialog.java index 5437b96b7..1eca33353 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewEntityDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewEntityDialog.java @@ -441,7 +441,7 @@ private void releaseDialogAfterGeneration() { buttonOK.setEnabled(true); if (onOkActionFired.isFinished()) { - this.setVisible(false); + exit(); } } diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewGraphQlResolverDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewGraphQlResolverDialog.java index d5a37c77a..2cb558795 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewGraphQlResolverDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewGraphQlResolverDialog.java @@ -109,11 +109,10 @@ public static void open(final Project project, final PsiDirectory directory) { } protected void onOK() { - if (!validateFormFields()) { - return; + if (validateFormFields()) { + generateFile(); } - generateFile(); - this.setVisible(false); + exit(); } private PsiFile generateFile() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewInterfaceForServiceDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewInterfaceForServiceDialog.java index 6c6851cfe..7f4f45ee3 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewInterfaceForServiceDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewInterfaceForServiceDialog.java @@ -170,17 +170,15 @@ private void fillPredefinedValuesAndDisableInputs() { * Fire generation process if all fields are valid. */ private void onOK() { - if (!validateFormFields()) { - return; - } - final WebApiInterfaceData data = getDialogDataObject(); + if (validateFormFields()) { + final WebApiInterfaceData data = getDialogDataObject(); - new WebApiInterfaceGenerator( - data, - project - ).generate(NewWebApiInterfaceAction.ACTION_NAME, true); - - this.setVisible(false); + new WebApiInterfaceGenerator( + data, + project + ).generate(NewWebApiInterfaceAction.ACTION_NAME, true); + } + exit(); } /** diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewMessageQueueDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewMessageQueueDialog.java index 96d2e52b6..e7954d2c5 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewMessageQueueDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewMessageQueueDialog.java @@ -244,11 +244,12 @@ private void onOK() { generateTopology(); generatePublisher(); generateHandlerClass(); + if (getConnectionName().equals(MessageQueueConnections.DB.getType())) { generateConsumerClass(); } - this.setVisible(false); } + exit(); } private void generateCommunication() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewModelsDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewModelsDialog.java index 9c91b9389..518522798 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewModelsDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewModelsDialog.java @@ -169,15 +169,12 @@ protected void onCancel() { * Process generation. */ private void onOK() { - if (!validateFormFields()) { - return; + if (validateFormFields()) { + generateModelFile(); + generateResourceModelFile(); + generateCollectionFile(); } - - generateModelFile(); - generateResourceModelFile(); - generateCollectionFile(); - - this.setVisible(false); + exit(); } /** diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewModuleDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewModuleDialog.java index 0e2a18f9e..5ed7cfd66 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewModuleDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewModuleDialog.java @@ -172,11 +172,10 @@ private void detectPackageName(final @NotNull PsiDirectory initialBaseDir) { } protected void onOK() { - if (!validateFormFields()) { - return; + if (validateFormFields()) { + generateFiles(); } - generateFiles(); - this.setVisible(false); + exit(); } private void generateFiles() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewUiComponentFormDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewUiComponentFormDialog.java index 23e8b62e2..d08e4e3f2 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewUiComponentFormDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewUiComponentFormDialog.java @@ -416,18 +416,16 @@ private void onOK() { fields.getCellEditor().stopCellEditing(); } - if (!validateFormFields()) { - return; + if (validateFormFields()) { + generateRoutesXmlFile(); + generateViewControllerFile(); + generateSubmitControllerFile(); + generateDataProviderFile(); + generateLayoutFile(); + generateFormFile(); + generateAclXmlFile(); } - - generateRoutesXmlFile(); - generateViewControllerFile(); - generateSubmitControllerFile(); - generateDataProviderFile(); - generateLayoutFile(); - generateFormFile(); - generateAclXmlFile(); - this.setVisible(false); + exit(); } /** diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewUiComponentGridDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewUiComponentGridDialog.java index d5ec946b7..a6d2e58e9 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewUiComponentGridDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewUiComponentGridDialog.java @@ -303,19 +303,17 @@ protected void onCancel() { } private void onOK() { - if (!validateFormFields()) { - return; + if (validateFormFields()) { + generateViewControllerFile(); + generateLayoutFile(); + generateMenuFile(); + generateAclXmlFile(); + generateRoutesXmlFile(); + generateDataProviderClass(); + generateDataProviderDeclaration(); + generateUiComponentFile(); } - - generateViewControllerFile(); - generateLayoutFile(); - generateMenuFile(); - generateAclXmlFile(); - generateRoutesXmlFile(); - generateDataProviderClass(); - generateDataProviderDeclaration(); - generateUiComponentFile(); - this.setVisible(false); + exit(); } private void setDefaultValues() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewViewModelDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewViewModelDialog.java index 8403927c1..77fea5829 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewViewModelDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewViewModelDialog.java @@ -117,11 +117,10 @@ public static void open(final Project project, final PsiDirectory directory) { } protected void onOK() { - if (!validateFormFields()) { - return; + if (validateFormFields()) { + generateFile(); } - generateFile(); - this.setVisible(false); + exit(); } private PsiFile generateFile() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewWebApiDeclarationDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewWebApiDeclarationDialog.java index d9f06a883..84a361ae4 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewWebApiDeclarationDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/NewWebApiDeclarationDialog.java @@ -141,16 +141,13 @@ public static void open( * Fire generation process if all fields are valid. */ private void onOK() { - if (!validateFormFields()) { - return; + if (validateFormFields()) { + new WebApiDeclarationGenerator( + getDialogDataObject(), + project + ).generate(NewWebApiDeclarationAction.ACTION_NAME, true); } - - new WebApiDeclarationGenerator( - getDialogDataObject(), - project - ).generate(NewWebApiDeclarationAction.ACTION_NAME, true); - - this.setVisible(false); + exit(); } /** diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/OverrideClassByAPreferenceDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/OverrideClassByAPreferenceDialog.java index 07d1b1448..d1e7ea551 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/OverrideClassByAPreferenceDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/OverrideClassByAPreferenceDialog.java @@ -168,6 +168,7 @@ private void fillTargetAreaOptions() { protected void onOK() { if (!validateFormFields()) { + exit(); return; } final PsiFile diXml = new PreferenceDiXmlGenerator(new PreferenceDiXmFileData( @@ -203,7 +204,7 @@ protected void onOK() { isInterface ), project).generate(OverrideClassByAPreferenceAction.ACTION_NAME, true); - this.setVisible(false); + exit(); } public String getPreferenceClassName() { diff --git a/src/com/magento/idea/magento2plugin/actions/generation/dialog/OverrideInThemeDialog.java b/src/com/magento/idea/magento2plugin/actions/generation/dialog/OverrideInThemeDialog.java index 5902991fd..205d5c838 100644 --- a/src/com/magento/idea/magento2plugin/actions/generation/dialog/OverrideInThemeDialog.java +++ b/src/com/magento/idea/magento2plugin/actions/generation/dialog/OverrideInThemeDialog.java @@ -95,15 +95,13 @@ private void onExtend() { } private void onOK() { - if (!validateFormFields()) { - return; - } - - final OverrideInThemeGenerator overrideInThemeGenerator = - new OverrideInThemeGenerator(project); - overrideInThemeGenerator.execute(psiFile, this.getTheme(), this.isOverride()); + if (validateFormFields()) { + final OverrideInThemeGenerator overrideInThemeGenerator = + new OverrideInThemeGenerator(project); - this.setVisible(false); + overrideInThemeGenerator.execute(psiFile, this.getTheme(), this.isOverride()); + } + exit(); } public String getTheme() { diff --git a/src/com/magento/idea/magento2uct/ui/ConfigurationDialog.java b/src/com/magento/idea/magento2uct/ui/ConfigurationDialog.java index d552d6d95..039b430ba 100644 --- a/src/com/magento/idea/magento2uct/ui/ConfigurationDialog.java +++ b/src/com/magento/idea/magento2uct/ui/ConfigurationDialog.java @@ -156,7 +156,7 @@ private void onOK() { ); settingsService.setIgnoreCurrentVersion(ignoreCurrentVersion.isSelected()); - this.setVisible(false); + exit(); } /** diff --git a/src/com/magento/idea/magento2uct/ui/ReindexDialog.java b/src/com/magento/idea/magento2uct/ui/ReindexDialog.java index af1ffb30c..f0f23ab0a 100644 --- a/src/com/magento/idea/magento2uct/ui/ReindexDialog.java +++ b/src/com/magento/idea/magento2uct/ui/ReindexDialog.java @@ -125,7 +125,7 @@ private void onOK() { ); executor.run(); - this.setVisible(false); + exit(); } /**