X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetMarginal.cpp;h=1c1df328e96ba4e31c07d12ba9c585e59ccbdfeb;hb=d4550b7a4d64e9ff772cf3a7635cb4ca532fb340;hp=86b93bd4b74d347577fe76e41c448ec21cf45e0c;hpb=acff67f259c1e2d9acfe3697b33843af4d3f94d7;p=lyx.git diff --git a/src/insets/InsetMarginal.cpp b/src/insets/InsetMarginal.cpp index 86b93bd4b7..1c1df328e9 100644 --- a/src/insets/InsetMarginal.cpp +++ b/src/insets/InsetMarginal.cpp @@ -20,6 +20,7 @@ #include "support/docstream.h" #include "support/gettext.h" +#include "support/lstrings.h" namespace lyx { @@ -29,11 +30,11 @@ InsetMarginal::InsetMarginal(Buffer * buf) {} -int InsetMarginal::plaintext(odocstream & os, - OutputParams const & runparams) const +int InsetMarginal::plaintext(odocstringstream & os, + OutputParams const & runparams, size_t max_length) const { os << '[' << buffer().B_("margin") << ":\n"; - InsetText::plaintext(os, runparams); + InsetText::plaintext(os, runparams, max_length); os << "\n]"; return PLAINTEXT_NEWLINE + 1; // one char on a separate line @@ -51,17 +52,19 @@ int InsetMarginal::docbook(odocstream & os, } -void InsetMarginal::addToToc(DocIterator const & cpit) +void InsetMarginal::addToToc(DocIterator const & cpit, bool output_active, + UpdateType utype) const { DocIterator pit = cpit; - pit.push_back(CursorSlice(*this)); + pit.push_back(CursorSlice(const_cast(*this))); - Toc & toc = buffer().tocBackend().toc("marginalnote"); docstring str; - str = text().getPar(0).asString(); - toc.push_back(TocItem(pit, 0, str)); + text().forOutliner(str, TOC_ENTRY_LENGTH); + std::shared_ptr toc = buffer().tocBackend().toc("marginalnote"); + toc->push_back(TocItem(pit, 0, str, output_active)); + // Proceed with the rest of the inset. - InsetFootlike::addToToc(cpit); + InsetFootlike::addToToc(cpit, output_active, utype); } } // namespace lyx