From 2e854bb86793b303e1ae7cea8eb7b7fbf60f8869 Mon Sep 17 00:00:00 2001 From: nik Date: Tue, 26 Feb 2013 19:47:18 +0400 Subject: [PATCH] don't ask user to setup source roots if user interaction isn't supposed (EA-44269) --- .../com/intellij/ide/util/PackageUtil.java | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/java/java-impl/src/com/intellij/ide/util/PackageUtil.java b/java/java-impl/src/com/intellij/ide/util/PackageUtil.java index b124faa57c29..d0a0aa7f038c 100644 --- a/java/java-impl/src/com/intellij/ide/util/PackageUtil.java +++ b/java/java-impl/src/com/intellij/ide/util/PackageUtil.java @@ -210,7 +210,7 @@ public class PackageUtil { } if (psiDirectory == null) { - if (!checkSourceRootsConfigured(module)) return null; + if (!checkSourceRootsConfigured(module, askUserToCreate)) return null; final VirtualFile[] sourceRoots = ModuleRootManager.getInstance(module).getSourceRoots(); List directoryList = new ArrayList(); for (VirtualFile sourceRoot : sourceRoots) { @@ -355,15 +355,22 @@ public class PackageUtil { } public static boolean checkSourceRootsConfigured(final Module module) { + return checkSourceRootsConfigured(module, true); + } + + public static boolean checkSourceRootsConfigured(final Module module, final boolean askUserToSetupSourceRoots) { VirtualFile[] sourceRoots = ModuleRootManager.getInstance(module).getSourceRoots(); if (sourceRoots.length == 0) { - Messages.showErrorDialog( - module.getProject(), - ProjectBundle.message("module.source.roots.not.configured.error", module.getName()), - ProjectBundle.message("module.source.roots.not.configured.title") - ); + if (!askUserToSetupSourceRoots) { + return false; + } - ProjectSettingsService.getInstance(module.getProject()).showModuleConfigurationDialog(module.getName(), CommonContentEntriesEditor.NAME); + Project project = module.getProject(); + Messages.showErrorDialog(project, + ProjectBundle.message("module.source.roots.not.configured.error", module.getName()), + ProjectBundle.message("module.source.roots.not.configured.title")); + + ProjectSettingsService.getInstance(project).showModuleConfigurationDialog(module.getName(), CommonContentEntriesEditor.NAME); sourceRoots = ModuleRootManager.getInstance(module).getSourceRoots(); if (sourceRoots.length == 0) {