📄 exporter.java
字号:
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/*
* Created on 2006/8/28
*
* @Author: Xiaojun Chen
* $Revision$ 1.0
*
*/
package eti.bi.alphaminer.tools;
import java.awt.Component;
import java.awt.Point;
import java.io.File;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
import javax.swing.filechooser.FileFilter;
import org.freehep.util.export.ExportDialog;
public class Exporter {
private static ExportDialog exportDialog;
/**
* @author Xiaojun Chen
* @param parent the parent the export dialog to show on
* @param toexport component to export
* @param title title of this export dialog
* @param filename the default export file name without predix
* @param p the location the export dialog locate at
* */
public static void exportImage(Component parent, Component toexport, String title, String filename, Point p) {
if(exportDialog==null) {
exportDialog = new ExportDialog("Alphaminer");
}
if(p!=null) {
exportDialog.setLocation(p);
}
exportDialog.showExportDialog(parent, title, toexport, filename);
}
public static File chooseSaveFile(Component parent, String title, FileFilter filter, boolean saveFileFilter, File selectedFile, File currentDirectory, String defaultpredic) {
if(currentDirectory==null) {
currentDirectory = new File(System.getProperty("user.dir"));
}
JFileChooser chooser = new JFileChooser(currentDirectory);
chooser.setDialogTitle(title);
chooser.setFileFilter(filter);
chooser.setSelectedFile(selectedFile);
int returnVal = chooser.showSaveDialog(parent);
if(returnVal == JFileChooser.APPROVE_OPTION) {
File chooseFile = chooser.getSelectedFile();
if(defaultpredic!=null) {
String filename = chooseFile.getAbsolutePath();
if(filename.indexOf(".")<0) {
filename = filename.concat(defaultpredic);
chooseFile = new File(filename);
}
}
if(saveFileFilter) {
if(filter!=null) {
if(!filter.accept(chooseFile)) {
return chooseSaveFile(parent, title, filter, saveFileFilter, selectedFile, chooseFile, defaultpredic);
}
}
}
if(chooseFile.exists()) {
int option = JOptionPane
.showConfirmDialog(
parent,
"The file \""
+ chooseFile.getName()
+ "\""
+ " already exists. Do you want to replace the existing file?",//
"AlphaMiner", JOptionPane.YES_NO_OPTION,
JOptionPane.QUESTION_MESSAGE);
if(option == JOptionPane.YES_OPTION) {
return chooseFile;
}
else if(option == JOptionPane.NO_OPTION){
return chooseSaveFile(parent, title, filter, saveFileFilter, selectedFile, chooseFile, defaultpredic);
}
else if(option == JOptionPane.CANCEL_OPTION){
return chooseSaveFile(parent, title, filter, saveFileFilter, selectedFile, chooseFile, defaultpredic);
}
}
else {
return chooseFile;
}
}
return null;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -