#include "support/filetools.h"
#include "support/lstrings.h"
#include "support/Package.h"
-#include "support/Path.h"
+#include "support/PathChanger.h"
+#include "support/Translator.h"
#include <ostream>
// We have to have dummy default commands for security reasons!
Template::Template()
- : inputFormat("*")
+ : inputFormat("*"), automaticProduction(false), preview_mode(PREVIEW_OFF)
{}
void operator()(value_type const & vt) {
os_ << "PreambleDef " << vt.first << '\n'
- << vt.second
+ << to_utf8(vt.second)
<< "PreambleDefEnd" << endl;
}
os_ << "Template " << et.lyxName << '\n'
<< "\tGuiName " << et.guiName << '\n'
<< "\tHelpText\n"
- << et.helpText
+ << to_utf8(et.helpText)
<< "\tHelpTextEnd\n"
<< "\tInputFormat " << et.inputFormat << '\n'
<< "\tFileFilter " << et.fileRegExp << '\n'
- << "\tAutomaticProduction " << et.automaticProduction << '\n';
-
+ << "\tAutomaticProduction " << et.automaticProduction << '\n'
+ << "\tPreview ";
+ switch (et.preview_mode) {
+ case PREVIEW_OFF:
+ os_ << "Off\n";
+ break;
+ case PREVIEW_GRAPHICS:
+ os_ << "Graphics\n";
+ break;
+ case PREVIEW_INSTANT:
+ os_ << "InstantPreview\n";
+ break;
+ }
typedef vector<TransformID> IDs;
IDs::const_iterator it = et.transformIds.begin();
IDs::const_iterator end = et.transformIds.end();
}
-TemplateManager::Templates const &
-TemplateManager::getTemplates() const
+TemplateManager::Templates const & TemplateManager::getTemplates() const
{
return templates;
}
}
-string const
-TemplateManager::getPreambleDefByName(string const & name) const
+docstring TemplateManager::getPreambleDefByName(string const & name) const
{
string const trimmed_name = trim(name);
if (trimmed_name.empty())
- return string();
+ return docstring();
PreambleDefs::const_iterator it = preambledefs.find(trimmed_name);
if (it == preambledefs.end())
- return string();
+ return docstring();
return it->second;
}
case TM_PREAMBLEDEF: {
lex.next();
string const name = lex.getString();
- preambledefs[name] = lex.getLongString(preamble_end_tag);
+ preambledefs[name] = lex.getLongString(from_ascii(preamble_end_tag));
}
break;
TO_INPUTFORMAT,
TO_FILTER,
TO_AUTOMATIC,
+ TO_PREVIEW,
TO_TRANSFORM,
TO_FORMAT,
TO_END
{ "guiname", TO_GUINAME },
{ "helptext", TO_HELPTEXT },
{ "inputformat", TO_INPUTFORMAT },
+ { "preview", TO_PREVIEW },
{ "templateend", TO_END },
{ "transform", TO_TRANSFORM }
};
break;
case TO_HELPTEXT:
- helpText = lex.getLongString("HelpTextEnd");
+ helpText = lex.getLongString(from_ascii("HelpTextEnd"));
break;
case TO_INPUTFORMAT:
automaticProduction = lex.getBool();
break;
- case TO_TRANSFORM:
+ case TO_PREVIEW:
+ lex >> token;
+ if (token == "InstantPreview")
+ preview_mode = PREVIEW_INSTANT;
+ else if (token == "Graphics")
+ preview_mode = PREVIEW_GRAPHICS;
+ else
+ preview_mode = PREVIEW_OFF;
+ break;
+
+ case TO_TRANSFORM: {
lex >> token;
TransformID id = transformIDTranslator().find(token);
if (int(id) == -1)
LYXERR0("Transform " << token << " is not recognized");
else
- ids.push_back(id);
+ transformIds.push_back(id);
break;
+ }
case TO_FORMAT:
lex.next(true);
case TO_END:
return;
-
- default:
- lex.printError("external::Template::readTemplate: "
- "Wrong tag: $$Token");
- BOOST_ASSERT(false);
- break;
}
}
}