Java Reference
In-Depth Information
public ExtensionFilter(String ext, String descr) {
extension = ext.toLowerCase(); // Store the extension as
// lower case
description = descr; // Store the description
}
public boolean accept(File file) {
return(file.isDirectory()||file.getName()
.toLowerCase().endsWith(extension));
}
public String getDescription() {
return description;
}
private String description; // Filter description
private String extension; // File extension
}
To create a filter for files with the extension .ske we could write:
ExtensionFilter sketchFilter = new ExtensionFilter(".ske",
"Sketch files (*.ske)");
If you add the ExtensionFilter.java source file to the Sketcher program directory, we could try
this out by adding a little code to the showDialog() member of the SketchFrame class.
Try It Out - Using a File Filter
We only need to add three lines of code:
private File showDialog(String dialogTitle,
String approveButtonText,
String approveButtonTooltip,
char approveButtonMnemonic,
File file) { // Current file - if any
files.setDialogTitle(dialogTitle);
files.setApproveButtonText(approveButtonText);
files.setApproveButtonToolTipText(approveButtonTooltip);
files.setApproveButtonMnemonic(approveButtonMnemonic);
files.setFileSelectionMode(files.FILES _ ONLY);
files.rescanCurrentDirectory();
files.setSelectedFile(file);
ExtensionFilter sketchFilter = new ExtensionFilter(".ske",
"Sketch files (*.ske)");
files.addChoosableFileFilter(sketchFilter); // Add the filter
files.setFileFilter(sketchFilter); // and select it
int result = files.showDialog(SketchFrame.this, null);
Search WWH ::




Custom Search