X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FExternalTemplate.cpp;h=e7eca8b274fd303a4aef185c8e6ca75fbd95fc08;hb=f24bb4a91980a17c00c12ec0bbb457e0f182215f;hp=651f2b61ec0b0052fe8e6ab3da49d823e43ec661;hpb=52019917f411c72ffa6fd8200bc5a89d286d87be;p=lyx.git diff --git a/src/insets/ExternalTemplate.cpp b/src/insets/ExternalTemplate.cpp index 651f2b61ec..e7eca8b274 100644 --- a/src/insets/ExternalTemplate.cpp +++ b/src/insets/ExternalTemplate.cpp @@ -22,6 +22,7 @@ #include "support/PathChanger.h" #include "support/Translator.h" +#include #include using namespace std; @@ -35,7 +36,7 @@ typedef Translator TransformIDTranslator; static TransformIDTranslator const initIDTranslator() { - TransformIDTranslator translator(TransformID(-1), ""); + TransformIDTranslator translator(None, ""); translator.addPair(Rotate, "Rotate"); translator.addPair(Resize, "Resize"); translator.addPair(Clip, "Clip"); @@ -70,33 +71,25 @@ TemplateManager::TemplateManager() } -class DumpPreambleDef { -public: - typedef TemplateManager::PreambleDefs::value_type value_type; - - DumpPreambleDef(ostream & os) : os_(os) {} - - void operator()(value_type const & vt) { - os_ << "PreambleDef " << vt.first << '\n' - << to_utf8(vt.second) - << "PreambleDefEnd" << endl; - } - -private: - ostream & os_; -}; - - -class DumpTemplate { -public: - typedef TemplateManager::Templates::value_type value_type; +std::function + DumpPreambleDef(ostream & os) +{ + return [&os](TemplateManager::PreambleDefs::value_type const & vt) + { + os << "PreambleDef " << vt.first << '\n' + << to_utf8(vt.second) + << "PreambleDefEnd" << endl; + }; +} - DumpTemplate(ostream & os) : os_(os) {} - void operator()(value_type const & vt) { +std::function + DumpTemplate(ostream & os) +{ + return [&os](TemplateManager::Templates::value_type const & vt) { Template const & et = vt.second; - os_ << "Template " << et.lyxName << '\n' + os << "Template " << et.lyxName << '\n' << "\tGuiName " << et.guiName << '\n' << "\tHelpText\n" << to_utf8(et.helpText) @@ -107,41 +100,37 @@ public: << "\tPreview "; switch (et.preview_mode) { case PREVIEW_OFF: - os_ << "Off\n"; + os << "Off\n"; break; case PREVIEW_GRAPHICS: - os_ << "Graphics\n"; + os << "Graphics\n"; break; case PREVIEW_INSTANT: - os_ << "InstantPreview\n"; + os << "InstantPreview\n"; break; } typedef vector IDs; IDs::const_iterator it = et.transformIds.begin(); IDs::const_iterator end = et.transformIds.end(); for (; it != end; ++it) { - os_ << "\tTransform " + os << "\tTransform " << transformIDTranslator().find(*it) << '\n'; } - et.dumpFormats(os_); - os_ << "TemplateEnd" << endl; + et.dumpFormats(os); + os << "TemplateEnd" << endl; - } - -private: - ostream & os_; -}; - -class DumpFormat { -public: - typedef Template::Formats::value_type value_type; + }; +} - DumpFormat(ostream & o) : os_(o) {} - void operator()(value_type const & vt) const { +std::function + DumpFormat (ostream & os) +{ + return [&os](Template::Formats::value_type const & vt) + { Template::Format const & ft = vt.second; - os_ << "\tFormat " << vt.first << '\n' + os << "\tFormat " << vt.first << '\n' << "\t\tProduct " << ft.product << '\n' << "\t\tUpdateFormat " << ft.updateFormat << '\n' << "\t\tUpdateResult " << ft.updateResult << '\n'; @@ -150,14 +139,14 @@ public: vector::const_iterator qend = ft.requirements.end(); for (; qit != qend; ++qit) { lyxerr << "req:" << *qit << endl; - os_ << "\t\tRequirement " << *qit << '\n'; + os << "\t\tRequirement " << *qit << '\n'; } typedef vector Options; Options::const_iterator oit = ft.options.begin(); Options::const_iterator oend = ft.options.end(); for (; oit != oend; ++oit) { - os_ << "\t\tOption " + os << "\t\tOption " << oit->name << ": " << oit->option @@ -167,7 +156,7 @@ public: vector::const_iterator pit = ft.preambleNames.begin(); vector::const_iterator pend = ft.preambleNames.end(); for (; pit != pend; ++pit) { - os_ << "\t\tPreamble " << *pit << '\n'; + os << "\t\tPreamble " << *pit << '\n'; } typedef Template::Format::FileMap FileMap; @@ -177,16 +166,14 @@ public: vector::const_iterator fit = rit->second.begin(); vector::const_iterator fend = rit->second.end(); for (; fit != fend; ++fit) { - os_ << "\t\tReferencedFile " << rit->first + os << "\t\tReferencedFile " << rit->first << " \"" << *fit << "\"\n"; } } - os_ << "\tFormatEnd\n"; - } -private: - ostream & os_; -}; + os << "\tFormatEnd\n"; + }; +} void Template::dumpFormats(ostream & os) const @@ -516,7 +503,7 @@ void setOptionFactory(Template::Format & format, string const & transform, transform_class_not_found(lyxerr, transformer_class); } -} // namespace anon +} // namespace void Template::Format::readFormat(Lexer & lex)