void InsetCollapsable::addToToc(DocIterator const & cpit, bool output_active,
- UpdateType utype) const
+ UpdateType utype, TocBackend & backend) const
{
bool doing_output = output_active && producesOutput();
InsetLayout const & layout = getLayout();
if (layout.addToToc()) {
- TocBuilder & b = buffer().tocBackend().builder(layout.tocType());
+ TocBuilder & b = backend.builder(layout.tocType());
// Cursor inside the inset
DocIterator pit = cpit;
pit.push_back(CursorSlice(const_cast<InsetCollapsable &>(*this)));
docstring const label = getLabel();
b.pushItem(pit, label + (label.empty() ? "" : ": "), output_active);
// Proceed with the rest of the inset.
- InsetText::addToToc(cpit, doing_output, utype);
+ InsetText::addToToc(cpit, doing_output, utype, backend);
if (layout.isTocCaption()) {
docstring str;
text().forOutliner(str, TOC_ENTRY_LENGTH);
}
b.pop();
} else
- InsetText::addToToc(cpit, doing_output, utype);
+ InsetText::addToToc(cpit, doing_output, utype, backend);
}