X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2FInsetMathXYMatrix.cpp;h=0994914a941bccaa0809ac5dddabe911a1b928ac;hb=02e82157ec583c3900e359de86be79fac6512387;hp=d04d8f4f71f137d4aa733f26bb4295430a6df1b2;hpb=c8bc76b333576a3f7be6c24968fd87554d50caea;p=lyx.git diff --git a/src/mathed/InsetMathXYMatrix.cpp b/src/mathed/InsetMathXYMatrix.cpp index d04d8f4f71..0994914a94 100644 --- a/src/mathed/InsetMathXYMatrix.cpp +++ b/src/mathed/InsetMathXYMatrix.cpp @@ -12,9 +12,11 @@ #include "InsetMathXYMatrix.h" -#include "LaTeXFeatures.h" #include "MathStream.h" +#include "LaTeXFeatures.h" +#include "MetricsInfo.h" + #include namespace lyx { @@ -47,16 +49,25 @@ int InsetMathXYMatrix::rowsep() const void InsetMathXYMatrix::metrics(MetricsInfo & mi, Dimension & dim) const { - if (mi.base.style == LM_ST_DISPLAY) - mi.base.style = LM_ST_TEXT; + Changer dummy2 = mi.base.changeEnsureMath(); + Changer dummy = mi.base.changeArray(); InsetMathGrid::metrics(mi, dim); } +void InsetMathXYMatrix::draw(PainterInfo & pi, int x, int y) const +{ + Changer dummy2 = pi.base.changeEnsureMath(); + Changer dummy = pi.base.changeArray(); + InsetMathGrid::draw(pi, x, y); +} + + void InsetMathXYMatrix::write(WriteStream & os) const { MathEnsurer ensurer(os); os << "\\xymatrix"; + bool open = os.startOuterRow(); if (equal_spacing_) { os << "@!"; switch (spacing_code_) { @@ -83,7 +94,10 @@ void InsetMathXYMatrix::write(WriteStream & os) const } os << '{'; InsetMathGrid::write(os); - os << "}\n"; + os << "}"; + if (open) + os.startOuterRow(); + os << "\n"; }