X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FCiteEnginesList.cpp;h=3c10b4003cb4f16a349009eb072f8f528016e90f;hb=28be7d552f62cc02fa86d7f79201d089bfb2d7b5;hp=118c1b7a59ea1764bb98f30281398ff83e2e6695;hpb=23c231c761dda80d220927c15e15c14493a57bc2;p=lyx.git diff --git a/src/CiteEnginesList.cpp b/src/CiteEnginesList.cpp index 118c1b7a59..3c10b4003c 100644 --- a/src/CiteEnginesList.cpp +++ b/src/CiteEnginesList.cpp @@ -40,11 +40,9 @@ CiteEnginesList theCiteEnginesList; LyXCiteEngine::LyXCiteEngine(string const & n, string const & i, vector const & cet, string const & cfm, vector const & dbs, - string const & d, vector const & p, - vector const & r, vector const & e): + string const & d, vector const & p): name_(n), id_(i), engine_types_(cet), cite_framework_(cfm), default_biblios_(dbs), - description_(d), package_list_(p), required_engines_(r), excluded_engines_(e), - checked_(false), available_(false) + description_(d), package_list_(p), checked_(false), available_(false) { filename_ = id_ + ".citeengine"; } @@ -86,39 +84,6 @@ bool LyXCiteEngine::hasEngineType(CiteEngineType const & et) const } -bool LyXCiteEngine::isCompatible(string const & cename) const -{ - // do we exclude it? - if (find(excluded_engines_.begin(), excluded_engines_.end(), cename) != - excluded_engines_.end()) - return false; - - LyXCiteEngine const * const lm = theCiteEnginesList[cename]; - if (!lm) - return true; - - // does it exclude us? - vector const excengs = lm->getExcludedEngines(); - if (find(excengs.begin(), excengs.end(), id_) != excengs.end()) - return false; - - return true; -} - - -bool LyXCiteEngine::areCompatible(string const & eng1, string const & eng2) -{ - LyXCiteEngine const * const lm1 = theCiteEnginesList[eng1]; - if (lm1) - return lm1->isCompatible(eng2); - LyXCiteEngine const * const lm2 = theCiteEnginesList[eng2]; - if (lm2) - return lm2->isCompatible(eng1); - // Can't check it either way. - return true; -} - - string LyXCiteEngine::getDefaultBiblio(CiteEngineType const & cet) const { string res; @@ -145,6 +110,12 @@ bool LyXCiteEngine::isDefaultBiblio(string const & bf) const } +bool LyXCiteEngine::requires(const string p) const +{ + return find(package_list_.begin(), package_list_.end(), p) != package_list_.end(); +} + + // used when sorting the cite engine list. class EngineSorter { public: @@ -273,29 +244,9 @@ bool CiteEnginesList::read() str = split(str, p, ','); pkgs.push_back(p); } - if (!lex.next()) - break; - str = lex.getString(); - LYXERR(Debug::TCLASS, "Required: " << str); - vector req; - while (!str.empty()) { - string p; - str = split(str, p, '|'); - req.push_back(p); - } - if (!lex.next()) - break; - str = lex.getString(); - LYXERR(Debug::TCLASS, "Excluded: " << str); - vector exc; - while (!str.empty()) { - string p; - str = split(str, p, '|'); - exc.push_back(p); - } // This code is run when we have - // cename, fname, desc, pkgs, req and exc - addCiteEngine(cename, fname, cets, citeframework, dbs, desc, pkgs, req, exc); + // cename, fname, cets, citeframework, dbs, desc, pkgs + addCiteEngine(cename, fname, cets, citeframework, dbs, desc, pkgs); } // end switch } //end while @@ -310,10 +261,9 @@ bool CiteEnginesList::read() void CiteEnginesList::addCiteEngine(string const & cename, string const & filename, vector const & cets, string const & citeframework, vector const & dbs, - string const & description, vector const & pkgs, - vector const & req, vector const & exc) + string const & description, vector const & pkgs) { - LyXCiteEngine ce(cename, filename, cets, citeframework, dbs, description, pkgs, req, exc); + LyXCiteEngine ce(cename, filename, cets, citeframework, dbs, description, pkgs); englist_.push_back(ce); }