#include "Language.h"
#include "MetricsInfo.h"
#include "output_latex.h"
+#include "output_xhtml.h"
#include "OutputParams.h"
#include "Paragraph.h"
#include "TextClass.h"
}
-docstring InsetCaption::xhtml(odocstream & os,
- OutputParams const & rp) const
+docstring InsetCaption::xhtml(XHTMLStream & xs, OutputParams const & rp) const
{
if (rp.html_disable_captions)
return docstring();
- os << "<div class='float-caption'>\n";
- docstring def = getCaptionAsHTML(os, rp);
- os << "</div>\n";
+ xs << StartTag("div", "class='float-caption'");
+ docstring def = getCaptionAsHTML(xs, rp);
+ xs << EndTag("div");
return def;
}
+
int InsetCaption::getArgument(odocstream & os,
OutputParams const & runparams) const
{
}
-docstring InsetCaption::getCaptionAsHTML(odocstream & os,
+docstring InsetCaption::getCaptionAsHTML(XHTMLStream & xs,
OutputParams const & runparams) const
{
- os << full_label_ << ' ';
- return InsetText::xhtml(os, runparams);
+ xs << full_label_ << ' ';
+ InsetText::XHTMLOptions const opts =
+ InsetText::WriteLabel | InsetText::WriteInnerTag;
+ return InsetText::insetAsXHTML(xs, runparams, opts);
}
/// return the caption text
int getCaptionAsPlaintext(odocstream & os, OutputParams const &) const;
/// return the caption text as HTML
- docstring getCaptionAsHTML(odocstream & os, OutputParams const &) const;
+ docstring getCaptionAsHTML(XHTMLStream & os, OutputParams const &) const;
private:
///
void write(std::ostream & os) const;
///
int docbook(odocstream & os, OutputParams const & runparams) const;
///
- docstring xhtml(odocstream & os, OutputParams const & runparams) const;
+ docstring xhtml(XHTMLStream & os, OutputParams const & runparams) const;
///
void setCustomLabel(docstring const & label);
///
return docstring();
odocstringstream ods;
- docstring def = ins->getCaptionAsHTML(ods, runparams);
+ XHTMLStream xs(ods);
+ docstring def = ins->getCaptionAsHTML(xs, runparams);
if (!def.empty())
- ods << def << '\n';
+ // should already have been escaped
+ xs << XHTMLStream::NextRaw() << def << '\n';
return ods.str();
}