import java.io.File;
import java.util.*;
/** A simple FileFilter class that works by filename extension,
* like the one in the JDK demo called ExtentionFilter, which
* has been announced to be supported in a future Swing release.
*/
class JFileFilter extends javax.swing.filechooser.FileFilter {
protected String description;
protected ArrayList exts = new ArrayList();
public void addType(String s)
{
exts.add(s);
}
/** Return true if the given file is accepted by this filter. */
public boolean accept(File f) {
// Little trick: if you don't do this, only directory names
// ending in one of the extensions appear in the window.
if (f.isDirectory( )) {
return true;
} else if (f.isFile( )) {
Iterator it = exts.iterator( );
while (it.hasNext( )) {
if (f.getName().endsWith((String)it.next( )))
return true;
}
}
// A file that didn't match, or a weirdo (e.g. UNIX device file?).
return false;
}
/** Set the printable description of this filter. */
public void setDescription(String s)
{
description = s;
}
/** Return the printable description of this filter. */
public String getDescription( )
{
return description;
}
}