List of usage examples for com.intellij.openapi.fileChooser FileSystemTree updateTree
void updateTree();
From source file:com.kstenschke.clearcache.resources.forms.PluginConfiguration.java
License:Apache License
/** * Initialize the form: render project tree, select nodes from project preference */// w ww.jav a 2 s. co m private void InitForm() { // Init checkbox options' states directoriesCheckBox.setSelected(ClearCachePreferences.getDeleteDirectories()); hiddenFilesAndDirectoriesCheckBox.setSelected(ClearCachePreferences.getDeleteHidden()); textFieldIgnorePatterns.setText(ClearCachePreferences.getIgnorePatterns()); // Add project files tree, select directories from user's project preference FileSystemTreeFactory treeFactory = new FileSystemTreeFactoryImpl(); FileChooserDescriptor descriptor = new FileChooserDescriptor(false, true, false, false, false, false); Project[] projects = ProjectManager.getInstance().getOpenProjects(); Project project = projects[0]; if (project != null) { VirtualFile baseDir = project.getBaseDir(); descriptor.setRoots(baseDir); // descriptor.setIsTreeRootVisible(true); FileSystemTree tree = treeFactory.createFileSystemTree(project, descriptor); // Enable multi-selection projectTree = tree.getTree(); projectTree.getSelectionModel().setSelectionMode(TreeSelectionModel.DISCONTIGUOUS_TREE_SELECTION); // Find+select directories in project file-tree, that are contained in preference also SelectedDirectoriesCollector selFilesCollector = new SelectedDirectoriesCollector(baseDir); VirtualFile[] selectedDirectories = selFilesCollector.getSelectedVFDirectories(); if (selectedDirectories != null) { tree.select(selectedDirectories, null); } tree.updateTree(); // Add project folders tree to settings component JScrollPane jscrollPane = new JScrollPane(projectTree); rootPanel.add(jscrollPane); } // Setup changeListener on checkboxes- checking delete hidden checks also delete directories hiddenFilesAndDirectoriesCheckBox.addItemListener(new ItemListener() { @Override public void itemStateChanged(ItemEvent e) { if (e.getStateChange() == ItemEvent.SELECTED) { directoriesCheckBox.setSelected(true); } } }); }
From source file:com.kstenschke.sweep.resources.forms.SweepConfiguration.java
License:Apache License
/** * Initialize the form: render project tree, select nodes from project preference */// w w w . j a v a 2s .co m private void InitForm() { // Init checkbox options' states directoriesCheckBox.setSelected(SweepPreferences.getDeleteDirectories()); hiddenFilesAndDirectoriesCheckBox.setSelected(SweepPreferences.getDeleteHidden()); textFieldIgnorePatterns.setText(SweepPreferences.getIgnorePatterns()); // Add project files tree, select directories from user's project preference FileSystemTreeFactory treeFactory = new FileSystemTreeFactoryImpl(); FileChooserDescriptor descriptor = new FileChooserDescriptor(false, true, false, false, false, false); Project[] projects = ProjectManager.getInstance().getOpenProjects(); if (projects.length > 0) { Project project = projects[0]; if (project != null) { VirtualFile baseDir = project.getBaseDir(); descriptor.setRoots(baseDir); FileSystemTree tree = treeFactory.createFileSystemTree(project, descriptor); // Enable multi-selection projectTree = tree.getTree(); projectTree.getSelectionModel().setSelectionMode(TreeSelectionModel.DISCONTIGUOUS_TREE_SELECTION); // Find+select directories in project file-tree, that are contained in preference also SelectedDirectoriesCollector selFilesCollector = new SelectedDirectoriesCollector(baseDir); VirtualFile[] selectedDirectories = selFilesCollector.getSelectedVFDirectories(); if (selectedDirectories != null) { tree.select(selectedDirectories, null); } tree.updateTree(); // Add project folders tree to settings component JBScrollPane jbScrollPane = new JBScrollPane(projectTree); rootPanel.add(jbScrollPane); } // Setup changeListener on checkboxes- checking delete hidden checks also delete directories hiddenFilesAndDirectoriesCheckBox.addItemListener(e -> { if (e.getStateChange() == ItemEvent.SELECTED) { directoriesCheckBox.setSelected(true); } }); } }