#ifndef EXPORTER_H
#define EXPORTER_H
+#include "support/filename.h"
+
#include <map>
#include <string>
#include <vector>
+namespace lyx {
+
+
class Buffer;
class Format;
bool put_in_tempdir);
///
static
- bool Preview(Buffer * buffer, std::string const & format);
+ bool preview(Buffer * buffer, std::string const & format);
///
static
- bool IsExportable(Buffer const & buffer, std::string const & format);
+ bool isExportable(Buffer const & buffer, std::string const & format);
///
static
std::vector<Format const *> const
- GetExportableFormats(Buffer const & buffer, bool only_viewable);
+ getExportableFormats(Buffer const & buffer, bool only_viewable);
///
};
-struct ExportedFile {
- ExportedFile(std::string const &, std::string const &);
+class ExportedFile {
+public:
+ ExportedFile(support::FileName const &, std::string const &);
/// absolute name of the source file
- std::string sourceName;
+ support::FileName sourceName;
/// final name that the exported file should get (absolute name or
/// relative to the directory of the master document)
std::string exportName;
* with this method.
* Then the exporter mechanism copies them to the right place, asks
* for confirmation before overwriting existing files etc.
+ * \param format format that references the given file
+ * \param sourceName source file name. Needs to be absolute
+ * \param exportName resulting file name. Can be either absolute
+ * or relative to the exported document.
*/
- void addExternalFile(std::string const &, std::string const &,
- std::string const &);
- /// add a referenced file for one format.
- /// The final name is the source file name without path
- void addExternalFile(std::string const &, std::string const &);
- /// get referenced files for one format
+ void addExternalFile(std::string const & format,
+ support::FileName const & sourceName,
+ std::string const & exportName);
+ /** add a referenced file for one format.
+ * The final name is the source file name without path.
+ * \param format format that references the given file
+ * \param sourceName source file name. Needs to be absolute
+ */
+ void addExternalFile(std::string const & format,
+ support::FileName const & sourceName);
+ /// get referenced files for \p format
std::vector<ExportedFile> const
- externalFiles(std::string const &) 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
FileMap externalfiles;
};
+
+} // namespace lyx
+
#endif