X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetTOC.cpp;h=76a8dc9d1bfbe3f0b240a7908f853a1fb1d70d32;hb=239b9919ffe28338d789e6dc9122228f77ab77a7;hp=950e373828748b8a93b92dc01ae21b50d2a5ea80;hpb=ad6250f1a6701c28f3baa3591f60f6a3bdf52c22;p=lyx.git diff --git a/src/insets/InsetTOC.cpp b/src/insets/InsetTOC.cpp index 950e373828..76a8dc9d1b 100644 --- a/src/insets/InsetTOC.cpp +++ b/src/insets/InsetTOC.cpp @@ -144,21 +144,12 @@ void InsetTOC::makeTOCEntry(XHTMLStream & xs, Font const dummy; par.simpleLyXHTMLOnePar(buffer(), xs, ours, dummy); - xs << html::EndTag("a") << " "; - - // Now a link to the paragraph - string const parattr = "href='#" + par.magicLabel() + "' class='tocarrow'"; - xs << html::StartTag("a", parattr); - // FIXME XHTML - // There ought to be a simple way to customize this. - // Maybe if we had an InsetLayout for TOC... - xs << XHTMLStream::ESCAPE_NONE << ">"; - xs << html::EndTag("a"); + xs << html::EndTag("a") << html::CR(); } -void InsetTOC::makeTOCWithDepth(XHTMLStream xs, - Toc toc, OutputParams const & op) const +void InsetTOC::makeTOCWithDepth(XHTMLStream & xs, + Toc const & toc, OutputParams const & op) const { Toc::const_iterator it = toc.begin(); Toc::const_iterator const en = toc.end(); @@ -215,8 +206,8 @@ void InsetTOC::makeTOCWithDepth(XHTMLStream xs, } -void InsetTOC::makeTOCNoDepth(XHTMLStream xs, - Toc toc, const OutputParams & op) const +void InsetTOC::makeTOCNoDepth(XHTMLStream & xs, + Toc const & toc, const OutputParams & op) const { Toc::const_iterator it = toc.begin(); Toc::const_iterator const en = toc.end(); @@ -226,7 +217,7 @@ void InsetTOC::makeTOCNoDepth(XHTMLStream xs, if (!it->isOutput()) continue; - xs << html::StartTag("div", "class='lyxtop-1'") << html::CR(); + xs << html::StartTag("div", "class='lyxtoc-flat'") << html::CR(); Paragraph const & par = it->dit().innerParagraph(); makeTOCEntry(xs, par, op); @@ -241,12 +232,12 @@ docstring InsetTOC::xhtml(XHTMLStream &, OutputParams const & op) const string const & command = getCmdName(); if (command != "tableofcontents" && command != "lstlistoflistings") { LYXERR0("TOC type " << command << " not yet implemented."); - LASSERT(false, /* */); - return docstring(); + LASSERT(false, return docstring()); } - Toc const & toc = buffer().tocBackend().toc(cmd2type(command)); - if (toc.empty()) + shared_ptr toc = + buffer().masterBuffer()->tocBackend().toc(cmd2type(command)); + if (toc->empty()) return docstring(); // we'll use our own stream, because we are going to defer everything. @@ -258,13 +249,15 @@ docstring InsetTOC::xhtml(XHTMLStream &, OutputParams const & op) const xs << html::StartTag("div", "class='toc'"); // Title of TOC + InsetLayout const & il = getLayout(); + string const & tag = il.htmltag(); docstring title = screenLabel(); Layout const & lay = buffer().params().documentClass().htmlTOCLayout(); string const & tocclass = lay.defaultCSSClass(); string const tocattr = "class='tochead " + tocclass + "'"; - xs << html::StartTag("div", tocattr) + xs << html::StartTag(tag, tocattr) << title - << html::EndTag("div"); + << html::EndTag(tag); // with lists of listings, at least, there is no depth // to worry about. so the code can be simpler. @@ -272,9 +265,9 @@ docstring InsetTOC::xhtml(XHTMLStream &, OutputParams const & op) const // Output of TOC if (use_depth) - makeTOCWithDepth(xs, toc, op); + makeTOCWithDepth(xs, *toc, op); else - makeTOCNoDepth(xs, toc, op); + makeTOCNoDepth(xs, *toc, op); xs << html::EndTag("div") << html::CR(); return ods.str();