|
ExtensionFileFilter |
|
1 /* 2 * ExtensionFileFilter.java 3 * 4 * Copyright (c) 1998-2001, The University of Sheffield. 5 * 6 * This file is part of GATE (see http://gate.ac.uk/), and is free 7 * software, licenced under the GNU Library General Public License, 8 * Version 2, June 1991 (in the distribution as file licence.html, 9 * and also available at http://gate.ac.uk/gate/licence.html). 10 * 11 * Valentin Tablan, 22/May/2000 12 * 13 * $Id: ExtensionFileFilter.java,v 1.3 2001/11/29 15:45:07 valyt Exp $ 14 */ 15 package gate.util; 16 17 import java.io.*; 18 import java.util.*; 19 20 /** 21 * Implementation of a file filter 22 * This class is used by {@link javax.swing.JFileChooser} to filter the 23 * displayed files by their extension. 24 * 25 */ 26 public class ExtensionFileFilter extends javax.swing.filechooser.FileFilter 27 implements FileFilter { 28 29 /** Debug flag 30 */ 31 private static final boolean DEBUG = false; 32 33 /** 34 * Builds a new ExtensionFileFilter 35 */ 36 public ExtensionFileFilter() { 37 } 38 39 /** 40 * Checks a file for compliance with the requested extensions. 41 * 42 * @param f 43 */ 44 public boolean accept(File f){ 45 String name = f.getName(); 46 if(f.isDirectory()) return true; 47 48 for(int i = 0; i < acceptedExtensions.size(); i++){ 49 if(name.endsWith((String)acceptedExtensions.get(i))) return true; 50 } 51 return false; 52 } 53 54 /** 55 * Returns the user-frielndly description for the files, e.g. "Text files" 56 * 57 */ 58 public String getDescription() { 59 return description; 60 } 61 62 /** 63 * Adds a new extension to the list of accepted extensions. 64 * 65 * @param ext 66 */ 67 public void addExtension(String ext) { 68 acceptedExtensions.add(ext); 69 } 70 71 /** 72 * Sets the user friendly description for the accepted files. 73 * 74 * @param desc 75 */ 76 public void setDescription(String desc) { 77 description = desc; 78 } 79 80 /** 81 * The set of accepted extensions 82 * 83 */ 84 private List acceptedExtensions = new ArrayList(); 85 86 /** 87 * The desciption of the accepted files. 88 * 89 */ 90 private String description; 91 92 } // ExtensionFileFilter 93
|
ExtensionFileFilter |
|