#include "InsetMathEnsureMath.h"
+#include "LaTeXFeatures.h"
#include "MathData.h"
#include "MathStream.h"
#include "MathSupport.h"
void InsetMathEnsureMath::mathmlize(MathStream & os) const
{
- os << "[EM]";
SetMode mathmode(os, false);
- os << cell(0);
- os << "[/EM]";
+ os << MTag("mstyle", "class='math'")
+ << cell(0)
+ << ETag("mstyle");
}
void InsetMathEnsureMath::htmlize(HtmlStream & os) const
{
- os << "[EM]";
SetHTMLMode mathmode(os, false);
- os << cell(0);
- os << "[/EM]";
+ os << MTag("span", "class='math'")
+ << cell(0)
+ << ETag("span");
}
}
+void InsetMathEnsureMath::validate(LaTeXFeatures & features) const
+{
+ // FIXME XHTML
+ // It'd be better to be able to get this from an InsetLayout, but at present
+ // InsetLayouts do not seem really to work for things that aren't InsetTexts.
+ if (features.runparams().math_flavor == OutputParams::MathAsMathML)
+ features.addCSSSnippet("mstyle.math { font-style: italic; }");
+ else if (features.runparams().math_flavor == OutputParams::MathAsHTML)
+ features.addCSSSnippet("span.mathbox { font-style: italic; }");
+
+ InsetMathNest::validate(features);
+}
+
} // namespace lyx