mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Merge remote branch 'origin/master'
This commit is contained in:
+3
-3
@@ -49,9 +49,9 @@ public class JikesConfigurable implements Configurable{
|
||||
myJikesPathFieldBrowseButton.addActionListener(new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor();
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myPathField, descriptor);
|
||||
if (files.length != 0) {
|
||||
myPathField.setText(files[0].getPath().replace('/', File.separatorChar));
|
||||
VirtualFile file = FileChooser.chooseFile(myPathField, descriptor, null);
|
||||
if (file != null) {
|
||||
myPathField.setText(file.getPath().replace('/', File.separatorChar));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
+2
-2
@@ -2,7 +2,7 @@ package com.intellij.compiler.options;
|
||||
|
||||
import com.intellij.compiler.CompilerConfiguration;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.module.ModuleManager;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
@@ -93,7 +93,7 @@ public class AnnotationProcessorsConfigurable implements SearchableConfigurable
|
||||
myProcessorPathField = new TextFieldWithBrowseButton(new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
final VirtualFile[] files =
|
||||
FileChooser.chooseFiles(myProcessorPathField, new FileChooserDescriptor(true, true, true, true, false, true));
|
||||
FileChooser.chooseFiles(myProcessorPathField, FileChooserDescriptorFactory.createAllButJarContentsDescriptor());
|
||||
if (files.length > 0) {
|
||||
final StringBuilder builder = new StringBuilder();
|
||||
for (VirtualFile file : files) {
|
||||
|
||||
+3
-6
@@ -15,9 +15,7 @@
|
||||
*/
|
||||
package com.intellij.packaging.impl.elements;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDialog;
|
||||
import com.intellij.openapi.fileChooser.FileChooserFactory;
|
||||
import com.intellij.openapi.fileChooser.*;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.IconLoader;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
@@ -54,9 +52,8 @@ public class DirectoryCopyElementType extends PackagingElementType<DirectoryCopy
|
||||
@NotNull
|
||||
public List<? extends DirectoryCopyPackagingElement> chooseAndCreate(@NotNull ArtifactEditorContext context, @NotNull Artifact artifact,
|
||||
@NotNull CompositePackagingElement<?> parent) {
|
||||
final FileChooserDescriptor descriptor = new FileChooserDescriptor(false, true, false, false, false, true);
|
||||
final FileChooserDialog chooser = FileChooserFactory.getInstance().createFileChooser(descriptor, context.getProject());
|
||||
final VirtualFile[] files = chooser.choose(null, context.getProject());
|
||||
final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createMultipleFoldersDescriptor();
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(context.getProject(), descriptor);
|
||||
final List<DirectoryCopyPackagingElement> list = new ArrayList<DirectoryCopyPackagingElement>();
|
||||
for (VirtualFile file : files) {
|
||||
list.add(new DirectoryCopyPackagingElement(file.getPath()));
|
||||
|
||||
@@ -261,12 +261,12 @@ public class ManifestFileUtil {
|
||||
public static VirtualFile showDialogAndCreateManifest(final ArtifactEditorContext context, final CompositePackagingElement<?> element) {
|
||||
FileChooserDescriptor descriptor = createDescriptorForManifestDirectory();
|
||||
final VirtualFile directory = suggestManifestFileDirectory(element, context, context.getArtifactType());
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(context.getProject(), descriptor, directory);
|
||||
if (files.length != 1) {
|
||||
final VirtualFile file = FileChooser.chooseFile(context.getProject(), descriptor, directory);
|
||||
if (file == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
return createManifestFile(files[0], context.getProject());
|
||||
return createManifestFile(file, context.getProject());
|
||||
}
|
||||
|
||||
@Nullable
|
||||
|
||||
+3
-3
@@ -105,10 +105,10 @@ public abstract class ElementWithManifestPropertiesPanel<E extends CompositeElem
|
||||
}
|
||||
};
|
||||
descriptor.setTitle("Specify Path to MANIFEST.MF file");
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(myContext.getProject(), descriptor);
|
||||
if (files.length != 1) return;
|
||||
final VirtualFile file = FileChooser.chooseFile(myContext.getProject(), descriptor, null);
|
||||
if (file == null) return;
|
||||
|
||||
ManifestFileUtil.addManifestFileToLayout(files[0].getPath(), myContext, myElement);
|
||||
ManifestFileUtil.addManifestFileToLayout(file.getPath(), myContext, myElement);
|
||||
updateManifest();
|
||||
myContext.getThisArtifactEditor().updateLayoutTree();
|
||||
}
|
||||
|
||||
+2
-1
@@ -27,6 +27,7 @@ import com.intellij.openapi.extensions.ExtensionPointName;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.project.ProjectBundle;
|
||||
import com.intellij.openapi.roots.*;
|
||||
@@ -256,7 +257,7 @@ public class AttachSourcesNotificationProvider implements EditorNotifications.Pr
|
||||
}
|
||||
|
||||
public ActionCallback perform(final List<LibraryOrderEntry> libraries) {
|
||||
FileChooserDescriptor descriptor = new FileChooserDescriptor(false, true, true, false, true, true);
|
||||
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createMultipleJavaPathDescriptor();
|
||||
descriptor.setTitle(ProjectBundle.message("library.attach.sources.action"));
|
||||
descriptor.setDescription(ProjectBundle.message("library.attach.sources.description"));
|
||||
final Library firstLibrary = libraries.get(0).getLibrary();
|
||||
|
||||
@@ -25,6 +25,7 @@ import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.application.ApplicationNamesInfo;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.ui.Messages;
|
||||
import com.intellij.openapi.ui.MultiLineLabelUI;
|
||||
import com.intellij.openapi.util.Computable;
|
||||
@@ -107,7 +108,7 @@ public class SourcePathsStep extends AbstractStepWithProgress<List<Trinity<Strin
|
||||
myTfSourceDirectoryName = new JTextField(suggestSourceDirectoryName());
|
||||
final JLabel srcPathLabel = new JLabel(IdeBundle.message("prompt.enter.relative.path.to.module.content.root", File.separator));
|
||||
panel.add(srcPathLabel, new GridBagConstraints(0, GridBagConstraints.RELATIVE, 1, 1, 1.0, 0.0, GridBagConstraints.NORTHWEST, GridBagConstraints.HORIZONTAL, new Insets(8, 30, 0, 0), 0, 0));
|
||||
final FileChooserDescriptor chooserDescriptor = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
final FileChooserDescriptor chooserDescriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
chooserDescriptor.setIsTreeRootVisible(true);
|
||||
final FieldPanel fieldPanel = createFieldPanel(myTfSourceDirectoryName, null, new BrowsePathListener(myTfSourceDirectoryName, chooserDescriptor));
|
||||
panel.add(fieldPanel, new GridBagConstraints(0, GridBagConstraints.RELATIVE, 1, 1, 1.0, 0.0, GridBagConstraints.NORTHWEST, GridBagConstraints.HORIZONTAL, new Insets(8, 30, 0, 10), 0, 0));
|
||||
|
||||
@@ -17,6 +17,7 @@ package com.intellij.openapi.roots.ui.configuration;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.ProjectBundle;
|
||||
import com.intellij.openapi.roots.AnnotationOrderRootType;
|
||||
import com.intellij.openapi.roots.ui.util.CellAppearance;
|
||||
@@ -247,7 +248,7 @@ public class AnnotationsEditor extends ModuleElementsEditor {
|
||||
private final FileChooserDescriptor myDescriptor;
|
||||
|
||||
public AddPathActionListener() {
|
||||
myDescriptor = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
myDescriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
myDescriptor.setTitle(ProjectBundle.message("add.external.annotations.path.title"));
|
||||
myDescriptor.setDescription(ProjectBundle.message("add.external.annotations.path.description"));
|
||||
}
|
||||
|
||||
+2
-1
@@ -24,6 +24,7 @@ package com.intellij.openapi.roots.ui.configuration;
|
||||
|
||||
import com.intellij.ide.util.BrowseFilesListener;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.fileChooser.FileChooserFactory;
|
||||
import com.intellij.openapi.project.ProjectBundle;
|
||||
import com.intellij.openapi.roots.CompilerModuleExtension;
|
||||
@@ -179,7 +180,7 @@ public class BuildElementsEditor extends ModuleElementsEditor {
|
||||
|
||||
private CommitableFieldPanel createOutputPathPanel(final String title, final CommitPathRunnable commitPathRunnable) {
|
||||
final JTextField textField = new JTextField();
|
||||
final FileChooserDescriptor outputPathsChooserDescriptor = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
final FileChooserDescriptor outputPathsChooserDescriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
outputPathsChooserDescriptor.setHideIgnored(false);
|
||||
InsertPathAction.addTo(textField, outputPathsChooserDescriptor);
|
||||
FileChooserFactory.getInstance().installFileCompletion(textField, outputPathsChooserDescriptor, true, null);
|
||||
|
||||
@@ -17,6 +17,7 @@ package com.intellij.openapi.roots.ui.configuration;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.ProjectBundle;
|
||||
import com.intellij.openapi.projectRoots.ui.Util;
|
||||
import com.intellij.openapi.roots.JavadocOrderRootType;
|
||||
@@ -260,7 +261,7 @@ public class JavadocEditor extends ModuleElementsEditor {
|
||||
private final FileChooserDescriptor myDescriptor;
|
||||
|
||||
public AddPathActionListener() {
|
||||
myDescriptor = new FileChooserDescriptor(false, true, true, false, true, true);
|
||||
myDescriptor = FileChooserDescriptorFactory.createMultipleJavaPathDescriptor();
|
||||
myDescriptor.setTitle(ProjectBundle.message("module.javadoc.add.path.title"));
|
||||
myDescriptor.setDescription(ProjectBundle.message("module.javadoc.add.path.prompt"));
|
||||
}
|
||||
|
||||
+2
-1
@@ -21,6 +21,7 @@ import com.intellij.ide.util.BrowseFilesListener;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.components.StorageScheme;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.fileChooser.FileChooserFactory;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
import com.intellij.openapi.project.Project;
|
||||
@@ -324,7 +325,7 @@ public class ProjectConfigurable extends NamedConfigurable<Project> implements D
|
||||
private void createUIComponents() {
|
||||
myLanguageLevelCombo = new LanguageLevelCombo();
|
||||
final JTextField textField = new JTextField();
|
||||
final FileChooserDescriptor outputPathsChooserDescriptor = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
final FileChooserDescriptor outputPathsChooserDescriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
InsertPathAction.addTo(textField, outputPathsChooserDescriptor);
|
||||
outputPathsChooserDescriptor.setHideIgnored(false);
|
||||
BrowseFilesListener listener = new BrowseFilesListener(textField, "", ProjectBundle.message("project.compiler.output"), outputPathsChooserDescriptor);
|
||||
|
||||
+4
-3
@@ -13,6 +13,7 @@
|
||||
package com.intellij.openapi.roots.ui.configuration.libraryEditor;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.project.ProjectBundle;
|
||||
import com.intellij.openapi.projectRoots.ui.Util;
|
||||
@@ -86,7 +87,7 @@ public class DefaultLibraryRootsComponentDescriptor extends LibraryRootsComponen
|
||||
}
|
||||
|
||||
public FileChooserDescriptor createChooserDescriptor() {
|
||||
return new FileChooserDescriptor(false, true, false, false, false, true);
|
||||
return FileChooserDescriptorFactory.createMultipleFoldersDescriptor();
|
||||
}
|
||||
|
||||
public boolean addAsJarDirectories() {
|
||||
@@ -113,7 +114,7 @@ public class DefaultLibraryRootsComponentDescriptor extends LibraryRootsComponen
|
||||
}
|
||||
|
||||
public FileChooserDescriptor createChooserDescriptor() {
|
||||
return new FileChooserDescriptor(false, true, false, false, false, true);
|
||||
return FileChooserDescriptorFactory.createMultipleFoldersDescriptor();
|
||||
}
|
||||
|
||||
public boolean addAsJarDirectories() {
|
||||
@@ -168,7 +169,7 @@ public class DefaultLibraryRootsComponentDescriptor extends LibraryRootsComponen
|
||||
|
||||
@Override
|
||||
public FileChooserDescriptor createChooserDescriptor() {
|
||||
return new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
return FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+2
-1
@@ -21,6 +21,7 @@
|
||||
package com.intellij.openapi.roots.ui.configuration.libraryEditor;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.ProjectBundle;
|
||||
import com.intellij.openapi.projectRoots.JavaSdk;
|
||||
import com.intellij.openapi.projectRoots.JavaSdkVersion;
|
||||
@@ -57,7 +58,7 @@ public class JavadocOrderRootTypeUIFactory implements OrderRootTypeUIFactory {
|
||||
public JavadocPathsEditor(Sdk sdk) {
|
||||
super(ProjectBundle.message("sdk.configure.javadoc.tab"),
|
||||
JavadocOrderRootType.getInstance(),
|
||||
new FileChooserDescriptor(false, true, true, false, true, true));
|
||||
FileChooserDescriptorFactory.createMultipleJavaPathDescriptor());
|
||||
mySdk = sdk;
|
||||
}
|
||||
|
||||
|
||||
@@ -1094,7 +1094,7 @@ public class ExpectedTypesProvider {
|
||||
}
|
||||
if (("assertEquals".equals(name) || "assertSame".equals(name)) && method.getParameterList().getParametersCount() == 2 && args.length == 2) {
|
||||
ExpectedTypeInfo info = getEqualsType(args[0] == argument ? args[1] : args[0]);
|
||||
if (info != null) {
|
||||
if (info != null && parameterType.isAssignableFrom(info.getDefaultType())) {
|
||||
return info.getDefaultType();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -232,26 +232,24 @@ public class ExternalAnnotationsManagerImpl extends ExternalAnnotationsManager {
|
||||
final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
descriptor.setTitle(ProjectBundle.message("external.annotations.root.chooser.title", entry.getPresentableName()));
|
||||
descriptor.setDescription(ProjectBundle.message("external.annotations.root.chooser.description"));
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(project, descriptor);
|
||||
if (files.length > 0) {
|
||||
final VirtualFile file = FileChooser.chooseFile(project, descriptor);
|
||||
if (file != null) {
|
||||
new WriteCommandAction(project) {
|
||||
protected void run(final Result result) throws Throwable {
|
||||
if (files[0] != null) {
|
||||
appendChosenAnnotationsRoot(entry, files[0]);
|
||||
final List<XmlFile> xmlFiles = findExternalAnnotationsFile(listOwner);
|
||||
if (xmlFiles != null) { //file already exists under appeared content root
|
||||
if (!CodeInsightUtilBase.preparePsiElementForWrite(xmlFiles.get(0))) return;
|
||||
annotateExternally(listOwner, annotationFQName, xmlFiles.get(0), fromFile, value);
|
||||
}
|
||||
else {
|
||||
final XmlFile annotationsXml = createAnnotationsXml(files[0], packageName);
|
||||
if (annotationsXml != null) {
|
||||
final List<XmlFile> createdFiles = new ArrayList<XmlFile>();
|
||||
createdFiles.add(annotationsXml);
|
||||
myExternalAnnotations.put(getFQN(packageName, virtualFile), createdFiles);
|
||||
}
|
||||
annotateExternally(listOwner, annotationFQName, annotationsXml, fromFile, value);
|
||||
appendChosenAnnotationsRoot(entry, file);
|
||||
final List<XmlFile> xmlFiles = findExternalAnnotationsFile(listOwner);
|
||||
if (xmlFiles != null) { //file already exists under appeared content root
|
||||
if (!CodeInsightUtilBase.preparePsiElementForWrite(xmlFiles.get(0))) return;
|
||||
annotateExternally(listOwner, annotationFQName, xmlFiles.get(0), fromFile, value);
|
||||
}
|
||||
else {
|
||||
final XmlFile annotationsXml = createAnnotationsXml(file, packageName);
|
||||
if (annotationsXml != null) {
|
||||
final List<XmlFile> createdFiles = new ArrayList<XmlFile>();
|
||||
createdFiles.add(annotationsXml);
|
||||
myExternalAnnotations.put(getFQN(packageName, virtualFile), createdFiles);
|
||||
}
|
||||
annotateExternally(listOwner, annotationFQName, annotationsXml, fromFile, value);
|
||||
}
|
||||
}
|
||||
}.execute();
|
||||
|
||||
+2
-1
@@ -17,6 +17,7 @@ package com.intellij.codeInsight.daemon.impl.quickfix;
|
||||
|
||||
import com.intellij.codeInsight.daemon.QuickFixBundle;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
@@ -75,7 +76,7 @@ public class LocateLibraryDialog extends DialogWrapper {
|
||||
myCopyToDir.setText(new File (module.getModuleFilePath()).getParent());
|
||||
myCopyToDir.addBrowseFolderListener(QuickFixBundle.message("add.library.title.choose.folder"),
|
||||
QuickFixBundle.message("add.library.description.choose.folder"), myProject,
|
||||
new FileChooserDescriptor(false,true,false,false,false,false));
|
||||
FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
|
||||
final ActionListener listener = new ActionListener() {
|
||||
public void actionPerformed(final ActionEvent e) {
|
||||
|
||||
+5
-4
@@ -20,6 +20,7 @@ import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.roots.ProjectFileIndex;
|
||||
import com.intellij.openapi.roots.ProjectRootManager;
|
||||
@@ -74,12 +75,12 @@ public class MoveClassesOrPackagesToNewDirectoryDialog extends DialogWrapper {
|
||||
myElementsToMove = elementsToMove;
|
||||
myMoveCallback = moveCallback;
|
||||
myDestDirectoryField.setText(FileUtil.toSystemDependentName(directory.getVirtualFile().getPath()));
|
||||
final FileChooserDescriptor descriptor = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
myDestDirectoryField.getButton().addActionListener(new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(myDirectory.getProject(), descriptor, directory.getVirtualFile());
|
||||
if (files.length == 1) {
|
||||
myDestDirectoryField.setText(FileUtil.toSystemDependentName(files[0].getPath()));
|
||||
final VirtualFile file = FileChooser.chooseFile(myDirectory.getProject(), descriptor, directory.getVirtualFile());
|
||||
if (file != null) {
|
||||
myDestDirectoryField.setText(FileUtil.toSystemDependentName(file.getPath()));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -84,7 +84,7 @@ public abstract class MethodSignatureBase implements MethodSignature {
|
||||
|
||||
@SuppressWarnings({"HardCodedStringLiteral"})
|
||||
public String toString() {
|
||||
String s = "MethodSignature: ";
|
||||
String s = getClass().getSimpleName() + ": ";
|
||||
final PsiTypeParameter[] typeParameters = getTypeParameters();
|
||||
if (typeParameters.length != 0) {
|
||||
String sep = "<";
|
||||
|
||||
@@ -16,7 +16,9 @@
|
||||
|
||||
package com.intellij.codeInsight;
|
||||
|
||||
import com.intellij.codeInsight.completion.CompletionPhase;
|
||||
import com.intellij.codeInsight.completion.CompletionProgressIndicator;
|
||||
import com.intellij.codeInsight.completion.CompletionType;
|
||||
import com.intellij.codeInsight.completion.impl.CompletionServiceImpl;
|
||||
import com.intellij.codeInsight.editorActions.CompletionAutoPopupHandler;
|
||||
import com.intellij.codeInsight.hint.ShowParameterInfoHandler;
|
||||
@@ -38,7 +40,6 @@ import com.intellij.psi.PsiDocumentManager;
|
||||
import com.intellij.psi.PsiElement;
|
||||
import com.intellij.psi.PsiFile;
|
||||
import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil;
|
||||
import com.intellij.psi.util.PsiUtilBase;
|
||||
import com.intellij.util.Alarm;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@@ -83,34 +84,43 @@ public class AutoPopupController implements Disposable {
|
||||
}
|
||||
|
||||
public void autoPopupMemberLookup(final Editor editor, @Nullable final Condition<PsiFile> condition){
|
||||
scheduleAutoPopup(editor, condition);
|
||||
}
|
||||
|
||||
public void scheduleAutoPopup(final Editor editor, @Nullable final Condition<PsiFile> condition) {
|
||||
if (ApplicationManager.getApplication().isUnitTestMode() &&
|
||||
!CompletionAutoPopupHandler.ourTestingAutopopup) {
|
||||
return;
|
||||
}
|
||||
|
||||
final CodeInsightSettings settings = CodeInsightSettings.getInstance();
|
||||
if (settings.AUTO_POPUP_COMPLETION_LOOKUP) {
|
||||
if (PsiUtilBase.getPsiFileInEditor(editor, myProject) == null) return;
|
||||
final Runnable request = new Runnable(){
|
||||
public void run(){
|
||||
if (!myProject.isDisposed() && !editor.isDisposed()) {
|
||||
CompletionAutoPopupHandler.scheduleAutoPopup(editor, condition);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
addRequest(request, settings.AUTO_LOOKUP_DELAY);
|
||||
if (!CodeInsightSettings.getInstance().AUTO_POPUP_COMPLETION_LOOKUP) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
public void invokeAutoPopupRunnable(final Runnable request, final int delay) {
|
||||
if (ApplicationManager.getApplication().isUnitTestMode() && !CompletionAutoPopupHandler.ourTestingAutopopup) return;
|
||||
final CompletionProgressIndicator currentCompletion = CompletionServiceImpl.getCompletionService().getCurrentCompletion();
|
||||
if (currentCompletion != null) {
|
||||
currentCompletion.closeAndFinish(true);
|
||||
}
|
||||
|
||||
addRequest(request, delay);
|
||||
final CompletionPhase.AutoPopupAlarm phase = new CompletionPhase.AutoPopupAlarm(false, editor);
|
||||
CompletionServiceImpl.setCompletionPhase(phase);
|
||||
|
||||
addRequest(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
CompletionAutoPopupHandler.runLaterWithCommitted(myProject, editor.getDocument(), new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if (phase.isExpired()) return;
|
||||
|
||||
PsiFile file = PsiDocumentManager.getInstance(myProject).getPsiFile(editor.getDocument());
|
||||
if (file != null && condition != null && !condition.value(file)) return;
|
||||
|
||||
CompletionAutoPopupHandler.invokeCompletion(CompletionType.BASIC, true, myProject, editor, 0);
|
||||
}
|
||||
});
|
||||
}
|
||||
}, CodeInsightSettings.getInstance().AUTO_LOOKUP_DELAY);
|
||||
}
|
||||
|
||||
@TestOnly
|
||||
|
||||
+2
-1
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.intellij.codeInsight.completion;
|
||||
|
||||
import com.intellij.codeInsight.AutoPopupController;
|
||||
import com.intellij.codeInsight.CodeInsightSettings;
|
||||
import com.intellij.codeInsight.completion.impl.CompletionServiceImpl;
|
||||
import com.intellij.codeInsight.completion.impl.CompletionSorterImpl;
|
||||
@@ -599,7 +600,7 @@ public class CompletionProgressIndicator extends ProgressIndicatorBase implement
|
||||
|
||||
public void scheduleRestart() {
|
||||
if (isAutopopupCompletion() && hideAutopopupIfMeaningless()) {
|
||||
CompletionAutoPopupHandler.scheduleAutoPopup(myEditor, null);
|
||||
AutoPopupController.getInstance(getProject()).scheduleAutoPopup(myEditor, null);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
+6
-3
@@ -53,8 +53,11 @@ public class CompletionServiceImpl extends CompletionService{
|
||||
ProjectManager.getInstance().addProjectManagerListener(new ProjectManagerAdapter() {
|
||||
@Override
|
||||
public void projectClosing(Project project) {
|
||||
LookupManager.getInstance(project).hideActiveLookup();
|
||||
setCompletionPhase(CompletionPhase.NoCompletion);
|
||||
CompletionProgressIndicator indicator = getCurrentCompletion();
|
||||
if (indicator != null && indicator.getProject() == project) {
|
||||
LookupManager.getInstance(project).hideActiveLookup();
|
||||
setCompletionPhase(CompletionPhase.NoCompletion);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -214,7 +217,7 @@ public class CompletionServiceImpl extends CompletionService{
|
||||
CompletionPhase oldPhase = getCompletionPhase();
|
||||
CompletionProgressIndicator oldIndicator = oldPhase.indicator;
|
||||
if (oldIndicator != null && !(phase instanceof CompletionPhase.BgCalculation)) {
|
||||
LOG.assertTrue(!oldIndicator.isRunning() || oldIndicator.isCanceled(), "don't change phase during running completion");
|
||||
LOG.assertTrue(!oldIndicator.isRunning() || oldIndicator.isCanceled(), "don't change phase during running completion: oldPhase=" + oldPhase);
|
||||
}
|
||||
|
||||
Disposer.dispose(oldPhase);
|
||||
|
||||
+3
-29
@@ -29,13 +29,11 @@ import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.fileTypes.FileType;
|
||||
import com.intellij.openapi.project.IndexNotReadyException;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.Condition;
|
||||
import com.intellij.psi.PsiDocumentManager;
|
||||
import com.intellij.psi.PsiFile;
|
||||
import com.intellij.psi.impl.PsiDocumentManagerImpl;
|
||||
import com.intellij.psi.impl.source.tree.injected.InjectedLanguageUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* @author peter
|
||||
@@ -83,35 +81,10 @@ public class CompletionAutoPopupHandler extends TypedHandlerDelegate {
|
||||
return Result.CONTINUE;
|
||||
}
|
||||
|
||||
scheduleAutoPopup(editor, null);
|
||||
AutoPopupController.getInstance(project).scheduleAutoPopup(editor, null);
|
||||
return Result.STOP;
|
||||
}
|
||||
|
||||
public static void scheduleAutoPopup(final Editor editor, @Nullable final Condition<PsiFile> condition) {
|
||||
final Project project = editor.getProject();
|
||||
if (project == null) return;
|
||||
|
||||
final CompletionPhase.AutoPopupAlarm phase = new CompletionPhase.AutoPopupAlarm(false, editor);
|
||||
CompletionServiceImpl.setCompletionPhase(phase);
|
||||
|
||||
AutoPopupController.getInstance(project).invokeAutoPopupRunnable(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
runLaterWithCommitted(project, editor.getDocument(), new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if (phase.isExpired()) return;
|
||||
|
||||
PsiFile file = PsiDocumentManager.getInstance(project).getPsiFile(editor.getDocument());
|
||||
if (file != null && condition != null && !condition.value(file)) return;
|
||||
|
||||
invokeCompletion(CompletionType.BASIC, true, project, editor, 0);
|
||||
}
|
||||
});
|
||||
}
|
||||
}, CodeInsightSettings.getInstance().AUTO_LOOKUP_DELAY);
|
||||
}
|
||||
|
||||
public static void invokeCompletion(CompletionType completionType,
|
||||
boolean autopopup,
|
||||
Project project, Editor editor, int time) {
|
||||
@@ -130,7 +103,8 @@ public class CompletionAutoPopupHandler extends TypedHandlerDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
public static void runLaterWithCommitted(@NotNull final Project project, final Document document, final Runnable runnable) {
|
||||
public static void runLaterWithCommitted(@NotNull final Project project,
|
||||
@NotNull final Document document, @NotNull final Runnable runnable) {
|
||||
final long beforeStamp = document.getModificationStamp();
|
||||
((PsiDocumentManagerImpl)PsiDocumentManager.getInstance(project)).performWhenAllCommitted(new Runnable() {
|
||||
@Override
|
||||
|
||||
@@ -16,10 +16,10 @@
|
||||
|
||||
package com.intellij.codeInsight.lookup.impl;
|
||||
|
||||
import com.intellij.codeInsight.AutoPopupController;
|
||||
import com.intellij.codeInsight.completion.*;
|
||||
import com.intellij.codeInsight.completion.impl.CompletionServiceImpl;
|
||||
import com.intellij.codeInsight.editorActions.AutoHardWrapHandler;
|
||||
import com.intellij.codeInsight.editorActions.CompletionAutoPopupHandler;
|
||||
import com.intellij.codeInsight.lookup.CharFilter;
|
||||
import com.intellij.codeInsight.lookup.LookupElement;
|
||||
import com.intellij.codeInsight.lookup.LookupManager;
|
||||
@@ -81,7 +81,7 @@ public class TypedHandler extends TypedActionHandlerBase {
|
||||
});
|
||||
lookup.appendPrefix(charTyped);
|
||||
if (lookup.isStartCompletionWhenNothingMatches() && lookup.getItems().isEmpty()) {
|
||||
CompletionAutoPopupHandler.scheduleAutoPopup(editor, null);
|
||||
AutoPopupController.getInstance(editor.getProject()).scheduleAutoPopup(editor, null);
|
||||
}
|
||||
|
||||
AutoHardWrapHandler.getInstance().wrapLineIfNecessary(editor, dataContext, modificationStamp);
|
||||
|
||||
+3
-4
@@ -81,16 +81,15 @@ public class ViewOfflineResultsAction extends AnAction implements DumbAware {
|
||||
|
||||
LOG.assertTrue(project != null);
|
||||
|
||||
final VirtualFile[] virtualFiles = FileChooser.chooseFiles(project, BrowseFilesListener.SINGLE_DIRECTORY_DESCRIPTOR);
|
||||
if (virtualFiles.length == 0) return;
|
||||
if (!virtualFiles[0].isDirectory()) return;
|
||||
final VirtualFile virtualFile = FileChooser.chooseFile(project, BrowseFilesListener.SINGLE_DIRECTORY_DESCRIPTOR);
|
||||
if (virtualFile == null || !virtualFile.isDirectory()) return;
|
||||
|
||||
final Map<String, Map<String, Set<OfflineProblemDescriptor>>> resMap =
|
||||
new HashMap<String, Map<String, Set<OfflineProblemDescriptor>>>();
|
||||
final String [] profileName = new String[1];
|
||||
final Runnable process = new Runnable() {
|
||||
public void run() {
|
||||
final VirtualFile[] files = virtualFiles[0].getChildren();
|
||||
final VirtualFile[] files = virtualFile.getChildren();
|
||||
try {
|
||||
for (final VirtualFile inspectionFile : files) {
|
||||
if (inspectionFile.isDirectory()) continue;
|
||||
|
||||
@@ -71,9 +71,9 @@ public class CommonProgramParametersPanel extends JPanel {
|
||||
FileChooserDescriptor fileChooserDescriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
fileChooserDescriptor.setTitle(ExecutionBundle.message("select.working.directory.message"));
|
||||
fileChooserDescriptor.putUserData(LangDataKeys.MODULE_CONTEXT, myModuleContext);
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myWorkingDirectoryComponent, fileChooserDescriptor);
|
||||
if (files.length != 0) {
|
||||
setWorkingDirectory(files[0].getPresentableUrl());
|
||||
VirtualFile file = FileChooser.chooseFile(myWorkingDirectoryComponent, fileChooserDescriptor, null);
|
||||
if (file != null) {
|
||||
setWorkingDirectory(file.getPresentableUrl());
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -47,11 +47,11 @@ public class DumpIntentionsAction extends AnAction implements DumbAware {
|
||||
}
|
||||
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
final VirtualFile[] files =
|
||||
FileChooser.chooseFiles(e.getData(PlatformDataKeys.PROJECT), FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
if (files.length > 0) {
|
||||
final VirtualFile file =
|
||||
FileChooser.chooseFile(e.getData(PlatformDataKeys.PROJECT), FileChooserDescriptorFactory.createSingleFolderDescriptor(), null);
|
||||
if (file != null) {
|
||||
final List<IntentionActionMetaData> list = IntentionManagerSettings.getInstance().getMetaData();
|
||||
final File root = VfsUtil.virtualToIoFile(files[0]);
|
||||
final File root = VfsUtil.virtualToIoFile(file);
|
||||
Element el = new Element("root");
|
||||
Map<String, Element> categoryMap = new HashMap<String, Element>();
|
||||
for (IntentionActionMetaData metaData : list) {
|
||||
|
||||
+2
-1
@@ -15,6 +15,7 @@ package com.intellij.openapi.roots.libraries.ui;
|
||||
import com.intellij.openapi.actionSystem.LangDataKeys;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.roots.OrderRootType;
|
||||
import com.intellij.openapi.roots.ui.configuration.libraryEditor.LibraryEditor;
|
||||
@@ -33,7 +34,7 @@ public abstract class ChooserBasedAttachRootButtonDescriptor extends AttachRootB
|
||||
}
|
||||
|
||||
public FileChooserDescriptor createChooserDescriptor() {
|
||||
return new FileChooserDescriptor(false, true, true, false, true, true);
|
||||
return FileChooserDescriptorFactory.createMultipleJavaPathDescriptor();
|
||||
}
|
||||
|
||||
public abstract String getChooserTitle(final @Nullable String libraryName);
|
||||
|
||||
+2
-1
@@ -26,6 +26,7 @@ import com.intellij.openapi.actionSystem.DefaultActionGroup;
|
||||
import com.intellij.openapi.actionSystem.Presentation;
|
||||
import com.intellij.openapi.actionSystem.ex.CustomComponentAction;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.fileChooser.FileSystemTree;
|
||||
import com.intellij.openapi.fileChooser.actions.NewFolderAction;
|
||||
import com.intellij.openapi.fileChooser.ex.FileSystemTreeImpl;
|
||||
@@ -91,7 +92,7 @@ public class ContentEntryTreeEditor {
|
||||
myTreePanel.add(new ToolbarPanel(scrollPane, myEditingActionsGroup), BorderLayout.CENTER);
|
||||
|
||||
myTreePanel.setVisible(false);
|
||||
myDescriptor = new FileChooserDescriptor(false, true, false, false, false, true);
|
||||
myDescriptor = FileChooserDescriptorFactory.createMultipleFoldersDescriptor();
|
||||
myDescriptor.setShowFileSystemRoots(false);
|
||||
}
|
||||
|
||||
|
||||
+6
-6
@@ -122,12 +122,12 @@ public abstract class InspectionToolsConfigurable extends BaseConfigurable imple
|
||||
}
|
||||
};
|
||||
descriptor.setDescription("Choose profile file");
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(myWholePanel, descriptor);
|
||||
if (files.length == 0) return;
|
||||
final VirtualFile file = FileChooser.chooseFile(myWholePanel, descriptor, null);
|
||||
if (file == null) return;
|
||||
InspectionProfileImpl profile =
|
||||
new InspectionProfileImpl("TempProfile", InspectionToolRegistrar.getInstance(), myProfileManager);
|
||||
try {
|
||||
Element rootElement = JDOMUtil.loadDocument(VfsUtil.virtualToIoFile(files[0])).getRootElement();
|
||||
Element rootElement = JDOMUtil.loadDocument(VfsUtil.virtualToIoFile(file)).getRootElement();
|
||||
if (Comparing.strEqual(rootElement.getName(), "component")) {//import right from .idea/inspectProfiles/xxx.xml
|
||||
rootElement = (Element)rootElement.getChildren().get(0);
|
||||
}
|
||||
@@ -187,15 +187,15 @@ public abstract class InspectionToolsConfigurable extends BaseConfigurable imple
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
descriptor.setDescription("Choose directory to store profile file");
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(myWholePanel, descriptor);
|
||||
if (files.length == 0) return;
|
||||
final VirtualFile file = FileChooser.chooseFile(myWholePanel, descriptor, null);
|
||||
if (file == null) return;
|
||||
final Element element = new Element("inspections");
|
||||
try {
|
||||
final SingleInspectionProfilePanel panel = getSelectedPanel();
|
||||
LOG.assertTrue(panel != null);
|
||||
final InspectionProfileImpl profile = (InspectionProfileImpl)panel.getSelectedProfile();
|
||||
profile.writeExternal(element);
|
||||
final String filePath = FileUtil.toSystemDependentName(files[0].getPath()) + File.separator + FileUtil.sanitizeFileName(profile.getName()) + ".xml";
|
||||
final String filePath = FileUtil.toSystemDependentName(file.getPath()) + File.separator + FileUtil.sanitizeFileName(profile.getName()) + ".xml";
|
||||
if (new File(filePath).isFile()) {
|
||||
if (Messages.showOkCancelDialog(myWholePanel, "File \'" + filePath + "\' already exist. Do you want to overwrite it?", "Warning", Messages.getQuestionIcon()) != DialogWrapper.OK_EXIT_CODE) return;
|
||||
}
|
||||
|
||||
@@ -229,9 +229,8 @@ public class ToolEditorDialog extends DialogWrapper {
|
||||
new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor();
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myProject, descriptor);
|
||||
if (files.length != 0) {
|
||||
VirtualFile file = files[0];
|
||||
VirtualFile file = FileChooser.chooseFile(myProject, descriptor, null);
|
||||
if (file != null) {
|
||||
myTfCommand.setText(file.getPresentableUrl());
|
||||
String workingDirectory = myTfCommandWorkingDirectory.getText();
|
||||
if (workingDirectory == null || workingDirectory.length() == 0){
|
||||
@@ -309,9 +308,9 @@ public class ToolEditorDialog extends DialogWrapper {
|
||||
new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myProject, descriptor);
|
||||
if (files.length != 0) {
|
||||
myTfCommandWorkingDirectory.setText(files[0].getPresentableUrl());
|
||||
VirtualFile file = FileChooser.chooseFile(myProject, descriptor);
|
||||
if (file != null) {
|
||||
myTfCommandWorkingDirectory.setText(file.getPresentableUrl());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -176,12 +176,12 @@ public class PlaybackDebugger implements UiDebuggerExtension, PlaybackRunner.Sta
|
||||
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
if (pathToFile() == null) {
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myComponent, FILE_DESCRIPTOR);
|
||||
if (files.length > 0) {
|
||||
VirtualFile selectedFile = files[0];
|
||||
VirtualFile selectedFile = FileChooser.chooseFile(myComponent, FILE_DESCRIPTOR, null);
|
||||
if (selectedFile != null) {
|
||||
myState.currentScript = selectedFile.getPresentableUrl();
|
||||
myCurrentScript.setText(myState.currentScript);
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
Messages.showErrorDialog("File to save is not selected.", "Cannot save script");
|
||||
return;
|
||||
}
|
||||
@@ -217,9 +217,8 @@ public class PlaybackDebugger implements UiDebuggerExtension, PlaybackRunner.Sta
|
||||
|
||||
@Override
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myComponent, FILE_DESCRIPTOR, pathToFile());
|
||||
if (files.length > 0) {
|
||||
VirtualFile selectedFile = files[0];
|
||||
VirtualFile selectedFile = FileChooser.chooseFile(myComponent, FILE_DESCRIPTOR, pathToFile());
|
||||
if (selectedFile != null) {
|
||||
myState.currentScript = selectedFile.getPresentableUrl();
|
||||
loadFrom(selectedFile);
|
||||
myCurrentScript.setText(myState.currentScript);
|
||||
|
||||
@@ -37,7 +37,6 @@ import com.intellij.openapi.vfs.LocalFileSystem;
|
||||
import com.intellij.openapi.vfs.VfsUtil;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.openapi.vfs.VirtualFileManager;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.download.DownloadableFileDescription;
|
||||
import com.intellij.util.download.FileDownloader;
|
||||
import com.intellij.util.io.UrlConnectionUtil;
|
||||
@@ -178,15 +177,15 @@ public class FileDownloaderImpl implements FileDownloader {
|
||||
final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
descriptor.setTitle(IdeBundle.message("dialog.directory.for.downloaded.files.title"));
|
||||
|
||||
final VirtualFile[] files;
|
||||
final VirtualFile file;
|
||||
if (myProject != null) {
|
||||
files = FileChooser.chooseFiles(myProject, descriptor, myProject.getBaseDir());
|
||||
file = FileChooser.chooseFile(myProject, descriptor, myProject.getBaseDir());
|
||||
}
|
||||
else {
|
||||
files = FileChooser.chooseFiles(myParent, descriptor);
|
||||
file = FileChooser.chooseFile(myParent, descriptor, null);
|
||||
}
|
||||
|
||||
return ArrayUtil.getFirstElement(files);
|
||||
return file;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
package com.intellij.execution.util;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
@@ -58,7 +59,7 @@ public class ExecutableDialog extends DialogWrapper {
|
||||
private void createUIComponents() {
|
||||
myExecutablePath = new TextFieldWithBrowseButton();
|
||||
myExecutablePath.setText(myExecutableValidator.getCurrentExecutable());
|
||||
FileChooserDescriptor descriptor = new FileChooserDescriptor(true, false, false, false, false, false);
|
||||
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor();
|
||||
myExecutablePath.addBrowseFolderListener(myExecutableValidator.getFileChooserTitle(), myExecutableValidator.getFileChooserDescription(),
|
||||
null, descriptor);
|
||||
myExecutablePath.getTextField().getDocument().addDocumentListener(new DocumentAdapter() {
|
||||
|
||||
@@ -17,6 +17,7 @@ package com.intellij.ide.util;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.util.SystemInfo;
|
||||
import com.intellij.openapi.vfs.LocalFileSystem;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
@@ -37,8 +38,8 @@ public class BrowseFilesListener implements ActionListener {
|
||||
private final String myTitle;
|
||||
private final String myDescription;
|
||||
private final FileChooserDescriptor myChooserDescriptor;
|
||||
public static final FileChooserDescriptor SINGLE_DIRECTORY_DESCRIPTOR = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
public static final FileChooserDescriptor SINGLE_FILE_DESCRIPTOR = new FileChooserDescriptor(true, false, false, false, false, false);
|
||||
public static final FileChooserDescriptor SINGLE_DIRECTORY_DESCRIPTOR = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
public static final FileChooserDescriptor SINGLE_FILE_DESCRIPTOR = FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor();
|
||||
|
||||
public BrowseFilesListener(JTextField textField, final String title, final String description, final FileChooserDescriptor chooserDescriptor) {
|
||||
myTextField = textField;
|
||||
|
||||
@@ -15,10 +15,12 @@
|
||||
*/
|
||||
package com.intellij.openapi.fileChooser;
|
||||
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.SystemInfo;
|
||||
import com.intellij.openapi.util.registry.Registry;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.Consumer;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@@ -26,6 +28,7 @@ import org.jetbrains.annotations.Nullable;
|
||||
import java.awt.*;
|
||||
|
||||
public class FileChooser {
|
||||
private static final Logger LOG = Logger.getInstance("#com.intellij.openapi.fileChooser.FileChooser");
|
||||
|
||||
private FileChooser() {}
|
||||
|
||||
@@ -39,6 +42,28 @@ public class FileChooser {
|
||||
return chooseFiles(parent, descriptor, null);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static VirtualFile chooseFile(Project project, FileChooserDescriptor descriptor) {
|
||||
return chooseFile(project, descriptor, null);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static VirtualFile chooseFile(Project project, FileChooserDescriptor descriptor, @Nullable VirtualFile toSelect) {
|
||||
LOG.assertTrue(!descriptor.isChooseMultiple());
|
||||
return ArrayUtil.getFirstElement(chooseFiles(project, descriptor, toSelect));
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static VirtualFile chooseFile(Component parent, FileChooserDescriptor descriptor) {
|
||||
return chooseFile(parent, descriptor, null);
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static VirtualFile chooseFile(Component parent, FileChooserDescriptor descriptor, @Nullable VirtualFile toSelect) {
|
||||
LOG.assertTrue(!descriptor.isChooseMultiple());
|
||||
return ArrayUtil.getFirstElement(chooseFiles(parent, descriptor, toSelect));
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static VirtualFile[] chooseFiles(Project project, FileChooserDescriptor descriptor, @Nullable VirtualFile toSelect) {
|
||||
FileChooserDialog chooser = FileChooserFactory.getInstance().createFileChooser(descriptor, project);
|
||||
|
||||
@@ -32,6 +32,9 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @see FileChooserDescriptorFactory
|
||||
*/
|
||||
public class FileChooserDescriptor implements Cloneable{
|
||||
private boolean myChooseFiles;
|
||||
private boolean myChooseFolders;
|
||||
@@ -51,6 +54,7 @@ public class FileChooserDescriptor implements Cloneable{
|
||||
private final Map<String, Object> myUserData = new HashMap<String, Object>();
|
||||
|
||||
/**
|
||||
* Creates new instance. Use methods from {@link FileChooserDescriptorFactory} for most used descriptors
|
||||
* @param chooseFiles controls whether files can be chosen
|
||||
* @param chooseFolders controls whether folders can be chosen
|
||||
* @param chooseJars
|
||||
|
||||
@@ -80,9 +80,9 @@ public class GuiUtils {
|
||||
return constructFieldWithBrowseButton(aTextField, new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.getDirectoryChooserDescriptor(aSearchedObjectName);
|
||||
VirtualFile[] files = FileChooser.chooseFiles(aTextField, descriptor);
|
||||
if (files.length != 0) {
|
||||
aTextField.setText(FileUtil.toSystemDependentName(files[0].getPath()));
|
||||
VirtualFile file = FileChooser.chooseFile(aTextField, descriptor);
|
||||
if (file != null) {
|
||||
aTextField.setText(FileUtil.toSystemDependentName(file.getPath()));
|
||||
aTextField.postActionEvent();
|
||||
}
|
||||
}
|
||||
@@ -94,10 +94,10 @@ public class GuiUtils {
|
||||
return constructFieldWithBrowseButton(aFieldWithHistory, new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.getFileChooserDescriptor(aSearchedObjectName);
|
||||
VirtualFile[] files = FileChooser.chooseFiles(aFieldWithHistory, descriptor);
|
||||
if (files.length != 0) {
|
||||
VirtualFile file = FileChooser.chooseFile(aFieldWithHistory, descriptor);
|
||||
if (file != null) {
|
||||
try {
|
||||
aFieldWithHistory.setText(VfsUtil.virtualToIoFile(files[0]).toURL().toString());
|
||||
aFieldWithHistory.setText(VfsUtil.virtualToIoFile(file).toURL().toString());
|
||||
}
|
||||
catch (MalformedURLException e1) {
|
||||
aFieldWithHistory.setText("");
|
||||
|
||||
+4
-5
@@ -23,6 +23,7 @@ import com.intellij.openapi.components.ExportableComponent;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
import com.intellij.openapi.ui.VerticalFlowLayout;
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
@@ -123,8 +124,7 @@ public class ChooseComponentsToExportDialog extends DialogWrapper {
|
||||
|
||||
@Nullable
|
||||
public static String chooseSettingsFile(String oldPath, Component parent, final String title, final String description) {
|
||||
FileChooserDescriptor chooserDescriptor;
|
||||
chooserDescriptor = new FileChooserDescriptor(true, true, true, true, false, false);
|
||||
FileChooserDescriptor chooserDescriptor = FileChooserDescriptorFactory.createSingleLocalFileDescriptor();
|
||||
chooserDescriptor.setDescription(description);
|
||||
chooserDescriptor.setHideIgnored(false);
|
||||
chooserDescriptor.setTitle(title);
|
||||
@@ -140,11 +140,10 @@ public class ChooseComponentsToExportDialog extends DialogWrapper {
|
||||
else {
|
||||
initialDir = null;
|
||||
}
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(parent, chooserDescriptor, initialDir);
|
||||
if (files.length == 0) {
|
||||
final VirtualFile file = FileChooser.chooseFile(parent, chooserDescriptor, initialDir);
|
||||
if (file == null) {
|
||||
return null;
|
||||
}
|
||||
VirtualFile file = files[0];
|
||||
String path;
|
||||
if (file.isDirectory()) {
|
||||
String defaultName = new File(DEFAULT_PATH).getName();
|
||||
|
||||
@@ -75,7 +75,7 @@ public class OpenFileAction extends AnAction implements DumbAware {
|
||||
}
|
||||
});
|
||||
|
||||
final FileChooserDescriptor descriptor = new FileChooserDescriptor(true, false, false, false, false, true);
|
||||
final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createMultipleFilesNoJarsDescriptor();
|
||||
descriptor.setTitle(IdeBundle.message("title.open.file"));
|
||||
|
||||
final String lastFilePath = project != null ? getLastFilePath(project) : null;
|
||||
|
||||
@@ -17,7 +17,6 @@ package com.intellij.internal.encodings;
|
||||
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
import com.intellij.openapi.vfs.CharsetToolkit;
|
||||
@@ -47,10 +46,9 @@ public class EncodingViewer extends DialogWrapper {
|
||||
initEncodings();
|
||||
myLoadFile.addActionListener(new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor();
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myPanel, descriptor);
|
||||
if (files.length != 0) {
|
||||
loadFrom(files[0]);
|
||||
VirtualFile file = FileChooser.chooseFile(myPanel, FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor());
|
||||
if (file != null) {
|
||||
loadFrom(file);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
+22
-28
@@ -37,15 +37,13 @@ import com.intellij.openapi.editor.event.VisibleAreaListener;
|
||||
import com.intellij.openapi.editor.ex.ScrollingModelEx;
|
||||
import com.intellij.openapi.editor.ex.util.EditorUtil;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
import com.intellij.util.ui.Animator;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.swing.event.ChangeEvent;
|
||||
import javax.swing.event.ChangeListener;
|
||||
import java.awt.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.util.ArrayList;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
|
||||
@@ -384,9 +382,6 @@ public class ScrollingModelImpl implements ScrollingModelEx {
|
||||
private static final int SCROLL_DURATION = 150;
|
||||
private static final int SCROLL_INTERVAL = 10;
|
||||
|
||||
private final Timer myTimer;
|
||||
private int myTicksCount = 0;
|
||||
|
||||
private final int myStartHOffset;
|
||||
private final int myStartVOffset;
|
||||
private final int myEndHOffset;
|
||||
@@ -404,6 +399,7 @@ public class ScrollingModelImpl implements ScrollingModelEx {
|
||||
|
||||
private final int myStepCount;
|
||||
private final double myPow;
|
||||
private final Animator myAnimator;
|
||||
|
||||
public AnimatedScrollingRunnable(int startHOffset,
|
||||
int startVOffset,
|
||||
@@ -435,13 +431,26 @@ public class ScrollingModelImpl implements ScrollingModelEx {
|
||||
|
||||
myStartCommand = CommandProcessor.getInstance().getCurrentCommand();
|
||||
|
||||
myTimer = UIUtil.createNamedTimer("Animated scroller",SCROLL_INTERVAL, new ActionListener() {
|
||||
public void actionPerformed(final ActionEvent e) {
|
||||
tick();
|
||||
myAnimator = new Animator("Animated scroller", myStepCount, SCROLL_INTERVAL, false, 0, 0, true) {
|
||||
@Override
|
||||
public void paintNow(float frame, float totalFrames, float cycle) {
|
||||
double time = (frame + 1) / (double)totalFrames;
|
||||
double fraction = timeToFraction(time);
|
||||
|
||||
final int hOffset = (int)(myStartHOffset + (myEndHOffset - myStartHOffset) * fraction + 0.5);
|
||||
final int vOffset = (int)(myStartVOffset + (myEndVOffset - myStartVOffset) * fraction + 0.5);
|
||||
|
||||
_scrollHorizontally(hOffset);
|
||||
_scrollVertically(vOffset);
|
||||
}
|
||||
});
|
||||
myTimer.setRepeats(true);
|
||||
myTimer.start();
|
||||
|
||||
@Override
|
||||
protected void paintCycleEnd() {
|
||||
finish(true);
|
||||
}
|
||||
};
|
||||
|
||||
myAnimator.resume();
|
||||
}
|
||||
|
||||
public Rectangle getTargetVisibleArea() {
|
||||
@@ -454,21 +463,6 @@ public class ScrollingModelImpl implements ScrollingModelEx {
|
||||
// return myStartCommand;
|
||||
//}
|
||||
|
||||
private void tick() {
|
||||
double time = (myTicksCount + 1) / (double)myStepCount;
|
||||
double fraction = timeToFraction(time);
|
||||
|
||||
final int hOffset = (int)(myStartHOffset + (myEndHOffset - myStartHOffset) * fraction + 0.5);
|
||||
final int vOffset = (int)(myStartVOffset + (myEndVOffset - myStartVOffset) * fraction + 0.5);
|
||||
|
||||
_scrollHorizontally(hOffset);
|
||||
_scrollVertically(vOffset);
|
||||
|
||||
if (++myTicksCount == myStepCount) {
|
||||
finish(true);
|
||||
}
|
||||
}
|
||||
|
||||
public void cancel(boolean scrollToTarget) {
|
||||
assertIsDispatchThread();
|
||||
finish(scrollToTarget);
|
||||
@@ -485,7 +479,7 @@ public class ScrollingModelImpl implements ScrollingModelEx {
|
||||
executePostRunnables();
|
||||
}
|
||||
|
||||
myTimer.stop();
|
||||
myAnimator.dispose();
|
||||
if (myCurrentAnimationRequest == this) {
|
||||
myCurrentAnimationRequest = null;
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@ import com.intellij.ide.ui.ListCellRendererWrapper;
|
||||
import com.intellij.openapi.application.ApplicationNamesInfo;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.ComponentWithBrowseButton;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
@@ -68,7 +69,7 @@ public class NewDirectoryProjectDialog extends DialogWrapper {
|
||||
myLocationField.setText(projectName.toString());
|
||||
myProjectNameTextField.setText(projectName.getName());
|
||||
|
||||
FileChooserDescriptor descriptor = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
ComponentWithBrowseButton.BrowseFolderActionListener<JTextField> listener =
|
||||
new ComponentWithBrowseButton.BrowseFolderActionListener<JTextField>("Select Location for Project Directory", "", myLocationField,
|
||||
project,
|
||||
|
||||
@@ -50,10 +50,10 @@ public class LocalPathCellEditor extends AbstractTableCellEditor {
|
||||
final FileChooserDescriptor d = getFileChooserDescriptor();
|
||||
String initial = (String)getCellEditorValue();
|
||||
VirtualFile initialFile = StringUtil.isNotEmpty(initial) ? LocalFileSystem.getInstance().findFileByPath(initial) : null;
|
||||
VirtualFile[] files =
|
||||
myProject != null ? FileChooser.chooseFiles(myProject, d, initialFile) : FileChooser.chooseFiles(table, d, initialFile);
|
||||
if (files.length == 1 && files[0] != null) {
|
||||
String path = files[0].getPresentableUrl();
|
||||
VirtualFile file =
|
||||
myProject != null ? FileChooser.chooseFile(myProject, d, initialFile) : FileChooser.chooseFile(table, d, initialFile);
|
||||
if (file != null) {
|
||||
String path = file.getPresentableUrl();
|
||||
if (SystemInfo.isWindows && path.length() == 2 && Character.isLetter(path.charAt(0)) && path.charAt(1) == ':') {
|
||||
path += "\\"; // make path absolute
|
||||
}
|
||||
|
||||
+2
-1
@@ -17,6 +17,7 @@ package com.intellij.execution.testframework.export;
|
||||
|
||||
import com.intellij.execution.ExecutionBundle;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.ui.TextComponentAccessor;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
@@ -77,7 +78,7 @@ public class ExportTestResultsForm {
|
||||
|
||||
myFolderField
|
||||
.addBrowseFolderListener(ExecutionBundle.message("export.test.results.output.folder.chooser.title"), null, null,
|
||||
new FileChooserDescriptor(false, true, false, false, false, false),
|
||||
FileChooserDescriptorFactory.createSingleFolderDescriptor(),
|
||||
TextComponentAccessor.TEXT_FIELD_WHOLE_TEXT, false);
|
||||
|
||||
myFileNameField.getDocument().addDocumentListener(new DocumentAdapter() {
|
||||
|
||||
+5
-5
@@ -23,6 +23,7 @@ import com.intellij.openapi.diff.impl.patch.PatchVirtualFileReader;
|
||||
import com.intellij.openapi.diff.impl.patch.TextFilePatch;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.fileTypes.FileTypes;
|
||||
import com.intellij.openapi.fileTypes.StdFileTypes;
|
||||
import com.intellij.openapi.project.Project;
|
||||
@@ -541,18 +542,17 @@ public class ApplyPatchDifferentiatedDialog extends DialogWrapper {
|
||||
|
||||
private class NewBaseSelector implements Runnable {
|
||||
public void run() {
|
||||
final FileChooserDescriptor descriptor = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
VirtualFile[] selectedFiles = FileChooser.chooseFiles(myProject, descriptor);
|
||||
if (selectedFiles.length != 1 || selectedFiles[0] == null) {
|
||||
final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
VirtualFile selectedFile = FileChooser.chooseFile(myProject, descriptor);
|
||||
if (selectedFile == null) {
|
||||
return;
|
||||
}
|
||||
final VirtualFile selectedValue = selectedFiles[0];
|
||||
|
||||
final List<FilePatchInProgress.PatchChange> selectedChanges = myChangesTreeList.getSelectedChanges();
|
||||
if (selectedChanges.size() >= 1) {
|
||||
for (FilePatchInProgress.PatchChange patchChange : selectedChanges) {
|
||||
final FilePatchInProgress patch = patchChange.getPatchInProgress();
|
||||
patch.setNewBase(selectedValue);
|
||||
patch.setNewBase(selectedFile);
|
||||
}
|
||||
updateTree(false);
|
||||
}
|
||||
|
||||
+2
-1
@@ -17,6 +17,7 @@
|
||||
package com.intellij.openapi.vcs.changes.ui;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.help.HelpManager;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
@@ -78,7 +79,7 @@ public class IgnoreUnversionedDialog extends DialogWrapper {
|
||||
myIgnoreDirectoryTextField.addBrowseFolderListener("Select Directory to Ignore",
|
||||
"Select the directory which will not be tracked for changes",
|
||||
project,
|
||||
new FileChooserDescriptor(false, true, false, false, false, false));
|
||||
FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
ActionListener listener = new ActionListener() {
|
||||
public void actionPerformed(final ActionEvent e) {
|
||||
updateControls();
|
||||
|
||||
+2
-1
@@ -17,6 +17,7 @@
|
||||
package com.intellij.openapi.vcs.configurable;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
import com.intellij.openapi.options.UnnamedConfigurable;
|
||||
import com.intellij.openapi.project.Project;
|
||||
@@ -63,7 +64,7 @@ public class VcsMappingConfigurationDialog extends DialogWrapper {
|
||||
myVCSComboBox.setModel(VcsDirectoryConfigurationPanel.buildVcsWrappersModel(project));
|
||||
myDirectoryTextField.addActionListener(new MyBrowseFolderListener("Select Directory", "Select directory to map to a VCS",
|
||||
myDirectoryTextField, project,
|
||||
new FileChooserDescriptor(false, true, false, false, false, false)));
|
||||
FileChooserDescriptorFactory.createSingleFolderDescriptor()));
|
||||
myMappingCopy = new VcsDirectoryMapping("", "");
|
||||
setTitle(title);
|
||||
init();
|
||||
|
||||
@@ -20,8 +20,8 @@ import com.intellij.ide.DataManager;
|
||||
import com.intellij.ide.ui.SplitterProportionsDataImpl;
|
||||
import com.intellij.lang.Language;
|
||||
import com.intellij.openapi.actionSystem.*;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDialog;
|
||||
import com.intellij.openapi.fileChooser.FileChooserFactory;
|
||||
import com.intellij.openapi.fileChooser.FileSaverDescriptor;
|
||||
import com.intellij.openapi.fileTypes.FileType;
|
||||
@@ -742,15 +742,13 @@ public class InjectionsSettingsUI implements Configurable {
|
||||
|
||||
descriptor.putUserData(LangDataKeys.MODULE_CONTEXT, LangDataKeys.MODULE.getData(dataContext));
|
||||
|
||||
final FileChooserDialog chooser = FileChooserFactory.getInstance().createFileChooser(descriptor, myProject);
|
||||
|
||||
final SplitterProportionsData splitterData = new SplitterProportionsDataImpl();
|
||||
splitterData.externalizeFromDimensionService("IntelliLang.ImportSettingsKey.SplitterProportions");
|
||||
|
||||
final VirtualFile[] files = chooser.choose(null, myProject);
|
||||
if (files.length != 1) return;
|
||||
final VirtualFile file = FileChooser.chooseFile(myProject, descriptor);
|
||||
if (file == null) return;
|
||||
try {
|
||||
final Configuration cfg = Configuration.load(files[0].getInputStream());
|
||||
final Configuration cfg = Configuration.load(file.getInputStream());
|
||||
if (cfg == null) {
|
||||
Messages.showWarningDialog(myProject, "The selected file does not contain any importable configuration.", "Nothing to Import");
|
||||
return;
|
||||
|
||||
@@ -19,7 +19,7 @@ package org.jetbrains.android.exportSignedPackage;
|
||||
import com.intellij.ide.util.PropertiesComponent;
|
||||
import com.intellij.ide.wizard.CommitStepException;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
import com.intellij.openapi.vfs.LocalFileSystem;
|
||||
@@ -198,10 +198,9 @@ class KeystoreStep extends ExportSignedPackageWizardStep {
|
||||
path = defaultLocation != null ? defaultLocation : "";
|
||||
}
|
||||
VirtualFile f = LocalFileSystem.getInstance().findFileByPath(path);
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myContentPanel, new FileChooserDescriptor(true, false, false, false, false, false), f);
|
||||
if (files.length > 0) {
|
||||
assert files.length == 1;
|
||||
myKeystoreLocationField.setText(FileUtil.toSystemDependentName(files[0].getPath()));
|
||||
VirtualFile file = FileChooser.chooseFile(myContentPanel, FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor(), f);
|
||||
if (file != null) {
|
||||
myKeystoreLocationField.setText(FileUtil.toSystemDependentName(file.getPath()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
import com.intellij.openapi.project.Project;
|
||||
@@ -629,11 +630,9 @@ public class AndroidFacetEditorTab extends FacetEditorTab {
|
||||
}
|
||||
}
|
||||
}
|
||||
VirtualFile[] files =
|
||||
FileChooser.chooseFiles(myContentPanel, new FileChooserDescriptor(false, true, false, false, false, false), initialFile);
|
||||
if (files.length > 0) {
|
||||
assert files.length == 1;
|
||||
myTextField.setText(FileUtil.toSystemDependentName(files[0].getPath()));
|
||||
VirtualFile file = FileChooser.chooseFile(myContentPanel, FileChooserDescriptorFactory.createSingleFolderDescriptor(), initialFile);
|
||||
if (file != null) {
|
||||
myTextField.setText(FileUtil.toSystemDependentName(file.getPath()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ import com.android.sdklib.internal.avd.AvdManager;
|
||||
import com.intellij.ide.BrowserUtil;
|
||||
import com.intellij.ide.ui.ListCellRendererWrapper;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
import com.intellij.openapi.ui.Messages;
|
||||
@@ -256,7 +256,7 @@ public class CreateAvdDialog extends DialogWrapper {
|
||||
updateSpinner();
|
||||
mySdCardFileTextField
|
||||
.addBrowseFolderListener(AndroidBundle.message("android.create.avd.dialog.sdcard.file.browser.title"), null, project,
|
||||
new FileChooserDescriptor(true, false, false, false, false, false));
|
||||
FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor());
|
||||
reloadAbiCombo();
|
||||
}
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
package com.intellij.lang.ant.config.impl;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.roots.ui.util.CellAppearanceUtils;
|
||||
import com.intellij.openapi.roots.ui.util.CompositeAppearance;
|
||||
import com.intellij.openapi.util.Factory;
|
||||
@@ -90,7 +90,7 @@ public class AllJarsUnderDirEntry implements AntClasspathEntry {
|
||||
}
|
||||
|
||||
public List<AntClasspathEntry> create() {
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myParentComponent, new FileChooserDescriptor(false, true, false, false, false, true));
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myParentComponent, FileChooserDescriptorFactory.createMultipleFoldersDescriptor());
|
||||
if (files.length == 0) return null;
|
||||
return ContainerUtil.map(files, CREATE_FROM_VIRTUAL_FILE);
|
||||
}
|
||||
|
||||
@@ -214,11 +214,10 @@ public class AntSetPanel {
|
||||
}
|
||||
|
||||
public AntInstallation create() {
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myParent, FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
if (files.length == 0) return null;
|
||||
VirtualFile homePath = files[0];
|
||||
VirtualFile file = FileChooser.chooseFile(myParent, FileChooserDescriptorFactory.createSingleFolderDescriptor(), null);
|
||||
if (file == null) return null;
|
||||
try {
|
||||
final AntInstallation inst = AntInstallation.fromHome(homePath.getPresentableUrl());
|
||||
final AntInstallation inst = AntInstallation.fromHome(file.getPresentableUrl());
|
||||
adjustName(inst);
|
||||
return inst;
|
||||
}
|
||||
|
||||
@@ -197,10 +197,10 @@ public class CopyrightProfilesPanel extends MasterDetailsComponent implements Se
|
||||
}
|
||||
};
|
||||
descriptor.setTitle("Choose file containing copyright notice");
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(myProject, descriptor);
|
||||
if (files.length != 1) return;
|
||||
final VirtualFile file = FileChooser.chooseFile(myProject, descriptor);
|
||||
if (file == null) return;
|
||||
|
||||
final List<CopyrightProfile> copyrightProfiles = ExternalOptionHelper.loadOptions(VfsUtil.virtualToIoFile(files[0]));
|
||||
final List<CopyrightProfile> copyrightProfiles = ExternalOptionHelper.loadOptions(VfsUtil.virtualToIoFile(file));
|
||||
if (copyrightProfiles == null) return;
|
||||
if (!copyrightProfiles.isEmpty()) {
|
||||
if (copyrightProfiles.size() == 1) {
|
||||
|
||||
+4
-4
@@ -15,10 +15,10 @@
|
||||
*/
|
||||
package com.intellij.cvsSupport2.connections.local.ui;
|
||||
|
||||
import com.intellij.cvsSupport2.config.LocalSettings;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
import com.intellij.CvsBundle;
|
||||
import com.intellij.cvsSupport2.config.LocalSettings;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
@@ -34,7 +34,7 @@ public class LocalConnectionSettingsPanel {
|
||||
public LocalConnectionSettingsPanel() {
|
||||
myPathToCvsClient.addBrowseFolderListener(CvsBundle.message("dialog.title.select.path.to.cvs.client"),
|
||||
CvsBundle.message("dialog.description.select.path.to.cvs.client"), null,
|
||||
new FileChooserDescriptor(true, false, false, false, false, false));
|
||||
FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor());
|
||||
}
|
||||
|
||||
public void updateFrom(LocalSettings localConfiguration) {
|
||||
|
||||
+2
-2
@@ -19,7 +19,7 @@ import com.intellij.CvsBundle;
|
||||
import com.intellij.cvsSupport2.config.CvsRootEditor;
|
||||
import com.intellij.cvsSupport2.config.SshSettings;
|
||||
import com.intellij.cvsSupport2.connections.ssh.SSHPasswordProviderImpl;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.ui.InputException;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
|
||||
@@ -42,7 +42,7 @@ public class SshConnectionSettingsPanel {
|
||||
myRootProvider = rootProvider;
|
||||
myPathToPrivateKeyFile.addBrowseFolderListener(CvsBundle.message("dialog.title.path.to.private.key.file"),
|
||||
CvsBundle.message("dialog.description.path.to.private.key.file"),
|
||||
null, new FileChooserDescriptor(true, false, false, false, false, false));
|
||||
null, FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor());
|
||||
ActionListener actionListener = new ActionListener() {
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
setPathToPPKEnabled();
|
||||
|
||||
@@ -23,10 +23,10 @@ import com.intellij.openapi.ui.Messages;
|
||||
import com.intellij.openapi.vfs.LocalFileSystem;
|
||||
import com.intellij.openapi.vfs.VfsUtil;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.awt.*;
|
||||
import java.io.File;
|
||||
import java.text.MessageFormat;
|
||||
|
||||
/**
|
||||
* author: lesya
|
||||
@@ -70,13 +70,12 @@ public class CheckoutHelper {
|
||||
return compareResult == 0;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public VirtualFile chooseCheckoutLocation(String pathToSuggestedFolder) {
|
||||
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
descriptor.setTitle(com.intellij.CvsBundle.message("dialog.description.select.a.directory.to.check.out.the.files.to"));
|
||||
VirtualFile suggestedCheckoutFolder = LocalFileSystem.getInstance().findFileByPath(pathToSuggestedFolder.replace(File.separatorChar, '/'));
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myPanel, descriptor, suggestedCheckoutFolder);
|
||||
if (files.length == 0) return null;
|
||||
return files[0];
|
||||
return FileChooser.chooseFile(myPanel, descriptor, suggestedCheckoutFolder);
|
||||
}
|
||||
|
||||
private boolean requestLocation() {
|
||||
|
||||
@@ -96,10 +96,9 @@ public class IdeaJdkConfigurable implements AdditionalDataConfigurable {
|
||||
descriptor.setTitle(DevKitBundle.message("sandbox.home"));
|
||||
descriptor.setDescription(
|
||||
DevKitBundle.message("sandbox.purpose"));
|
||||
VirtualFile[] files = FileChooser.chooseFiles(mySandboxHome, descriptor);
|
||||
if (files.length != 0) {
|
||||
mySandboxHome.setText(
|
||||
FileUtil.toSystemDependentName(files[0].getPath()));
|
||||
VirtualFile file = FileChooser.chooseFile(mySandboxHome, descriptor, null);
|
||||
if (file != null) {
|
||||
mySandboxHome.setText(FileUtil.toSystemDependentName(file.getPath()));
|
||||
}
|
||||
myModified = true;
|
||||
}
|
||||
|
||||
+6
-7
@@ -16,7 +16,6 @@
|
||||
package org.jetbrains.idea.eclipse.importWizard;
|
||||
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.application.PathMacros;
|
||||
import com.intellij.openapi.application.ex.ApplicationInfoEx;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
@@ -345,12 +344,12 @@ public class EclipseImportBuilder extends ProjectImportBuilder<String> implement
|
||||
};
|
||||
descriptor.setDescription(buf.toString());
|
||||
descriptor.setTitle(getTitle());
|
||||
final VirtualFile[] selectedFiles = FileChooser.chooseFiles(project, descriptor, project.getBaseDir());
|
||||
if (selectedFiles.length == 1) {
|
||||
final VirtualFile selectedFile = FileChooser.chooseFile(project, descriptor, project.getBaseDir());
|
||||
if (selectedFile != null) {
|
||||
ApplicationManager.getApplication().runWriteAction(new Runnable() {
|
||||
public void run() {
|
||||
try {
|
||||
EclipseUserLibrariesHelper.readProjectLibrariesContent(new File(selectedFiles[0].getPath()), project, unknownLibraries);
|
||||
EclipseUserLibrariesHelper.readProjectLibrariesContent(new File(selectedFile.getPath()), project, unknownLibraries);
|
||||
}
|
||||
catch (Exception e) {
|
||||
LOG.error(e);
|
||||
@@ -385,9 +384,9 @@ public class EclipseImportBuilder extends ProjectImportBuilder<String> implement
|
||||
};
|
||||
fileChooserDescriptor.setTitle(EclipseBundle.message("eclipse.create.library.title"));
|
||||
fileChooserDescriptor.setDescription(EclipseBundle.message("eclipse.create.library.description", libraryName));
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(project, fileChooserDescriptor);
|
||||
if (files.length == 1) {
|
||||
final VirtualFile pluginsDir = files[0].findChild("plugins");
|
||||
final VirtualFile file = FileChooser.chooseFile(project, fileChooserDescriptor, null);
|
||||
if (file != null) {
|
||||
final VirtualFile pluginsDir = file.findChild("plugins");
|
||||
if (pluginsDir != null) {
|
||||
ApplicationManager.getApplication().runWriteAction(new Runnable() {
|
||||
public void run() {
|
||||
|
||||
+3
-3
@@ -17,7 +17,7 @@ package org.jetbrains.idea.eclipse.importWizard;
|
||||
|
||||
import com.intellij.ide.util.PropertiesComponent;
|
||||
import com.intellij.ide.util.projectWizard.WizardContext;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
@@ -53,10 +53,10 @@ public class EclipseWorkspaceRootStep extends ProjectImportWizardStep {
|
||||
public EclipseWorkspaceRootStep(final WizardContext context) {
|
||||
super(context);
|
||||
myWorkspaceRootComponent.addBrowseFolderListener(EclipseBundle.message("eclipse.import.title.select.workspace"), "", null,
|
||||
new FileChooserDescriptor(false, true, false, false, false, false));
|
||||
FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
|
||||
myDirComponent.addBrowseFolderListener(EclipseBundle.message("eclipse.import.title.module.dir"), "", null,
|
||||
new FileChooserDescriptor(false, true, false, false, false, false));
|
||||
FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
|
||||
ActionListener listener = new ActionListener() {
|
||||
public void actionPerformed(final ActionEvent e) {
|
||||
|
||||
@@ -19,6 +19,7 @@ import com.intellij.openapi.actionSystem.AnActionEvent;
|
||||
import com.intellij.openapi.actionSystem.PlatformDataKeys;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.progress.ProgressIndicator;
|
||||
import com.intellij.openapi.progress.Task;
|
||||
import com.intellij.openapi.project.DumbAwareAction;
|
||||
@@ -52,17 +53,16 @@ public class GitInit extends DumbAwareAction {
|
||||
if (project == null) {
|
||||
project = ProjectManager.getInstance().getDefaultProject();
|
||||
}
|
||||
FileChooserDescriptor fcd = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
FileChooserDescriptor fcd = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
fcd.setShowFileSystemRoots(true);
|
||||
fcd.setTitle(GitBundle.getString("init.destination.directory.title"));
|
||||
fcd.setDescription(GitBundle.getString("init.destination.directory.description"));
|
||||
fcd.setHideIgnored(false);
|
||||
final VirtualFile baseDir = project.getBaseDir();
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(project, fcd, baseDir);
|
||||
if (files.length == 0) {
|
||||
final VirtualFile root = FileChooser.chooseFile(project, fcd, baseDir);
|
||||
if (root == null) {
|
||||
return;
|
||||
}
|
||||
final VirtualFile root = files[0];
|
||||
if (GitUtil.isUnderGit(root)) {
|
||||
final int v = Messages.showYesNoDialog(project,
|
||||
GitBundle.message("init.warning.already.under.git",
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
package git4idea.checkout;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.*;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
@@ -96,7 +97,7 @@ public class GitCloneDialog extends DialogWrapper {
|
||||
* Init components
|
||||
*/
|
||||
private void initListeners() {
|
||||
FileChooserDescriptor fcd = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
FileChooserDescriptor fcd = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
fcd.setShowFileSystemRoots(true);
|
||||
fcd.setTitle(GitBundle.getString("clone.destination.directory.title"));
|
||||
fcd.setDescription(GitBundle.getString("clone.destination.directory.description"));
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
package git4idea.config;
|
||||
|
||||
import com.intellij.openapi.application.ApplicationNamesInfo;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.Messages;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
@@ -72,7 +72,7 @@ public class GitVcsPanel {
|
||||
myConvertTextFilesComboBox.addItem(CRLF_ASK);
|
||||
myConvertTextFilesComboBox.setSelectedItem(CRLF_ASK);
|
||||
myGitField.addBrowseFolderListener(GitBundle.getString("find.git.title"), GitBundle.getString("find.git.description"), project,
|
||||
new FileChooserDescriptor(true, false, false, false, false, false));
|
||||
FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor());
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
package git4idea.history.browser;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.fileChooser.FileSystemTree;
|
||||
import com.intellij.openapi.fileChooser.FileSystemTreeFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
@@ -54,7 +55,7 @@ public class GitLogTreeFileSelector extends DialogWrapper {
|
||||
}
|
||||
|
||||
private void initUi() {
|
||||
final FileChooserDescriptor descriptor = new FileChooserDescriptor(true, true, true, true, false, true);
|
||||
final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createAllButJarContentsDescriptor();
|
||||
descriptor.setRoot(myRoot);
|
||||
myFileSystemTree = FileSystemTreeFactory.SERVICE.getInstance().createFileSystemTree(myProject, descriptor);
|
||||
final JTree tree = myFileSystemTree.getTree();
|
||||
|
||||
+1
-1
@@ -39,7 +39,7 @@ public class SelectRepositoryAndShowLogAction extends AnAction {
|
||||
public void actionPerformed(AnActionEvent e) {
|
||||
final Project project = PlatformDataKeys.PROJECT.getData(e.getDataContext());
|
||||
final VirtualFile[] virtualFiles = FileChooser.chooseFiles(project, new FileChooserDescriptor(false, true, false, true, false, false));
|
||||
if (virtualFiles == null || virtualFiles.length == 0) return;
|
||||
if (virtualFiles.length == 0) return;
|
||||
|
||||
new MyDialog(project, virtualFiles).show();
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@ import com.intellij.ide.util.treeView.NodeDescriptor;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.diff.impl.patch.formove.FilePathComparator;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.fileChooser.ex.FileNodeDescriptor;
|
||||
import com.intellij.openapi.fileChooser.ex.FileSystemTreeImpl;
|
||||
import com.intellij.openapi.module.Module;
|
||||
@@ -140,7 +141,7 @@ public class VcsStructureChooser extends DialogWrapper {
|
||||
|
||||
@Override
|
||||
protected JComponent createCenterPanel() {
|
||||
final FileChooserDescriptor descriptor = new FileChooserDescriptor(true, true, true, true, false, true);
|
||||
final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createAllButJarContentsDescriptor();
|
||||
calculateRoots();
|
||||
final ArrayList<VirtualFile> list = new ArrayList<VirtualFile>(myRoots);
|
||||
final Comparator<VirtualFile> comparator = new Comparator<VirtualFile>() {
|
||||
|
||||
+2
-3
@@ -110,10 +110,9 @@ public class GroovyLibraryDescription extends CustomLibraryDescription {
|
||||
};
|
||||
descriptor.setTitle(myFrameworkName + " SDK");
|
||||
descriptor.setDescription("Choose a directory containing " + myFrameworkName + " distribution");
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(parentComponent, descriptor, initial);
|
||||
if (files.length != 1) return null;
|
||||
final VirtualFile dir = FileChooser.chooseFile(parentComponent, descriptor, initial);
|
||||
if (dir == null) return null;
|
||||
|
||||
final VirtualFile dir = files[0];
|
||||
final GroovyLibraryPresentationProviderBase provider = findManager(dir);
|
||||
if (provider == null) {
|
||||
return null;
|
||||
|
||||
@@ -17,6 +17,7 @@ package org.zmlx.hg4idea.ui;
|
||||
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.progress.ProgressIndicator;
|
||||
import com.intellij.openapi.progress.ProgressManager;
|
||||
import com.intellij.openapi.progress.Task;
|
||||
@@ -25,8 +26,8 @@ import com.intellij.openapi.ui.*;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.zmlx.hg4idea.HgVcsMessages;
|
||||
import org.zmlx.hg4idea.execution.HgCommandResult;
|
||||
import org.zmlx.hg4idea.command.HgIdentifyCommand;
|
||||
import org.zmlx.hg4idea.execution.HgCommandResult;
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.swing.event.DocumentEvent;
|
||||
@@ -118,7 +119,7 @@ public class HgCloneDialog extends DialogWrapper {
|
||||
* Init components
|
||||
*/
|
||||
private void initListeners() {
|
||||
FileChooserDescriptor fcd = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
FileChooserDescriptor fcd = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
fcd.setShowFileSystemRoots(true);
|
||||
fcd.setTitle(HgVcsMessages.message("hg4idea.clone.parent.directory.title"));
|
||||
fcd.setDescription(HgVcsMessages.message("hg4idea.clone.parent.directory.description"));
|
||||
|
||||
@@ -112,8 +112,7 @@ public class HgInitDialog extends DialogWrapper {
|
||||
if (myShowDialog) {
|
||||
super.show();
|
||||
} else {
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(myProject, myFileDescriptor);
|
||||
mySelectedDir = (files.length == 0 ? null : files[0]);
|
||||
mySelectedDir = FileChooser.chooseFile(myProject, myFileDescriptor);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+5
-5
@@ -34,6 +34,7 @@ import com.intellij.ide.util.ClassFilter;
|
||||
import com.intellij.ide.util.PackageChooserDialog;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.fileChooser.FileChooserFactory;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.options.SettingsEditor;
|
||||
@@ -130,10 +131,9 @@ public class JUnitConfigurable extends SettingsEditor<JUnitConfiguration> {
|
||||
new BrowseModuleValueActionListener(project) {
|
||||
@Override
|
||||
protected String showDialog() {
|
||||
final VirtualFile[] virtualFiles =
|
||||
FileChooser.chooseFiles(project, new FileChooserDescriptor(false, true, false, false, false, false));
|
||||
if (virtualFiles.length == 1) {
|
||||
return FileUtil.toSystemDependentName(virtualFiles[0].getPath());
|
||||
final VirtualFile virtualFile = FileChooser.chooseFile(project, FileChooserDescriptorFactory.createSingleFolderDescriptor(), null);
|
||||
if (virtualFile != null) {
|
||||
return FileUtil.toSystemDependentName(virtualFile.getPath());
|
||||
}
|
||||
return null;
|
||||
}
|
||||
@@ -166,7 +166,7 @@ public class JUnitConfigurable extends SettingsEditor<JUnitConfiguration> {
|
||||
panel.add(editBtn, BorderLayout.EAST);
|
||||
myTestLocations[JUnitConfigurationModel.PATTERN] = myPattern;
|
||||
|
||||
final FileChooserDescriptor dirFileChooser = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
final FileChooserDescriptor dirFileChooser = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
dirFileChooser.setHideIgnored(false);
|
||||
final JTextField textField = myDir.getComponent().getTextField();
|
||||
InsertPathAction.addTo(textField, dirFileChooser);
|
||||
|
||||
+4
-4
@@ -17,7 +17,7 @@
|
||||
|
||||
package org.jetbrains.idea.maven.project;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.ui.LabeledComponent;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
import com.intellij.openapi.util.Comparing;
|
||||
@@ -118,11 +118,11 @@ public class MavenEnvironmentForm {
|
||||
public JComponent createComponent() {
|
||||
// all listeners will be removed when dialog is closed
|
||||
mavenHomeComponent.getComponent().addBrowseFolderListener(ProjectBundle.message("maven.select.maven.home.directory"), "", null,
|
||||
new FileChooserDescriptor(false, true, false, false, false, false));
|
||||
FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
settingsFileComponent.getComponent().addBrowseFolderListener(ProjectBundle.message("maven.select.maven.settings.file"), "", null,
|
||||
new FileChooserDescriptor(true, false, false, false, false, false));
|
||||
FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor());
|
||||
localRepositoryComponent.getComponent().addBrowseFolderListener(ProjectBundle.message("maven.select.local.repository"), "", null,
|
||||
new FileChooserDescriptor(false, true, false, false, false, false));
|
||||
FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
return panel;
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -16,7 +16,7 @@
|
||||
package org.jetbrains.idea.maven.project;
|
||||
|
||||
import com.intellij.ide.util.projectWizard.WizardContext;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
@@ -65,7 +65,7 @@ public class MavenImportingSettingsForm {
|
||||
mySeparateModulesDirCheckBox.addActionListener(listener);
|
||||
|
||||
mySeparateModulesDirChooser.addBrowseFolderListener(ProjectBundle.message("maven.import.title.module.dir"), "", null,
|
||||
new FileChooserDescriptor(false, true, false, false, false, false));
|
||||
FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
|
||||
myUpdateFoldersOnImportPhaseComboBox.setModel(new DefaultComboBoxModel(MavenImportingSettings.UPDATE_FOLDERS_PHASES));
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.intellij.ide.util.PropertiesComponent;
|
||||
import com.intellij.openapi.application.ApplicationNamesInfo;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.options.Configurable;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
import com.intellij.openapi.project.Project;
|
||||
@@ -109,12 +110,12 @@ public class SvnConfigurable implements Configurable {
|
||||
|
||||
String oldValue = PropertiesComponent.getInstance().getValue("FileChooser.showHiddens");
|
||||
PropertiesComponent.getInstance().setValue("FileChooser.showHiddens", Boolean.TRUE.toString());
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myComponent, descriptor, root);
|
||||
VirtualFile file = FileChooser.chooseFile(myComponent, descriptor, root);
|
||||
PropertiesComponent.getInstance().setValue("FileChooser.showHiddens", oldValue);
|
||||
if (files.length != 1 || files[0] == null) {
|
||||
if (file == null) {
|
||||
return;
|
||||
}
|
||||
myConfigurationDirectoryText.setText(files[0].getPath().replace('/', File.separatorChar));
|
||||
myConfigurationDirectoryText.setText(file.getPath().replace('/', File.separatorChar));
|
||||
}
|
||||
});
|
||||
myConfigurationDirectoryText.setEditable(false);
|
||||
@@ -132,8 +133,8 @@ public class SvnConfigurable implements Configurable {
|
||||
myNumRevsInAnnotations.setEnabled(myMaximumNumberOfRevisionsCheckBox.isSelected());
|
||||
}
|
||||
|
||||
private FileChooserDescriptor createFileDescriptor() {
|
||||
final FileChooserDescriptor descriptor = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
private static FileChooserDescriptor createFileDescriptor() {
|
||||
final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
descriptor.setShowFileSystemRoots(true);
|
||||
descriptor.setTitle(SvnBundle.message("dialog.title.select.configuration.directory"));
|
||||
descriptor.setDescription(SvnBundle.message("dialog.description.select.configuration.directory"));
|
||||
|
||||
+2
-1
@@ -16,6 +16,7 @@
|
||||
package org.jetbrains.idea.svn.config;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
import com.intellij.ui.InsertPathAction;
|
||||
import org.jetbrains.idea.svn.SvnBundle;
|
||||
@@ -129,7 +130,7 @@ public class ConfigureProxiesOptionsPanel implements RepositoryUrlsListener {
|
||||
}
|
||||
|
||||
private void initBrowseActions() {
|
||||
InsertPathAction.addTo(myPathToCertificatesField, new FileChooserDescriptor(true, false, false, false, false, false));
|
||||
InsertPathAction.addTo(myPathToCertificatesField, FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor());
|
||||
myClientCertificatePathField.addBrowseFolderListener(
|
||||
SvnBundle.message("dialog.edit.http.proxies.settings.dialog.select.ssl.client.certificate.path.title"),
|
||||
null, null, new FileChooserDescriptor(true, false, false, false, false, false));
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
package org.jetbrains.idea.svn.dialogs;
|
||||
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.help.HelpManager;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
import com.intellij.openapi.project.Project;
|
||||
@@ -98,7 +98,7 @@ public class CopyDialog extends DialogWrapper {
|
||||
myWorkingCopyField.getPreferredSize().height));
|
||||
|
||||
myWorkingCopyField.addBrowseFolderListener("Select Working Copy Location", "Select Location to Copy From:",
|
||||
project, new FileChooserDescriptor(false, true, false, false, false, false));
|
||||
project, FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
myWorkingCopyField.getTextField().getDocument().addDocumentListener(new DocumentAdapter() {
|
||||
protected void textChanged(final DocumentEvent e) {
|
||||
updateControls();
|
||||
|
||||
@@ -22,6 +22,7 @@ import com.intellij.openapi.actionSystem.*;
|
||||
import com.intellij.openapi.application.ModalityState;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.fileEditor.FileEditorManager;
|
||||
import com.intellij.openapi.ide.CopyPasteManager;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
@@ -931,16 +932,16 @@ public class RepositoryBrowserDialog extends DialogWrapper {
|
||||
|
||||
@Nullable
|
||||
private File selectFile(String title, String description) {
|
||||
FileChooserDescriptor fcd = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
FileChooserDescriptor fcd = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
fcd.setShowFileSystemRoots(true);
|
||||
fcd.setTitle(title);
|
||||
fcd.setDescription(description);
|
||||
fcd.setHideIgnored(false);
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myProject, fcd, null);
|
||||
if (files.length != 1 || files[0] == null) {
|
||||
VirtualFile file = FileChooser.chooseFile(myProject, fcd);
|
||||
if (file == null) {
|
||||
return null;
|
||||
}
|
||||
final String path = files[0].getPath();
|
||||
final String path = file.getPath();
|
||||
if (path.endsWith(":")) { // workaround for VFS oddities with drive root (IDEADEV-20870)
|
||||
return new File(path + "/");
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ package org.jetbrains.idea.svn.dialogs;
|
||||
import com.intellij.ide.util.PropertiesComponent;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.help.HelpManager;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
@@ -382,7 +383,7 @@ public class SSHCredentialsDialog extends DialogWrapper implements ActionListene
|
||||
file = VirtualFileManager.getInstance().findFileByUrl(path[0]);
|
||||
}
|
||||
}
|
||||
FileChooserDescriptor descriptor = new FileChooserDescriptor(true, false, false, false, false, false);
|
||||
FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor();
|
||||
|
||||
descriptor.setShowFileSystemRoots(true);
|
||||
descriptor.setTitle(SvnBundle.message("dialog.title.openssh.v2.private.key"));
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
*/
|
||||
package org.jetbrains.idea.svn.dialogs;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
@@ -67,7 +67,7 @@ public class SSLCredentialsDialog extends DialogWrapper {
|
||||
|
||||
myCertificatePath.addBrowseFolderListener(
|
||||
SvnBundle.message("dialog.edit.http.proxies.settings.dialog.select.ssl.client.certificate.path.title"),
|
||||
null, null, new FileChooserDescriptor(true, false, false, false, false, false));
|
||||
null, null, FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor());
|
||||
|
||||
gb.weightx = 1;
|
||||
++ gb.gridx;
|
||||
|
||||
+5
-4
@@ -17,6 +17,7 @@ package org.jetbrains.idea.svn.dialogs.browser;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
@@ -68,16 +69,16 @@ public class CheckoutOptionsDialog extends DialogWrapper {
|
||||
mySelectTarget.addActionListener(new ActionListener() {
|
||||
public void actionPerformed(final ActionEvent e) {
|
||||
// choose directory here/
|
||||
FileChooserDescriptor fcd = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
FileChooserDescriptor fcd = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
fcd.setShowFileSystemRoots(true);
|
||||
fcd.setTitle(SvnBundle.message("checkout.directory.chooser.title"));
|
||||
fcd.setDescription(SvnBundle.message("checkout.directory.chooser.prompt"));
|
||||
fcd.setHideIgnored(false);
|
||||
VirtualFile[] files = FileChooser.chooseFiles(getContentPane(), fcd, null);
|
||||
if (files.length != 1 || files[0] == null) {
|
||||
VirtualFile file = FileChooser.chooseFile(getContentPane(), fcd, null);
|
||||
if (file == null) {
|
||||
return;
|
||||
}
|
||||
fillTargetList(new File(files[0].getPath()));
|
||||
fillTargetList(new File(file.getPath()));
|
||||
validateTargetSelected();
|
||||
}
|
||||
});
|
||||
|
||||
@@ -174,11 +174,11 @@ public class DiffOptionsDialog extends DialogWrapper implements ActionListener {
|
||||
fcd.setTitle(title);
|
||||
fcd.setDescription(description);
|
||||
fcd.setHideIgnored(false);
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myBrowser, fcd, null);
|
||||
if (files.length != 1 || files[0] == null) {
|
||||
VirtualFile file = FileChooser.chooseFile(myBrowser, fcd);
|
||||
if (file == null) {
|
||||
return null;
|
||||
}
|
||||
return new File(files[0].getPath());
|
||||
return new File(file.getPath());
|
||||
}
|
||||
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
|
||||
+5
-4
@@ -17,6 +17,7 @@ package org.jetbrains.idea.svn.dialogs.browser;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
@@ -164,15 +165,15 @@ public class ExportOptionsDialog extends DialogWrapper implements ActionListener
|
||||
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
// choose directory here/
|
||||
FileChooserDescriptor fcd = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
FileChooserDescriptor fcd = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
fcd.setShowFileSystemRoots(true);
|
||||
fcd.setTitle("Export Directory");
|
||||
fcd.setDescription("Select directory to export from subversion");
|
||||
fcd.setHideIgnored(false);
|
||||
VirtualFile[] files = FileChooser.chooseFiles(getContentPane(), fcd, null);
|
||||
if (files == null || files.length != 1 || files[0] == null) {
|
||||
VirtualFile file = FileChooser.chooseFile(getContentPane(), fcd);
|
||||
if (file == null) {
|
||||
return;
|
||||
}
|
||||
myPathField.setText(files[0].getPath().replace('/', File.separatorChar));
|
||||
myPathField.setText(file.getPath().replace('/', File.separatorChar));
|
||||
}
|
||||
}
|
||||
|
||||
+5
-4
@@ -17,6 +17,7 @@ package org.jetbrains.idea.svn.dialogs.browser;
|
||||
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
@@ -194,15 +195,15 @@ public class ImportOptionsDialog extends DialogWrapper implements ActionListener
|
||||
|
||||
public void actionPerformed(ActionEvent e) {
|
||||
// choose directory here/
|
||||
FileChooserDescriptor fcd = new FileChooserDescriptor(false, true, false, false, false, false);
|
||||
FileChooserDescriptor fcd = FileChooserDescriptorFactory.createSingleFolderDescriptor();
|
||||
fcd.setShowFileSystemRoots(true);
|
||||
fcd.setTitle("Checkout Directory");
|
||||
fcd.setDescription("Select directory to checkout from subversion");
|
||||
fcd.setHideIgnored(false);
|
||||
VirtualFile[] files = FileChooser.chooseFiles(getContentPane(), fcd, null);
|
||||
if (files.length != 1 || files[0] == null) {
|
||||
VirtualFile file = FileChooser.chooseFile(getContentPane(), fcd);
|
||||
if (file == null) {
|
||||
return;
|
||||
}
|
||||
myPathField.setText(files[0].getPath().replace('/', File.separatorChar));
|
||||
myPathField.setText(file.getPath().replace('/', File.separatorChar));
|
||||
}
|
||||
}
|
||||
|
||||
+4
-4
@@ -18,7 +18,7 @@ package org.jetbrains.idea.svn.integrate;
|
||||
import com.intellij.openapi.actionSystem.*;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.DialogWrapper;
|
||||
import com.intellij.openapi.ui.Messages;
|
||||
@@ -110,9 +110,9 @@ public class IntegratedSelectedOptionsDialog extends DialogWrapper {
|
||||
}
|
||||
|
||||
public void actionPerformed(final AnActionEvent e) {
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(myProject, new FileChooserDescriptor(false, true, false, false, false, false));
|
||||
if (files.length > 0) {
|
||||
final File file = new File(files[0].getPath());
|
||||
final VirtualFile vFile = FileChooser.chooseFile(myProject, FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
if (vFile != null) {
|
||||
final File file = new File(vFile.getPath());
|
||||
if (hasDuplicate(file)) {
|
||||
return; // silently do not add duplicate
|
||||
}
|
||||
|
||||
+2
-4
@@ -27,7 +27,6 @@ import com.intellij.codeInsight.lookup.LookupElementBuilder;
|
||||
import com.intellij.execution.ExecutionBundle;
|
||||
import com.intellij.execution.JavaExecutionUtil;
|
||||
import com.intellij.execution.configuration.BrowseModuleValueActionListener;
|
||||
import com.intellij.execution.junit.JUnitUtil;
|
||||
import com.intellij.execution.testframework.TestSearchScope;
|
||||
import com.intellij.execution.ui.AlternativeJREPanel;
|
||||
import com.intellij.execution.ui.CommonJavaParametersPanel;
|
||||
@@ -36,12 +35,12 @@ import com.intellij.ide.util.TreeClassChooser;
|
||||
import com.intellij.ide.util.TreeClassChooserFactory;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.options.SettingsEditor;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.ui.ComponentWithBrowseButton;
|
||||
import com.intellij.openapi.ui.LabeledComponent;
|
||||
import com.intellij.openapi.ui.Messages;
|
||||
import com.intellij.openapi.ui.TextFieldWithBrowseButton;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.psi.PsiClass;
|
||||
@@ -59,7 +58,6 @@ import org.jetbrains.annotations.Nullable;
|
||||
import javax.swing.*;
|
||||
import javax.swing.event.ChangeEvent;
|
||||
import javax.swing.event.ChangeListener;
|
||||
import javax.swing.text.Document;
|
||||
import javax.swing.text.PlainDocument;
|
||||
import java.awt.*;
|
||||
import java.awt.event.ActionEvent;
|
||||
@@ -343,7 +341,7 @@ public class TestNGConfigurationEditor extends SettingsEditor<TestNGConfiguratio
|
||||
TextFieldWithBrowseButton outputDirectoryButton = new TextFieldWithBrowseButton();
|
||||
outputDirectory.setComponent(outputDirectoryButton);
|
||||
outputDirectoryButton.addBrowseFolderListener("TestNG", "Select test output directory", project,
|
||||
new FileChooserDescriptor(false, true, false, false, false, false));
|
||||
FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
moduleClasspath.setEnabled(true);
|
||||
moduleClasspath.setComponent(new JComboBox());
|
||||
|
||||
|
||||
+5
-14
@@ -32,26 +32,17 @@ public class SuiteBrowser extends BrowseModuleValueActionListener
|
||||
|
||||
@Override
|
||||
public String showDialog() {
|
||||
FileChooserDescriptor descriptor = new FileChooserDescriptor(true,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false,
|
||||
false)
|
||||
{
|
||||
@Override
|
||||
public boolean isFileVisible(VirtualFile virtualFile, boolean showHidden) {
|
||||
FileChooserDescriptor descriptor = new FileChooserDescriptor(true, false, false, false, false, false) {
|
||||
@Override
|
||||
public boolean isFileVisible(VirtualFile virtualFile, boolean showHidden) {
|
||||
if(!showHidden && virtualFile.getName().charAt(0) == '.') return false;
|
||||
return virtualFile.isDirectory() || "xml".equals(virtualFile.getExtension());
|
||||
}
|
||||
};
|
||||
descriptor.setDescription("Please select the testng.xml suite file");
|
||||
descriptor.setTitle("Select Suite");
|
||||
VirtualFile[] files = FileChooser.chooseFiles(getProject(), descriptor);
|
||||
if(files.length > 0) {
|
||||
return files[0].getPath();
|
||||
}
|
||||
return null;
|
||||
VirtualFile file = FileChooser.chooseFile(getProject(), descriptor);
|
||||
return file != null ? file.getPath() : null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+4
-4
@@ -25,7 +25,7 @@ import com.intellij.openapi.application.Result;
|
||||
import com.intellij.openapi.command.WriteCommandAction;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.fileChooser.FileChooser;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptor;
|
||||
import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory;
|
||||
import com.intellij.openapi.module.Module;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
@@ -202,10 +202,10 @@ public class UndeclaredTestInspection extends BaseJavaLocalInspectionTool {
|
||||
final PsiClass psiClass = PsiTreeUtil.getParentOfType(descriptor.getPsiElement(), PsiClass.class);
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
final VirtualFile[] files = FileChooser.chooseFiles(project, new FileChooserDescriptor(false, true, false, false, false, false));
|
||||
if (files.length == 1) {
|
||||
final VirtualFile file = FileChooser.chooseFile(project, FileChooserDescriptorFactory.createSingleFolderDescriptor());
|
||||
if (file != null) {
|
||||
final PsiManager psiManager = PsiManager.getInstance(project);
|
||||
final PsiDirectory directory = psiManager.findDirectory(files[0]);
|
||||
final PsiDirectory directory = psiManager.findDirectory(file);
|
||||
LOG.assertTrue(directory != null);
|
||||
new WriteCommandAction(project, getName(), null) {
|
||||
protected void run(final Result result) throws Throwable {
|
||||
|
||||
@@ -97,9 +97,9 @@ public class EditLocationDialog extends DialogWrapper {
|
||||
new ActionListener() {
|
||||
public void actionPerformed(ActionEvent ignored) {
|
||||
FileChooserDescriptor descriptor = getChooserDescriptor();
|
||||
VirtualFile[] files = FileChooser.chooseFiles(myProject, descriptor);
|
||||
if (files.length != 0) {
|
||||
myTfPath.setText(files[0].getPath().replace('/', File.separatorChar));
|
||||
VirtualFile file = FileChooser.chooseFile(myProject, descriptor);
|
||||
if (file != null) {
|
||||
myTfPath.setText(file.getPath().replace('/', File.separatorChar));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user