List of usage examples for com.intellij.openapi.fileChooser PathChooserDialog choose
void choose(@Nullable VirtualFile toSelect, @NotNull final Consumer<? super List<VirtualFile>> callback);
From source file:com.intellij.tools.ToolEditorDialog.java
License:Apache License
protected void addWorkingDirectoryBrowseAction(final JPanel pane, FixedSizeButton browseDirectoryButton, JTextField tfCommandWorkingDirectory) { browseDirectoryButton.addActionListener(new ActionListener() { @Override/*from w w w. j ava 2 s.c o m*/ public void actionPerformed(ActionEvent e) { FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createSingleFolderDescriptor(); PathChooserDialog chooser = FileChooserFactory.getInstance().createPathChooser(descriptor, myProject, pane); chooser.choose(null, new Consumer<List<VirtualFile>>() { @Override public void consume(List<VirtualFile> files) { VirtualFile file = files.size() > 0 ? files.get(0) : null; if (file != null) { myTfCommandWorkingDirectory.setText(file.getPresentableUrl()); } } }); } }); }
From source file:com.intellij.tools.ToolEditorDialog.java
License:Apache License
protected void addCommandBrowseAction(final JPanel pane, FixedSizeButton browseCommandButton, JTextField tfCommand) {//from www . j a v a 2 s . co m browseCommandButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { FileChooserDescriptor descriptor = FileChooserDescriptorFactory .createSingleFileOrExecutableAppDescriptor(); PathChooserDialog chooser = FileChooserFactory.getInstance().createPathChooser(descriptor, myProject, pane); chooser.choose(null, new Consumer<List<VirtualFile>>() { @Override public void consume(List<VirtualFile> files) { VirtualFile file = files.size() > 0 ? files.get(0) : null; if (file != null) { myTfCommand.setText(file.getPresentableUrl()); String workingDirectory = myTfCommandWorkingDirectory.getText(); if (workingDirectory == null || workingDirectory.length() == 0) { VirtualFile parent = file.getParent(); if (parent != null && parent.isDirectory()) { myTfCommandWorkingDirectory.setText(parent.getPresentableUrl()); } } } } }); } }); }
From source file:org.mustbe.consulo.dotnet.ide.actions.ExportDotNetSdkToZipAction.java
License:Apache License
@Override public void actionPerformed(AnActionEvent anActionEvent) { List<Sdk> sdks = ContainerUtil.filter(SdkTable.getInstance().getAllSdks(), Conditions.alwaysTrue()); if (sdks.isEmpty()) { Messages.showErrorDialog("No .NET sdks", "Error"); return;/*from w ww .java 2s. c o m*/ } final Project project = anActionEvent.getRequiredData(CommonDataKeys.PROJECT); ChooseElementsDialog<Sdk> sdk = new ChooseElementsDialog<Sdk>(project, sdks, "Select", "Select sdk for export") { @Override protected String getItemText(Sdk item) { return item.getName(); } @Nullable @Override protected Icon getItemIcon(Sdk item) { return SdkUtil.getIcon(item); } }; List<Sdk> selectedSdks = sdk.showAndGetResult(); if (selectedSdks.isEmpty()) { return; } final Sdk selected = selectedSdks.get(0); PathChooserDialog pathChooser = FileChooserFactory.getInstance() .createPathChooser(FileChooserDescriptorFactory.createSingleFolderDescriptor(), project, null); pathChooser.choose(project.getBaseDir(), new Consumer<List<VirtualFile>>() { @Override public void consume(List<VirtualFile> virtualFiles) { val dir = virtualFiles.get(0); new Task.ConditionalModal(project, "Exporting: " + selected.getName(), false, PerformInBackgroundOption.DEAF) { @Override public void run(@NotNull final ProgressIndicator progressIndicator) { progressIndicator.setIndeterminate(true); export(selected, dir, progressIndicator); } }.queue(); } }); }