- return InsetText::plaintext(buf, os, runparams);
-}
-
-
-int InsetFlex::docbook(Buffer const & buf, odocstream & os,
- OutputParams const & runparams) const
-{
- ParagraphList::const_iterator beg = paragraphs().begin();
- ParagraphList::const_iterator par = paragraphs().begin();
- ParagraphList::const_iterator end = paragraphs().end();
-
- if (!undefined())
- sgml::openTag(os, layout_->latexname,
- par->getID(buf, runparams) + layout_->latexparam);
-
- for (; par != end; ++par) {
- par->simpleDocBookOnePar(buf, os, runparams,
- outerFont(distance(beg, par),
- paragraphs()));
+ BufferParams const & bp = buffer().masterBuffer()->params();
+ InsetLayout const & il = getLayout();
+ docstring custom_label = translateIfPossible(il.labelstring());
+
+ Counters & cnts = bp.documentClass().counters();
+ docstring const & count = il.counter();
+ bool const have_counter = cnts.hasCounter(count);
+ if (have_counter) {
+ Paragraph const & par = it.paragraph();
+ if (!par.isDeleted(it.pos())) {
+ cnts.step(count, utype);
+ custom_label += ' ' +
+ cnts.theCounter(count, it.paragraph().getParLanguage(bp)->code());
+ } else
+ custom_label += ' ' + from_ascii("#");