javax.swing.filechooser

Class FileSystemView

public abstract class FileSystemView extends Object

The base class providing a view of the file system for use by the {@link JFileChooser} component.
Method Summary
FilecreateFileObject(File dir, String filename)
Creates a new file object with the given name in the specified directory.
FilecreateFileObject(String path)
Creates a new file object from the specified path.
protected FilecreateFileSystemRoot(File f)
DOCUMENT ME!
abstract FilecreateNewFolder(File containingDir)
Creates a new folder with a unique name in the specified directory and returns a {@link File} object representing the new directory.
FilegetChild(File parent, String fileName)
DOCUMENT ME!
FilegetDefaultDirectory()
Returns the default directory.
File[]getFiles(File dir, boolean useFileHiding)
Returns an array containing the files in the given directory.
static FileSystemViewgetFileSystemView()
Returns a default {@link FileSystemView} appropriate for the platform.
FilegetHomeDirectory()
Returns the home directory for the current user.
FilegetParentDirectory(File f)
Returns the parent directory for the given file/directory.
File[]getRoots()
Returns an array containing the file system roots.
StringgetSystemDisplayName(File f)
Returns the name of a file as it would be displayed by the underlying system.
IcongetSystemIcon(File f)
Returns the icon that would be displayed for the given file by the underlying system.
StringgetSystemTypeDescription(File f)
Returns the type description of a file that would be displayed by the underlying system.
booleanisComputerNode(File dir)
DOCUMENT ME!
booleanisDrive(File dir)
Returns true if the given directory represents a disk drive, and false otherwise.
booleanisFileSystem(File f)
Returns true if f is a file or directory, and false otherwise.
booleanisFileSystemRoot(File dir)
Returns true if the given directory is a file system root, and false otherwise.
booleanisFloppyDrive(File dir)
Returns true if the given directory represents a floppy drive, and false otherwise.
booleanisHiddenFile(File f)
Returns true if the given file is hidden, and false otherwise.
booleanisParent(File folder, File file)
Returns true if folder is the parent of file, and false otherwise.
booleanisRoot(File f)
DOCUMENT ME!
BooleanisTraversable(File f)
Returns true if the file is traversable, and false otherwise.

Method Detail

createFileObject

public File createFileObject(File dir, String filename)
Creates a new file object with the given name in the specified directory.

Parameters: dir the directory (null permitted). filename the file name.

Returns: A new file object.

createFileObject

public File createFileObject(String path)
Creates a new file object from the specified path.

Parameters: path the path.

Returns: A new file object.

createFileSystemRoot

protected File createFileSystemRoot(File f)
DOCUMENT ME!

Parameters: f DOCUMENT ME!

Returns: DOCUMENT ME!

createNewFolder

public abstract File createNewFolder(File containingDir)
Creates a new folder with a unique name in the specified directory and returns a {@link File} object representing the new directory.

Parameters: containingDir the directory to contain the new folder (null not permitted).

Returns: A {@link File} object representing the new directory.

Throws: IOException if an exception occurs while creating the new directory.

getChild

public File getChild(File parent, String fileName)
DOCUMENT ME!

Parameters: parent DOCUMENT ME! fileName DOCUMENT ME!

Returns: DOCUMENT ME!

getDefaultDirectory

public File getDefaultDirectory()
Returns the default directory.

Returns: The default directory.

getFiles

public File[] getFiles(File dir, boolean useFileHiding)
Returns an array containing the files in the given directory. The useFileHiding controls whether or not hidden files are included in the result.

Parameters: dir the directory (if null useFileHiding a flag that controls whether or not hidden files are included in the result (pass in true to exclude hidden files).

Returns: The files in the given directory (possibly null).

getFileSystemView

public static FileSystemView getFileSystemView()
Returns a default {@link FileSystemView} appropriate for the platform.

Returns: A default {@link FileSystemView} appropriate for the platform.

getHomeDirectory

public File getHomeDirectory()
Returns the home directory for the current user.

Returns: The home directory for the current user.

getParentDirectory

public File getParentDirectory(File f)
Returns the parent directory for the given file/directory.

Parameters: f the file/directory.

Returns: The parent directory (or null if there is no parent directory).

getRoots

public File[] getRoots()
Returns an array containing the file system roots. On Unix-like platforms, this array will contain just a single item ("/"), while other platforms may return multiple roots.

This method is implemented to return null, subclasses must override this method.

Returns: An array containing the file system roots.

getSystemDisplayName

public String getSystemDisplayName(File f)
Returns the name of a file as it would be displayed by the underlying system.

Parameters: f the file.

Returns: the name of a file as it would be displayed by the underlying system

UNKNOWN: The specification suggests that the information here is fetched from a ShellFolder class. This seems to be a non public private file handling class. We simply return File.getName() here and leave special handling to subclasses.

getSystemIcon

public Icon getSystemIcon(File f)
Returns the icon that would be displayed for the given file by the underlying system. This implementation returns null, subclasses must override.

Parameters: f the file.

Returns: null.

getSystemTypeDescription

public String getSystemTypeDescription(File f)
Returns the type description of a file that would be displayed by the underlying system. This implementation returns null, subclasses must override.

Parameters: f the file.

Returns: null.

isComputerNode

public boolean isComputerNode(File dir)
DOCUMENT ME!

Parameters: dir DOCUMENT ME!

Returns: DOCUMENT ME!

isDrive

public boolean isDrive(File dir)
Returns true if the given directory represents a disk drive, and false otherwise. This default implementation always returns false.

Parameters: dir the directory.

Returns: false.

isFileSystem

public boolean isFileSystem(File f)
Returns true if f is a file or directory, and false otherwise.

Parameters: f the file/directory.

Returns: true if f is a file or directory, and false otherwise.

isFileSystemRoot

public boolean isFileSystemRoot(File dir)
Returns true if the given directory is a file system root, and false otherwise.

Parameters: dir the directory.

Returns: true if the given directory is a file system root, and false otherwise.

isFloppyDrive

public boolean isFloppyDrive(File dir)
Returns true if the given directory represents a floppy drive, and false otherwise. This default implementation always returns false.

Parameters: dir the directory.

Returns: false.

isHiddenFile

public boolean isHiddenFile(File f)
Returns true if the given file is hidden, and false otherwise.

Parameters: f the file.

Returns: true if the given file is hidden, and false otherwise.

isParent

public boolean isParent(File folder, File file)
Returns true if folder is the parent of file, and false otherwise.

Parameters: folder the folder (null not permitted). file the file (null not permitted).

Returns: true if folder is the parent of file, and false otherwise.

isRoot

public boolean isRoot(File f)
DOCUMENT ME!

Parameters: f DOCUMENT ME!

Returns: DOCUMENT ME!

isTraversable

public Boolean isTraversable(File f)
Returns true if the file is traversable, and false otherwise. Here, all directories are considered traversable, and files are considered non-traversable.

Parameters: f the file or directory (null not permitted).

Returns: true if the file is traversable, and false otherwise.