* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
- * \author Lars Gullik Bjønnes
+ * \author Lars Gullik Bjønnes
* \author Jean-Marc Lasgouttes
*
* Full author contact details are available in file CREDITS.
#ifndef EXPORTER_H
#define EXPORTER_H
-#include "support/filename.h"
+#include "support/FileName.h"
#include <map>
#include <string>
namespace lyx {
+enum CopyStatus {
+ SUCCESS,
+ FORCE,
+ CANCEL
+};
-class Buffer;
-class Format;
-class Exporter {
-public:
- ///
- static
- bool Export(Buffer * buffer, std::string const & format,
- bool put_in_tempdir, std::string & result_file);
- ///
- static
- bool Export(Buffer * buffer, std::string const & format,
- bool put_in_tempdir);
- ///
- static
- bool preview(Buffer * buffer, std::string const & format);
- ///
- static
- bool isExportable(Buffer const & buffer, std::string const & format);
- ///
- static
- std::vector<Format const *> const
- getExportableFormats(Buffer const & buffer, bool only_viewable);
- ///
-};
+/** copy file \p sourceFile to \p destFile. If \p force is false, the user
+ * will be asked before existing files are overwritten.
+ * \return
+ * - SUCCESS if this file got copied
+ * - FORCE if subsequent calls should not ask for confirmation before
+ * overwriting files anymore.
+ * - CANCEL if the export should be cancelled
+ */
+CopyStatus copyFile(std::string const & format,
+ support::FileName const & sourceFile, support::FileName const & destFile,
+ std::string const & latexFile, bool force);
class ExportedFile {
support::FileName const & sourceName);
/// get referenced files for \p format
std::vector<ExportedFile> const
- externalFiles(std::string const & format) const;
+ externalFiles(std::string const & format) const;
private:
typedef std::map<std::string, std::vector<ExportedFile> > FileMap;
/** Files that are referenced by the export result in the
* different formats.
*/
- FileMap externalfiles;
+ FileMap externalfiles_;
};