#include "support/gettext.h"
#include "support/lstrings.h"
#include "support/os.h"
+#include "support/TempFile.h"
#include <algorithm>
#include <fstream>
// development/tools/updatelayouts.sh script, to update the format of
// all of our layout files.
//
-int const LAYOUT_FORMAT = 50; //ef: removal of separator layout
+int const LAYOUT_FORMAT = 51; //spitz: add ToggleIndent tag
namespace {
bool TextClass::convertLayoutFormat(support::FileName const & filename, ReadType rt)
{
LYXERR(Debug::TCLASS, "Converting layout file to " << LAYOUT_FORMAT);
- FileName const tempfile = FileName::tempName("convert_layout");
+ TempFile tmp("convertXXXXXX.layout");
+ FileName const tempfile = tmp.name();
bool success = layout2layout(filename, tempfile);
if (success)
success = readWithoutConv(tempfile, rt) == OK;
- tempfile.removeFile();
return success;
}
std::string TextClass::convert(std::string const & str)
{
- FileName const fn = FileName::tempName("locallayout");
+ TempFile tmp1("localXXXXXX.layout");
+ FileName const fn = tmp1.name();
ofstream os(fn.toFilesystemEncoding().c_str());
os << str;
os.close();
- FileName const tempfile = FileName::tempName("convert_locallayout");
+ TempFile tmp2("convert_localXXXXXX.layout");
+ FileName const tempfile = tmp2.name();
bool success = layout2layout(fn, tempfile);
if (!success)
return "";
ret += tmp + '\n';
}
is.close();
- tempfile.removeFile();
return ret;
}
return retval;
// write the layout string to a temporary file
- FileName const tempfile = FileName::tempName("TextClass_read");
+ TempFile tmp("TextClass_read");
+ FileName const tempfile = tmp.name();
ofstream os(tempfile.toFilesystemEncoding().c_str());
if (!os) {
LYXERR0("Unable to create temporary file");
<< LAYOUT_FORMAT);
return ERROR;
}
- tempfile.removeFile();
return OK_OLDFORMAT;
}