Example usage for com.intellij.openapi.fileChooser FileChooser chooseFiles

List of usage examples for com.intellij.openapi.fileChooser FileChooser chooseFiles

Introduction

In this page you can find the example usage for com.intellij.openapi.fileChooser FileChooser chooseFiles.

Prototype

public static void chooseFiles(@NotNull final FileChooserDescriptor descriptor, @Nullable final Project project,
        @Nullable final Component parent, @Nullable final VirtualFile toSelect,
        @NotNull final Consumer<? super List<VirtualFile>> callback) 

Source Link

Document

Shows file/folder open dialog, allows user to choose files/folders and then passes result to callback in EDT.

Usage

From source file:com.intellij.ide.actions.ChooseComponentsToExportDialog.java

License:Apache License

@NotNull
public static AsyncResult<String> chooseSettingsFile(String oldPath, Component parent, final String title,
        final String description) {
    FileChooserDescriptor chooserDescriptor = FileChooserDescriptorFactory.createSingleLocalFileDescriptor();
    chooserDescriptor.setDescription(description);
    chooserDescriptor.setHideIgnored(false);
    chooserDescriptor.setTitle(title);//from w w  w.ja  v a 2s  . c om

    VirtualFile initialDir;
    if (oldPath != null) {
        final File oldFile = new File(oldPath);
        initialDir = LocalFileSystem.getInstance().findFileByIoFile(oldFile);
        if (initialDir == null && oldFile.getParentFile() != null) {
            initialDir = LocalFileSystem.getInstance().findFileByIoFile(oldFile.getParentFile());
        }
    } else {
        initialDir = null;
    }
    final AsyncResult<String> result = new AsyncResult<String>();
    FileChooser.chooseFiles(chooserDescriptor, null, parent, initialDir, new FileChooser.FileChooserConsumer() {
        @Override
        public void consume(List<VirtualFile> files) {
            VirtualFile file = files.get(0);
            if (file.isDirectory()) {
                result.setDone(file.getPath() + '/' + new File(DEFAULT_PATH).getName());
            } else {
                result.setDone(file.getPath());
            }
        }

        @Override
        public void cancelled() {
            result.setRejected();
        }
    });
    return result;
}

From source file:com.microsoft.intellij.ui.util.UIUtils.java

License:Open Source License

public static ActionListener createFileChooserListener(final TextFieldWithBrowseButton parent,
        final @Nullable Project project, final FileChooserDescriptor descriptor,
        final Consumer<List<VirtualFile>> consumer) {
    return new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            FileChooser.chooseFiles(descriptor, project, parent, parent.getText().isEmpty() ? null
                    : LocalFileSystem.getInstance().findFileByPath(parent.getText()), consumer);
        }/*w  w  w .ja va2s.  co m*/
    };
}