X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FModuleList.cpp;h=356bbe9379440a7e85ded86908ec9858df6ec1da;hb=38c2cde0d8695ac5287bae218c4a33a2acf18ef8;hp=f5d5dd54b47efeb81323efeea9cd2ec208f82140;hpb=488b9ae3a20395e66411329c4a5e262d30e0c771;p=lyx.git diff --git a/src/ModuleList.cpp b/src/ModuleList.cpp index f5d5dd54b4..356bbe9379 100644 --- a/src/ModuleList.cpp +++ b/src/ModuleList.cpp @@ -37,30 +37,25 @@ ModuleList theModuleList; LyXModule::LyXModule(string const & n, string const & i, string const & d, vector const & p, vector const & r, vector const & e, - string const & c): + string const & c, bool const local): name_(n), id_(i), description_(d), package_list_(p), required_modules_(r), excluded_modules_(e), category_(c), - checked_(false) + checked_(false), available_(false), local_(local) { filename_ = id_ + ".module"; } -vector LyXModule::prerequisites() const { -#ifdef TEX2LYX - return vector(); -#else +vector LyXModule::prerequisites() const +{ if (!checked_) isAvailable(); return prerequisites_; -#endif } -bool LyXModule::isAvailable() const { -#ifdef TEX2LYX - return true; -#else +bool LyXModule::isAvailable() const +{ if (package_list_.empty()) return true; if (checked_) @@ -77,7 +72,6 @@ bool LyXModule::isAvailable() const { } } return available_; -#endif } @@ -115,8 +109,7 @@ bool LyXModule::areCompatible(string const & mod1, string const & mod2) // used when sorting the module list. -class ModuleSorter -{ +class ModuleSorter { public: int operator()(LyXModule const & lm1, LyXModule const & lm2) const { @@ -206,9 +199,13 @@ bool ModuleList::read() break; string const catgy = lex.getString(); LYXERR(Debug::TCLASS, "Category: " << catgy); + if (!lex.next()) + break; + bool const local = lex.getString() == "true"; + LYXERR(Debug::TCLASS, "Local: " << local); // This code is run when we have - // modName, fname, desc, pkgs, req, exc, and catgy - addLayoutModule(modname, fname, desc, pkgs, req, exc, catgy); + // modName, fname, desc, pkgs, req, exc, catgy, and local + addLayoutModule(modname, fname, desc, pkgs, req, exc, catgy, local); } // end switch } //end while @@ -223,9 +220,9 @@ bool ModuleList::read() void ModuleList::addLayoutModule(string const & modname, string const & filename, string const & description, vector const & pkgs, vector const & req, - vector const & exc, string const & catgy) + vector const & exc, string const & catgy, bool const local) { - LyXModule lm(modname, filename, description, pkgs, req, exc, catgy); + LyXModule lm(modname, filename, description, pkgs, req, exc, catgy, local); modlist_.push_back(lm); } @@ -265,15 +262,16 @@ LyXModule const * ModuleList::operator[](string const & str) const return 0; } + LyXModule * ModuleList::operator[](string const & str) { LyXModuleList::iterator it = modlist_.begin(); for (; it != modlist_.end(); ++it) if (it->getID() == str) { - LyXModule & mod = *it; - return &mod; + LyXModule & mod = *it; + return &mod; } - return 0; + return 0; } } // namespace lyx