public void setSelectedDir(File dir) {
List<File> pathList = new LinkedList<File>();
do {
pathList.add(0, dir);
dir = dir.getParentFile();
} while (dir != null);
TreePath path = new TreePath(dirTree.getModel().getRoot());
for (Iterator iter = pathList.iterator(); iter.hasNext();) {
File d = (File) iter.next();
path = path.pathByAddingChild(
new DirTreeNode(d, (DirTreeNode) path.getLastPathComponent()));
}