X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Foutput_xhtml.cpp;h=0a8222c8fb31cad5d0b96ffa946a73877ee44ecd;hb=3c957e1bb1ca487cb5bb9b02145c009a7f5fe02d;hp=553254ef22ffa45155dd934fc7ac3bc39540de94;hpb=4600e6c0b8e3f5d06822a6764eb6fe7f0fa634bc;p=lyx.git diff --git a/src/output_xhtml.cpp b/src/output_xhtml.cpp index 553254ef22..0a8222c8fb 100644 --- a/src/output_xhtml.cpp +++ b/src/output_xhtml.cpp @@ -18,6 +18,7 @@ #include "buffer_funcs.h" #include "BufferParams.h" #include "Counters.h" +#include "Font.h" #include "Layout.h" #include "OutputParams.h" #include "Paragraph.h" @@ -573,7 +574,7 @@ ParagraphList::const_iterator makeParagraphs(Buffer const & buf, for (; par != pend; ++par) { Layout const & lay = par->layout(); if (!lay.counter.empty()) - buf.params().documentClass().counters().step(lay.counter); + buf.params().documentClass().counters().step(lay.counter, OutputUpdate); // FIXME We should see if there's a label to be output and // do something with it. if (par != pbegin) @@ -620,6 +621,8 @@ ParagraphList::const_iterator makeBibliography(Buffer const & buf, ParagraphList::const_iterator const & pbegin, ParagraphList::const_iterator const & pend) { + // FIXME XHTML + // Use TextClass::htmlTOCLayout() to figure out how we should look. xs << html::StartTag("h2", "class='bibliography'"); xs << pbegin->layout().labelstring(false); xs << html::EndTag("h2"); @@ -672,7 +675,7 @@ ParagraphList::const_iterator makeEnvironmentHtml(Buffer const & buf, && (par == pbegin || !isNormalEnv(style)) && cnts.hasCounter(cntr) ) - cnts.step(cntr); + cnts.step(cntr, OutputUpdate); ParagraphList::const_iterator send; // this will be positive, if we want to skip the initial word // (if it's been taken for the label). @@ -697,7 +700,7 @@ ParagraphList::const_iterator makeEnvironmentHtml(Buffer const & buf, openItemTag(xs, style); if (par == pbegin && style.htmllabeltag() != "NONE") { docstring const lbl = - pbegin->expandLabel(style, buf.params(), false); + pbegin->params().labelString(); if (!lbl.empty()) { openLabelTag(xs, style); xs << lbl; @@ -719,7 +722,7 @@ ParagraphList::const_iterator makeEnvironmentHtml(Buffer const & buf, else if (style.labeltype != LABEL_NO_LABEL && style.htmllabeltag() != "NONE") { openLabelTag(xs, style); - xs << par->expandLabel(style, buf.params(), false); + xs << par->params().labelString(); closeLabelTag(xs, style); xs.cr(); } @@ -784,7 +787,7 @@ void makeCommand(Buffer const & buf, { Layout const & style = pbegin->layout(); if (!style.counter.empty()) - buf.params().documentClass().counters().step(style.counter); + buf.params().documentClass().counters().step(style.counter, OutputUpdate); openTag(xs, style); @@ -792,7 +795,7 @@ void makeCommand(Buffer const & buf, // FIXME Probably need to account for LABEL_MANUAL if (style.labeltype != LABEL_NO_LABEL) { openLabelTag(xs, style); - xs << pbegin->expandLabel(style, buf.params(), false); + xs << pbegin->params().labelString(); closeLabelTag(xs, style); // Otherwise the label might run together with the text xs << from_ascii(" "); @@ -819,6 +822,13 @@ void xhtmlParagraphs(Text const & text, OutputParams ourparams = runparams; while (par != pend) { + if (par->params().startOfAppendix()) { + // FIXME: only the counter corresponding to toplevel + // sectioning should be reset + Counters & cnts = buf.masterBuffer()->params().documentClass().counters(); + cnts.reset(); + cnts.appendix(true); + } Layout const & style = par->layout(); ParagraphList::const_iterator lastpar = par; ParagraphList::const_iterator send;