]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_oversetinset.C
bug + spped fixes + small stuff
[lyx.git] / src / mathed / math_oversetinset.C
index a3beef89cbdd6bd5b633b7e589ce245d0273522b..b16f4b2c7cf96d197b91c357c96088184d7523c0 100644 (file)
 #include <config.h>
 
 #include "math_oversetinset.h"
+#include "math_data.h"
 #include "math_mathmlstream.h"
-#include "math_support.h"
-
+#include "cursor.h"
 
 using std::max;
 using std::auto_ptr;
 
 
-MathOversetInset::MathOversetInset()
-{}
-
-
 auto_ptr<InsetBase> MathOversetInset::clone() const
 {
        return auto_ptr<InsetBase>(new MathOversetInset(*this));
@@ -44,13 +40,29 @@ void MathOversetInset::metrics(MetricsInfo & mi, Dimension & dim) const
 void MathOversetInset::draw(PainterInfo & pi, int x, int y) const
 {
        int m  = x + pi.width / 2;
-       int yo = y - cell(1).ascent() + cell(0).descent() + 1;
+       int yo = y - cell(1).ascent() + cell(0).descent() - 1;
        cell(1).draw(pi, m - cell(1).width() / 2, y);
        FracChanger dummy(pi.base);
        cell(0).draw(pi, m - cell(0).width() / 2, yo);
 }
 
 
+bool MathOversetInset::idxFirst(LCursor & cur) const
+{
+       cur.idx() = 1;
+       cur.pos() = 0;
+       return true;
+}
+
+
+bool MathOversetInset::idxLast(LCursor & cur) const
+{
+       cur.idx() = 1;
+       cur.pos() = cur.lastpos();
+       return true;
+}
+
+
 void MathOversetInset::write(WriteStream & os) const
 {
        os << "\\overset{" << cell(0) << "}{" << cell(1) << '}';