+ String basePath = project.getBasePath();
+ File basePathDirectory = new File(basePath);
+ if (!basePathDirectory.exists() || !basePathDirectory.isDirectory()) {
+ /* TODO - i18n */
+ JOptionPane.showMessageDialog(FileManager.this, I18n.get(""), I18n.get(""), JOptionPane.ERROR_MESSAGE);
+ return;
+ }
+ synchronized (fileTreeRoot) {
+ scanDirectory(fileTreeRoot, basePathDirectory);
+ }
+ fileTree.repaint();
+ }
+
+ private void scanDirectory(SortableTreeNode rootNode, File directory) {
+ System.out.println("scanning " + directory.getAbsolutePath());
+ for (File file: directory.listFiles()) {
+ SortableTreeNode fileNode = new SortableTreeNode(file.getName());
+ rootNode.add(fileNode);
+ if (file.isDirectory()) {
+ scanDirectory(fileNode, file);
+ }
+ }
+ rootNode.sort();