package tree;
public class Info {
public String name;
public String path;
public Boolean directory;
public Boolean ready; // vyplneny podadresare
public String toString () { return name; }
}
private void displayDirectory (DefaultMutableTreeNode target, File dir, int level)
{
File [] list = dir.listFiles();
if (list == null)
{
DefaultMutableTreeNode node = new DefaultMutableTreeNode ("nepristupny adresar");
target.add (node);
}
else
{
for (File item : list)
{
Info data = new Info ();
data.name = item.getName();
data.path = item.getAbsolutePath ();
data.directory = item.isDirectory ();
DefaultMutableTreeNode node = new DefaultMutableTreeNode (data);
target.add (node);
if (level > 1 && data.directory)
displayDirectory (node, item, level-1);
}
}
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
String dir_name = "C:\\";
try
{
File d0 = new File (dir_name);
dir_name = d0.getCanonicalPath();
setTitle(dir_name);
}
catch (IOException ex)
{
setTitle (ex.getMessage());
}
File d = new File (dir_name);
Info data = new Info ();
data.name = d.getName();
data.path = d.getAbsolutePath ();
data.directory = true;
DefaultMutableTreeNode root = new DefaultMutableTreeNode (data);
displayDirectory (root, d, 2);
DefaultTreeModel model = new DefaultTreeModel (root);
jTree1.setModel (model);
}
private void jTree1TreeExpanded(javax.swing.event.TreeExpansionEvent evt) {
Object last = evt.getPath().getLastPathComponent();
DefaultMutableTreeNode node = (DefaultMutableTreeNode) last;
String txt = (String) node.getUserObject();
this.setTitle("expand " + txt);
}