/*
* jMemorize - Learning made easy (and fun) - A Leitner flashcards tool
* Copyright(C) 2004-2006 Riad Djemili
*
* 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 1, 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.
*/
package jmemorize.gui.swing.actions.file;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.charset.Charset;
import jmemorize.core.Lesson;
import jmemorize.core.io.CsvBuilder;
import jmemorize.gui.LC;
import jmemorize.gui.Localization;
import jmemorize.util.ExtensionFileFilter;
/**
* Exports to comma-separated-values.
*
* @author djemili
*/
public class ExportToCSVAction extends AbstractExportAction
{
public ExportToCSVAction()
{
setValues();
}
/* (non-Javadoc)
* @see jmemorize.gui.swing.actions.file.AbstractExportAction
*/
protected void doExport(Lesson lesson, File file) throws IOException
{
FileOutputStream out = new FileOutputStream(file);
CsvBuilder.exportLesson(out, lesson, ',', Charset.forName("UTF-8"));
}
/* (non-Javadoc)
* @see jmemorize.gui.swing.actions.file.AbstractExportAction
*/
protected ExtensionFileFilter getFileFilter()
{
return new ExtensionFileFilter("csv", Localization.get(LC.FILE_CSV));
}
private void setValues()
{
setName(Localization.get(LC.FILE_CSV));
setIcon("/resource/icons/file_saveas.gif"); //$NON-NLS-1$
}
}