]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_fracbase.C
mathed uglyfication
[lyx.git] / src / mathed / math_fracbase.C
index 5efcc40b26786879a94a7ee354a7c7e6e1b01133..ecc16c71d7ac66c0cccba9731adbe10f8952f9a4 100644 (file)
@@ -1,9 +1,17 @@
-#ifdef __GNUG__
-#pragma implementation
-#endif
+/**
+ * \file math_fracbase.C
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author André Pönitz
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
+#include <config.h>
 
 #include "math_fracbase.h"
-#include "math_mathmlstream.h"
+#include "math_data.h"
 
 
 MathFracbaseInset::MathFracbaseInset()
@@ -11,37 +19,25 @@ MathFracbaseInset::MathFracbaseInset()
 {}
 
 
-bool MathFracbaseInset::idxRight(MathInset::idx_type &,
-                                MathInset::pos_type &) const
+bool MathFracbaseInset::idxRight(BufferView &) const
 {
        return false;
 }
 
 
-bool MathFracbaseInset::idxLeft(MathInset::idx_type &,
-                               MathInset::pos_type &) const
+bool MathFracbaseInset::idxLeft(BufferView &) const
 {
        return false;
 }
 
 
-bool MathFracbaseInset::idxUp(MathInset::idx_type & idx,
-                             MathInset::pos_type & pos) const
+bool MathFracbaseInset::idxUpDown(BufferView & bv, bool up, int targetx) const
 {
-       if (idx == 0)
+       CursorSlice & cur = cursorTip(bv);
+       MathInset::idx_type target = !up; // up ? 0 : 1, since upper cell has idx 0
+       if (cur.idx() == target)
                return false;
-       idx = 0;
-       pos = std::min(pos, cell(idx).size());
-       return true;
-}
-
-
-bool MathFracbaseInset::idxDown(MathInset::idx_type & idx,
-                               MathInset::pos_type & pos) const
-{
-       if (idx == 1)
-               return false;
-       idx = 1;
-       pos = std::min(pos, cell(idx).size());
+       cur.idx() = target;
+       cur.pos() = cell(target).x2pos(targetx);
        return true;
 }