List of usage examples for com.intellij.openapi.fileChooser FileChooserDescriptor withFileFilter
public FileChooserDescriptor withFileFilter(@Nullable Condition<? super VirtualFile> filter)
From source file:com.android.tools.idea.apk.viewer.ApkEditor.java
License:Apache License
@Override public void selectApkAndCompare() { FileChooserDescriptor desc = new FileChooserDescriptor(true, false, false, false, false, false); desc.withFileFilter(file -> ApkFileSystem.EXTENSIONS.contains(file.getExtension())); VirtualFile file = FileChooser.chooseFile(desc, myProject, null); if (file == null) { // user canceled return;/*from w ww . java2 s. c o m*/ } VirtualFile newApk = ApkFileSystem.getInstance().getRootByLocal(file); assert newApk != null; DialogBuilder builder = new DialogBuilder(myProject); builder.setTitle(myRoot.getName() + " vs " + newApk.getName()); ApkDiffParser parser = new ApkDiffParser(myRoot, newApk); ApkDiffPanel panel = new ApkDiffPanel(parser); builder.setCenterPanel(panel.getContainer()); builder.setPreferredFocusComponent(panel.getPreferredFocusedComponent()); builder.show(); }
From source file:com.goide.runconfig.GoRunUtil.java
License:Apache License
public static void installFileChooser(@Nonnull Project project, @Nonnull ComponentWithBrowseButton field, boolean directory, boolean showFileSystemRoots, @Nullable Condition<VirtualFile> fileFilter) { FileChooserDescriptor chooseDirectoryDescriptor = directory ? FileChooserDescriptorFactory.createSingleFolderDescriptor() : FileChooserDescriptorFactory.createSingleLocalFileDescriptor(); chooseDirectoryDescriptor.setRoots(project.getBaseDir()); chooseDirectoryDescriptor.setShowFileSystemRoots(showFileSystemRoots); chooseDirectoryDescriptor.withFileFilter(fileFilter); if (field instanceof TextFieldWithBrowseButton) { ((TextFieldWithBrowseButton) field) .addBrowseFolderListener(new TextBrowseFolderListener(chooseDirectoryDescriptor, project)); } else {/*w ww . jav a2s. c o m*/ //noinspection unchecked field.addBrowseFolderListener(project, new ComponentWithBrowseButton.BrowseFolderActionListener(null, null, field, project, chooseDirectoryDescriptor, TextComponentAccessor.TEXT_FIELD_WITH_HISTORY_WHOLE_TEXT)); } }
From source file:io.ballerina.plugins.idea.runconfig.BallerinaRunUtil.java
License:Open Source License
private static void installFileChooser(@NotNull Project project, @NotNull ComponentWithBrowseButton field, @Nullable Condition<VirtualFile> fileFilter) { FileChooserDescriptor chooseDirectoryDescriptor = FileChooserDescriptorFactory .createSingleFileDescriptor(BallerinaFileType.INSTANCE); chooseDirectoryDescriptor.setRoots(project.getBaseDir()); chooseDirectoryDescriptor.setShowFileSystemRoots(false); chooseDirectoryDescriptor.withShowHiddenFiles(false); chooseDirectoryDescriptor.withFileFilter(fileFilter); if (field instanceof TextFieldWithBrowseButton) { ((TextFieldWithBrowseButton) field) .addBrowseFolderListener(new TextBrowseFolderListener(chooseDirectoryDescriptor, project)); } else {/* w w w.ja va 2 s. c o m*/ //noinspection unchecked field.addBrowseFolderListener(project, new ComponentWithBrowseButton.BrowseFolderActionListener(null, null, field, project, chooseDirectoryDescriptor, TextComponentAccessor.TEXT_FIELD_WITH_HISTORY_WHOLE_TEXT)); } }
From source file:org.twodividedbyzero.idea.findbugs.gui.settings.FilterPane.java
License:Open Source License
private void doAdd(@Nullable final Project project) { final FileChooserDescriptor descriptor = FileChooserDescriptorFactory.createMultipleFilesNoJarsDescriptor(); descriptor.setTitle(StringUtil.capitalizeWords(title, true)); descriptor.setDescription(description); descriptor.withFileFilter(new Condition<VirtualFile>() { @Override/*from w ww . jav a 2s . c om*/ public boolean value(final VirtualFile virtualFile) { return XmlFileType.DEFAULT_EXTENSION.equalsIgnoreCase(virtualFile.getExtension()); } }); final VirtualFile[] files = FileChooser.chooseFiles(descriptor, this, project, null); if (files.length > 0) { for (final VirtualFile virtualFile : files) { final File file = VfsUtilCore.virtualToIoFile(virtualFile); addFileImpl(file); } getModel().fireTableDataChanged(); } }
From source file:org.twodividedbyzero.idea.findbugs.gui.settings.PluginTablePane.java
License:Open Source License
private void doAddWithFileChooser(@Nullable final Project project) { final FileChooserDescriptor descriptor = new FileChooserDescriptor(true, false, true, true, false, true); descriptor.setTitle(ResourcesLoader.getString("plugins.choose.title")); descriptor.setDescription(ResourcesLoader.getString("plugins.choose.description")); descriptor.withFileFilter(new Condition<VirtualFile>() { @Override// w ww .j a va2s . c o m public boolean value(final VirtualFile virtualFile) { return "jar".equalsIgnoreCase(virtualFile.getExtension()); } }); final VirtualFile[] files = FileChooser.chooseFiles(descriptor, this, project, null); if (files.length > 0) { // collect current plugin settings final Set<PluginSettings> settings = New.set(); for (final PluginInfo plugin : getModel().rows) { settings.add(plugin.settings); } // unload all plugin for (final Plugin plugin : Plugin.getAllPlugins()) { if (!plugin.isCorePlugin()) { FindBugsCustomPluginUtil.unload(plugin); } } // load choosed plugins StringBuilder errors = new StringBuilder(); for (final VirtualFile virtualFile : files) { final File file = VfsUtilCore.virtualToIoFile(virtualFile); Plugin plugin = null; try { plugin = FindBugsCustomPluginUtil.loadTemporary(file); final PluginSettings pluginSettings = new PluginSettings(); pluginSettings.id = plugin.getPluginId(); pluginSettings.bundled = false; pluginSettings.enabled = true; // enable ; do not use plugin.isEnabledByDefault(); pluginSettings.url = FindBugsCustomPluginUtil.getAsString(plugin); for (final PluginSettings other : settings) { if (other.id.equals(pluginSettings.id)) { pluginSettings.enabled = false; } } settings.add(pluginSettings); } catch (final Exception e) { LOGGER.warn(String.valueOf(file), e); errors.append("\n - ").append(e.getMessage()); } finally { if (plugin != null) { FindBugsCustomPluginUtil.unload(plugin); } } } // reload all plugins load(settings); if (errors.length() > 0) { Messages.showErrorDialog(this, ResourcesLoader.getString("plugins.load.error.text") + errors.toString(), StringUtil.capitalizeWords(ResourcesLoader.getString("plugins.load.error.title"), true)); } } }