]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_lefteqninset.C
Jean-Marc's fix for wrong descent
[lyx.git] / src / mathed / math_lefteqninset.C
index 3f4382d8eab624cd027e1dbda7397f470ebf6e51..39ac7522fa11a0ec402c8a26f0c19482f15492e4 100644 (file)
@@ -1,12 +1,7 @@
-#ifdef __GNUG__
-#pragma implementation
-#endif
 
 #include "math_lefteqninset.h"
+#include "math_support.h"
 #include "support/LOstream.h"
-#include "LColor.h"
-#include "Painter.h"
-#include "math_cursor.h"
 
 
 MathLefteqnInset::MathLefteqnInset()
@@ -20,35 +15,30 @@ MathInset * MathLefteqnInset::clone() const
 }
 
 
-void MathLefteqnInset::draw(Painter & pain, int x, int y) const
+void MathLefteqnInset::metrics(MathMetricsInfo & mi) const
 {
-       xcell(0).draw(pain, x + 2, y);
-       if (mathcursor && mathcursor->isInside(this)) {
-               pain.rectangle(x, y - ascent(), xcell(0).width(), height(),
-                       LColor::mathframe);
-       }
+       cell(0).metrics(mi);
+       dim_.a = cell(0).ascent() + 2;
+       dim_.d = cell(0).descent() + 2;
+       dim_.w = 4;
+       metricsMarkers2();
 }
 
 
-void MathLefteqnInset::write(MathWriteInfo & os) const
+void MathLefteqnInset::draw(MathPainterInfo & pi, int x, int y) const
 {
-       os << "\\lefteqn{" << cell(0) << "}";
+       cell(0).draw(pi, x + 2, y);
+       drawMarkers2(pi, x, y);
 }
 
 
-void MathLefteqnInset::writeNormal(std::ostream & os) const
+string MathLefteqnInset::name() const
 {
-       os << "[lefteqn ";
-       MathWriteInfo wi(os);
-       cell(0).write(wi);
-       os << "] ";
+       return "lefteqn";
 }
 
 
-void MathLefteqnInset::metrics(MathMetricsInfo const & mi) const
+void MathLefteqnInset::infoize(std::ostream & os) const
 {
-       MathNestInset::metrics(mi);
-       ascent_  = xcell(0).ascent() + 2;
-       descent_ = xcell(0).descent() + 2;
-       width_   = 4;
+       os << "Lefteqn ";
 }