Package uk.ac.starlink.util.gui
Class BasicFileFilter
java.lang.Object
javax.swing.filechooser.FileFilter
uk.ac.starlink.util.gui.BasicFileFilter
- All Implemented Interfaces:
FilenameFilter
A FileFilter for configuring a
JFileChooser
to only show
files that have one of a set of file extensions. Also implements
FilenameFilter to provide similar services for filtering directory
contents using the File
class
(see File.listFiles()
).
Example - create filters for HDS and FITS files and use with a BasicFileChooser.
BasicFileChooser chooser = new BasicFileChooser(); BasicFileFilter fitsFilter = new BasicFileFilter( new String{ "fit", "fits" }, "FITS files" ) chooser.addChoosableFileFilter( fitsFilter ); BasicFileFilter hdsFilter = new BasicFileFilter( "hds", "HDS container files" ); chooser.addChoosableFileFilter( hdsFilter ); chooser.showOpenDialog( this );Example - filter the files in a directory.
BasicFileFilter idsFilter = new BasicFileFilter( "ids" ); File dir = new File( "." ); File[] files = dir.listFiles( idsFilter );
- Version:
- $Id$
- Author:
- Jeff Dinkins, Peter W. Draper
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a file filter.BasicFileFilter
(String extension) Creates a file filter that accepts files with the given extension.BasicFileFilter
(String[] filters) Creates a file filter from the given string array.BasicFileFilter
(String[] filters, String description) Creates a file filter from the given string array and description.BasicFileFilter
(String extension, String description) Creates a file filter that accepts the given file type. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Return true if this file should be shown in the directory pane, false if it shouldn't.boolean
void
addExtension
(String extension) Adds a filetype "dot" extension to filter against.Returns the human readable description of this filter.static String
getExtension
(File f) Return the extension of a file's name.static String
getExtension
(String name) Return the extension of a file's name.boolean
Returns whether the extension list (.jpg, .gif, etc) should show up in the human readable description.void
setDescription
(String description) Sets the human readable description of this filter.void
setExtensionListInDescription
(boolean b) Determines whether the extension list (.jpg, .gif, etc) should show up in the human readable description.
-
Constructor Details
-
BasicFileFilter
public BasicFileFilter()Creates a file filter. If no filters are added, then all files are accepted.- See Also:
-
BasicFileFilter
Creates a file filter that accepts files with the given extension. Example: new BasicFileFilter("jpg");- See Also:
-
BasicFileFilter
Creates a file filter that accepts the given file type. Example: new BasicFileFilter("jpg", "JPEG Image Images"); Note that the "." before the extension is not needed. If provided, it will be ignored.- See Also:
-
BasicFileFilter
Creates a file filter from the given string array. Example: new BasicFileFilter(String {"gif", "jpg"}); Note that the "." before the extension is not needed and will be ignored.- See Also:
-
BasicFileFilter
Creates a file filter from the given string array and description. Example: new BasicFileFilter(String {"gif", "jpg"}, "Gif and JPG Images"); Note that the "." before the extension is not needed and will be ignored.- See Also:
-
-
Method Details
-
accept
Return true if this file should be shown in the directory pane, false if it shouldn't. Files that begin with "." are ignored.- Specified by:
accept
in classFileFilter
- See Also:
-
getExtension
Return the extension of a file's name. -
getExtension
Return the extension of a file's name.- Parameters:
f
- the File.
-
addExtension
Adds a filetype "dot" extension to filter against. For example: the following code will create a filter that filters out all files except those that end in ".jpg" and ".tif": BasicFileFilter filter = new BasicFileFilter(); filter.addExtension("jpg"); filter.addExtension("tif"); Note that the "." before the extension is not needed and will be ignored. -
getDescription
Returns the human readable description of this filter. For example: "JPEG and GIF Image Files (*.jpg, *.gif)"- Specified by:
getDescription
in classFileFilter
-
setDescription
Sets the human readable description of this filter. For example: filter.setDescription("Gif and JPG Images"); -
setExtensionListInDescription
public void setExtensionListInDescription(boolean b) Determines whether the extension list (.jpg, .gif, etc) should show up in the human readable description. Only relevent if a description was provided in the constructor or using setDescription(); -
isExtensionListInDescription
public boolean isExtensionListInDescription()Returns whether the extension list (.jpg, .gif, etc) should show up in the human readable description. Only relevent if a description was provided in the constructor or using setDescription(); -
accept
- Specified by:
accept
in interfaceFilenameFilter
-