4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Guillaume Munch
9 * Full author contact details are available in file CREDITS.
15 #include "DocIterator.h"
18 #include "support/strfwd.h"
26 /// Caption-enabled TOC builders
30 TocBuilder(std::shared_ptr<Toc> toc);
32 /// When entering a float or flex or paragraph (with AddToToc)
33 void pushItem(DocIterator const & dit, docstring const & s,
34 bool output_active, bool is_captioned = false);
35 /// Edit entry at current level. Add new entry if already captioned.
36 /// When encountering a float caption
37 void captionItem(DocIterator const & dit, docstring const & s,
39 /// Edit entry at current level (always).
40 /// When encountering an argument (with isTocCaption) for flex or paragraph
41 void argumentItem(docstring const & arg_str);
43 /// When exiting a float or flex or paragraph
53 std::shared_ptr<Toc> const toc_;
55 std::stack<frame> stack_;
61 #endif // TOC_BUILDER_H