* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
- * \author André Pönitz
+ * \author André Pönitz
*
* Full author contact details are available in file CREDITS.
*/
namespace lyx {
-InsetMathXArrow::InsetMathXArrow(docstring const & name)
- : InsetMathFracBase(), name_(name)
+InsetMathXArrow::InsetMathXArrow(Buffer * buf, docstring const & name)
+ : InsetMathFracBase(buf), name_(name)
{}
dim.asc = dim0.height() + 10;
dim.des = dim1.height();
metricsMarkers(dim);
- // Cache the inset dimension.
- setDimCache(mi, dim);
}
void InsetMathXArrow::write(WriteStream & os) const
{
+ MathEnsurer ensurer(os);
os << '\\' << name_;
if (cell(1).size())
os << '[' << cell(1) << ']';
}
+void InsetMathXArrow::mathmlize(MathStream & ms) const
+{
+ char const * const arrow = name_ == "xleftarrow"
+ ? "←" : "→";
+ ms << "<munderover accent='false' accentunder='false'>"
+ << arrow << cell(1) << cell(0)
+ << "</munderover>";
+}
+
+
void InsetMathXArrow::validate(LaTeXFeatures & features) const
{
features.require("amsmath");