]> git.lyx.org Git - lyx.git/blobdiff - src/output_latex.cpp
Support halfline and fullline also in vspace.
[lyx.git] / src / output_latex.cpp
index 07490e5dfe90e524fb9feb5525c1883110dbf435..f23fbda293470375ff479d9f01c5da10a806293a 100644 (file)
@@ -383,7 +383,7 @@ void TeXEnvironment(Buffer const & buf, Text const & text,
                    pit_type & pit, otexstream & os)
 {
        ParagraphList const & paragraphs = text.paragraphs();
-       ParagraphList::const_iterator ipar = paragraphs.constIterator(pit);
+       ParagraphList::const_iterator ipar = paragraphs.iterator_at(pit);
        LYXERR(Debug::LATEX, "TeXEnvironment for paragraph " << pit);
 
        Layout const & current_layout = ipar->layout();
@@ -393,7 +393,7 @@ void TeXEnvironment(Buffer const & buf, Text const & text,
        // This is for debugging purpose at the end.
        pit_type const par_begin = pit;
        for (; pit < runparams.par_end; ++pit) {
-               ParagraphList::const_iterator par = paragraphs.constIterator(pit);
+               ParagraphList::const_iterator par = paragraphs.iterator_at(pit);
 
                // check first if this is an higher depth paragraph.
                bool go_out = (par->params().depth() < current_depth);
@@ -437,7 +437,7 @@ void TeXEnvironment(Buffer const & buf, Text const & text,
                // Do not output empty environments if the whole paragraph has
                // been deleted with ct and changes are not output.
                if (size_t(pit + 1) < paragraphs.size()) {
-                       ParagraphList::const_iterator nextpar = paragraphs.constIterator(pit + 1);
+                       ParagraphList::const_iterator nextpar = paragraphs.iterator_at(pit + 1);
                        Paragraph const & cpar = paragraphs.at(pit);
                        if ((par->layout() != nextpar->layout()
                             || par->params().depth() == nextpar->params().depth()
@@ -474,8 +474,8 @@ void getArgInsets(otexstream & os, OutputParams const & runparams, Layout::LaTeX
        // other arguments, consider this.
        for (auto const & larg : latexargs) {
                Layout::latexarg const & arg = larg.second;
-               if ((!arg.presetarg.empty() || !arg.defaultarg.empty()) && !arg.requires.empty()) {
-                               vector<string> req = getVectorFromString(arg.requires);
+               if ((!arg.presetarg.empty() || !arg.defaultarg.empty()) && !arg.required.empty()) {
+                               vector<string> req = getVectorFromString(arg.required);
                                required.insert(required.end(), req.begin(), req.end());
                        }
        }
@@ -609,7 +609,7 @@ void addArgInsets(Paragraph const & par, string const & prefix,
                        latexargs.find(arg->name());
                if (lit != latexargs.end()) {
                        Layout::latexarg const & larg = lit->second;
-                       vector<string> req = getVectorFromString(larg.requires);
+                       vector<string> req = getVectorFromString(larg.required);
                        move(req.begin(), req.end(), back_inserter(required));
                }
        }
@@ -643,11 +643,11 @@ void latexArgInsets(ParagraphList const & pars,
        Layout const current_layout = pit->layout();
 
        // get the first paragraph in sequence with this layout and depth
-       pit_type offset = 0;
+       ptrdiff_t offset = 0;
        while (true) {
-               if (lyx::prev(pit, offset) == pars.begin())
+               if (prev(pit, offset) == pars.begin())
                        break;
-               ParagraphList::const_iterator priorpit = lyx::prev(pit, offset + 1);
+               ParagraphList::const_iterator priorpit = prev(pit, offset + 1);
                if (priorpit->layout() == current_layout
                    && priorpit->params().depth() == current_depth)
                        ++offset;
@@ -655,7 +655,7 @@ void latexArgInsets(ParagraphList const & pars,
                        break;
        }
 
-       ParagraphList::const_iterator spit = lyx::prev(pit, offset);
+       ParagraphList::const_iterator spit = prev(pit, offset);
 
        for (; spit != pars.end(); ++spit) {
                if (spit->layout() != current_layout ||
@@ -1593,13 +1593,15 @@ void latexParagraphs(Buffer const & buf,
        // lastpit is for the language check after the loop.
        pit_type lastpit = pit;
        // variables used in the loop:
+       bool was_title = false;
+       bool already_title = false;
        DocumentClass const & tclass = bparams.documentClass();
 
        // Did we already warn about inTitle layout mixing? (we only warn once)
        bool gave_layout_warning = false;
        for (; pit < runparams.par_end; ++pit) {
                lastpit = pit;
-               ParagraphList::const_iterator par = paragraphs.constIterator(pit);
+               ParagraphList::const_iterator par = paragraphs.iterator_at(pit);
 
                // FIXME This check should not be needed. We should
                // perhaps issue an error if it is.
@@ -1607,7 +1609,7 @@ void latexParagraphs(Buffer const & buf,
                                tclass.plainLayout() : par->layout();
 
                if (layout.intitle) {
-                       if (runparams.already_title) {
+                       if (already_title) {
                                if (!gave_layout_warning && !runparams.dryrun) {
                                        gave_layout_warning = true;
                                        frontend::Alert::warning(_("Error in latexParagraphs"),
@@ -1617,16 +1619,15 @@ void latexParagraphs(Buffer const & buf,
                                                          "could lead to missing or incorrect output."
                                                          ), layout.name()));
                                }
-                       } else if (!runparams.issued_title_cmd) {
-                               runparams.issued_title_cmd = true;
+                       } else if (!was_title) {
+                               was_title = true;
                                if (tclass.titletype() == TITLE_ENVIRONMENT) {
                                        os << "\\begin{"
                                                        << from_ascii(tclass.titlename())
                                                        << "}\n";
                                }
                        }
-               } else if (runparams.issued_title_cmd &&
-                                  !runparams.already_title && !layout.inpreamble) {
+               } else if (was_title && !already_title && !layout.inpreamble) {
                        if (tclass.titletype() == TITLE_ENVIRONMENT) {
                                os << "\\end{" << from_ascii(tclass.titlename())
                                                << "}\n";
@@ -1635,8 +1636,8 @@ void latexParagraphs(Buffer const & buf,
                                os << "\\" << from_ascii(tclass.titlename())
                                                << "\n";
                        }
-                       runparams.already_title = true;
-                       runparams.issued_title_cmd = false;
+                       already_title = true;
+                       was_title = false;
                }
 
                if (layout.isCommand() && !layout.latexname().empty()
@@ -1659,7 +1660,7 @@ void latexParagraphs(Buffer const & buf,
                // Do not output empty environments if the whole paragraph has
                // been deleted with ct and changes are not output.
                if (size_t(pit + 1) < paragraphs.size()) {
-                       ParagraphList::const_iterator nextpar = paragraphs.constIterator(pit + 1);
+                       ParagraphList::const_iterator nextpar = paragraphs.iterator_at(pit + 1);
                        Paragraph const & cpar = paragraphs.at(pit);
                        if ((par->layout() != nextpar->layout()
                             || par->params().depth() == nextpar->params().depth()
@@ -1691,17 +1692,14 @@ void latexParagraphs(Buffer const & buf,
        // But if we're in a branch, this is not the end of
        // the document. (There may be some other checks of this
        // kind that are needed.)
-       if (runparams.issued_title_cmd &&
-                       !runparams.already_title && !runparams.inbranch) {
+       if (was_title && !already_title && !runparams.inbranch) {
                if (tclass.titletype() == TITLE_ENVIRONMENT) {
                        os << "\\end{" << from_ascii(tclass.titlename())
                           << "}\n";
-                       runparams.issued_title_cmd = false;
                } else {
                        os << "\\" << from_ascii(tclass.titlename())
                           << "\n";
                }
-               runparams.already_title = true;
        }
 
        if (maintext && !is_child && runparams.openbtUnit)