X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetInfo.cpp;h=46d656c817c9ad9d78a221f321867717e368c566;hb=eb294eadb5e7f22880da399ae082f74567bbfc4e;hp=65b0d1285f52a889362aec7c40956945ea338a1e;hpb=12dfdbf0a3e667544fd3f0af7fe86b26909fd6a0;p=lyx.git diff --git a/src/insets/InsetInfo.cpp b/src/insets/InsetInfo.cpp index 65b0d1285f..46d656c817 100644 --- a/src/insets/InsetInfo.cpp +++ b/src/insets/InsetInfo.cpp @@ -38,6 +38,7 @@ #include "frontends/Application.h" +#include "support/Changer.h" #include "support/convert.h" #include "support/debug.h" #include "support/docstream.h" @@ -158,6 +159,8 @@ set getTexFileList(string const & filename) getVectorFromString(file.fileContents("UTF-8"), from_ascii("\n")); // Normalise paths like /foo//bar ==> /foo/bar + // No "auto const &" because doc is modified later + // coverity[auto_causes_copy] for (auto doc : doclist) { doc = subst(doc, from_ascii("\r"), docstring()); while (contains(doc, from_ascii("//"))) @@ -779,6 +782,12 @@ void InsetInfo::metrics(MetricsInfo & mi, Dimension & dim) const } +void InsetInfo::draw(PainterInfo & pi, int x, int y) const +{ + Changer chg = changeVar(lyxrc.mark_foreign_language, false); + InsetCollapsible::draw(pi, x, y); +} + void InsetInfo::updateBuffer(ParIterator const & it, UpdateType utype, bool const deleted) { @@ -977,7 +986,19 @@ void InsetInfo::build() if (initialized_) break; // check in packages.lst - if (LaTeXFeatures::isAvailable(params_.name)) { + bool available; + // we also allow version check with version separated by blank + if (contains(params_.name, ' ')) { + string name; + string const version = split(params_.name, name, ' '); + int const y = convert(version.substr(0,4)); + int const m = convert(version.substr(4,2)); + int const d = convert(version.substr(6,2)); + available = LaTeXFeatures::isAvailableAtLeastFrom(name, y, m, d); + } else + available = LaTeXFeatures::isAvailable(params_.name); + + if (available) { gui = _("yes"); info(from_ascii("yes"), params_.lang); } else { @@ -1219,10 +1240,10 @@ void InsetInfo::build() } -void InsetInfo::latex(otexstream & os, OutputParams const & runparams) const +void InsetInfo::validate(LaTeXFeatures & features) const { const_cast(this)->build(); - InsetCollapsible::latex(os, runparams); + InsetCollapsible::validate(features); }