]> git.lyx.org Git - features.git/commitdiff
Output arguments required by arguments with default or preset arg
authorJuergen Spitzmueller <spitz@lyx.org>
Wed, 21 May 2014 11:12:14 +0000 (13:12 +0200)
committerJuergen Spitzmueller <spitz@lyx.org>
Wed, 21 May 2014 13:53:53 +0000 (15:53 +0200)
Fixes: #9128
src/output_latex.cpp
status.21x

index 1fd387ccf2666d7c02f9724170145e8c77bc5d57..a6df5760bb1d8703371244cfca8c16d9c0a239cb 100644 (file)
@@ -331,6 +331,18 @@ void getArgInsets(otexstream & os, OutputParams const & runparams, Layout::LaTeX
        if (argnr == 0)
                return;
 
+       // Default and preset args are always output, so if they require
+       // other arguments, consider this.
+       Layout::LaTeXArgMap::const_iterator lit = latexargs.begin();
+       Layout::LaTeXArgMap::const_iterator const lend = latexargs.end();
+       for (; lit != lend; ++lit) {
+               Layout::latexarg arg = (*lit).second;
+               if ((!arg.presetarg.empty() || !arg.defaultarg.empty()) && !arg.requires.empty()) {
+                               vector<string> req = getVectorFromString(arg.requires);
+                               required.insert(required.end(), req.begin(), req.end());
+                       }
+       }
+
        for (unsigned int i = 1; i <= argnr; ++i) {
                map<int, InsetArgument const *>::const_iterator lit = ilist.find(i);
                bool inserted = false;
index f36027066e1d46554e66c3f1e3323e3426f84783..01e9cf2713cd540fdb908fc3fa6e142f27dfa977 100644 (file)
@@ -86,6 +86,8 @@ What's new
 
 - Fix some nesting problems in reversion of some beamer environments to 2.0 format.
 
+- Output arguments required by arguments with DefaultArg or PresetArg (bug 9128).
+
 
 * USER INTERFACE