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