#include "insets/InsetSpecialChar.h"
#include "insets/InsetTabular.h"
+#include "support/convert.h"
#include "support/debug.h"
#include "support/docstream.h"
#include "support/gettext.h"
}
+int Text::getTocLevel(pit_type par_offset) const
+{
+ Paragraph const & par = pars_[par_offset];
+
+ if (par.layout().isEnvironment() && !isFirstInSequence(par_offset))
+ return Layout::NOT_IN_TOC;
+
+ return par.layout().toclevel;
+}
+
+
Font const Text::outerFont(pit_type par_offset) const
{
depth_type par_depth = pars_[par_offset].getDepth();
return res;
}
+
// Returns the current font and depth as a message.
docstring Text::currentState(Cursor const & cur) const
{
if (!name.empty())
text = name + ':' + text;
- return text;
+ // We need a unique label
+ docstring label = text;
+ int i = 1;
+ while (cur.buffer()->insetLabel(label)) {
+ label = text + '-' + convert<docstring>(i);
+ ++i;
+ }
+
+ return label;
}