1 /* Copyright (C) 2005-2011 Fabio Riccardi */
2 
3 package com.lightcrafts.ui.browser.folders;
4 
5 import static com.lightcrafts.ui.browser.folders.Locale.LOCALE;
6 import com.lightcrafts.utils.directory.DirectoryMonitor;
7 
8 import java.io.File;
9 import java.util.List;
10 
11 /**
12  * A FolderTreeNode that represents the special-case of the root folder for
13  * Mac.  It's "/Volumes", with a special name and user.home as an extra child.
14  */
15 final class MacOSXRootTreeNode extends FolderTreeNode {
16 
17     // Returns a friendler name for "/Volumes".
toString()18     public String toString() {
19         return LOCALE.get("MacOSXRootName");
20     }
21 
MacOSXRootTreeNode(NodeFileIndex index, DirectoryMonitor monitor)22     MacOSXRootTreeNode(NodeFileIndex index, DirectoryMonitor monitor) {
23         super(new File("/Volumes"), null, index, monitor);
24     }
25 
26     /**
27      * Insert the user's home directory as the first child, so it's easy to
28      * find.
29      */
updateChildren()30     void updateChildren() {
31         super.updateChildren();
32         File home = new File(System.getProperty("user.home"));
33         List<FolderTreeNode> children = getChildren();
34         NodeFileIndex index = getIndex();
35         DirectoryMonitor monitor = getDirectoryMonitor();
36         children.add(0, new FolderTreeNode(home, this, index, monitor));
37     }
38 }
39 /* vim:set et sw=4 ts=4: */
40