#include "outputparams.h"
#include "frontends/Alert.h"
-#include "support/FileInfo.h"
#include "support/filetools.h"
#include "support/lyxlib.h"
-#include "support/os.h"
+#include "support/package.h"
+
+#include <boost/filesystem/operations.hpp>
using lyx::support::AddName;
using lyx::support::bformat;
using lyx::support::ChangeExtension;
using lyx::support::contains;
-using lyx::support::getFormatFromContents;
using lyx::support::MakeAbsPath;
using lyx::support::MakeDisplayPath;
using lyx::support::OnlyFilename;
using lyx::support::OnlyPath;
+using lyx::support::package;
using lyx::support::prefixIs;
using std::find;
using std::string;
using std::vector;
+namespace fs = boost::filesystem;
namespace {
/// ask the user what to do if a file already exists
int checkOverwrite(string const & filename)
{
- if (lyx::support::FileInfo(filename, true).exist()) {
+ if (fs::exists(filename)) {
string text = bformat(_("The file %1$s already exists.\n\n"
"Do you want to over-write that file?"),
MakeDisplayPath(filename));
// overwrite themselves. This check could be changed to
// boost::filesystem::equivalent(sourceFile, destFile) if export to
// other directories than the document directory is desired.
- if (!prefixIs(OnlyPath(sourceFile), lyx::support::os::getTmpDir()))
+ if (!prefixIs(OnlyPath(sourceFile), package().temp_dir()))
return ret;
if (!force) {
else if (backend_format == format) {
runparams.nice = true;
buffer->makeLaTeXFile(filename, string(), runparams);
- } else if (contains(buffer->filePath(), ' ')) {
+ } else if (!lyxrc.tex_allows_spaces
+ && contains(buffer->filePath(), ' ')) {
Alert::error(_("File name error"),
_("The directory path to the document cannot contain spaces."));
return false;
CopyStatus status = SUCCESS;
for (vector<ExportedFile>::const_iterator it = files.begin();
it != files.end() && status != CANCEL; ++it) {
- string const fmt = getFormatFromContents(it->sourceName);
+ string const fmt =
+ formats.getFormatFromFile(it->sourceName);
status = copyFile(fmt, it->sourceName,
MakeAbsPath(it->exportName, dest),
it->exportName, status == FORCE);