]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_bigopinset.h
fix pullArg when pressing <Delete> at the end of an cell
[lyx.git] / src / mathed / math_bigopinset.h
index 85c1e0b324240bf14c85feacc97c0c15c3fd0890..cf4f50ed57e1bb8ce3a64234bc311c4cd4b824c7 100644 (file)
@@ -2,29 +2,45 @@
 #ifndef MATH_BIGOPINSET_H
 #define MATH_BIGOPINSET_H
 
-#include "math_inset.h"
+#include "math_updowninset.h"
 
 /// big operators
-class MathBigopInset: public MathedInset {
+class MathBigopInset : public MathUpDownInset {
 public:
        ///
-       MathBigopInset(string const &, int, short st = LM_ST_TEXT);
+       MathBigopInset(string const &, int);
        ///
-       MathedInset * Clone();
+       MathInset * clone() const;
+       ///
+       void Write(std::ostream &, bool fragile) const;
+       ///
+       void WriteNormal(std::ostream &) const;
+       ///
+       void Metrics(MathStyles st, int asc = 0, int des = 0);
        ///
        void draw(Painter &, int, int);
        ///
-       void Write(std::ostream &, bool fragile);
+       void limits(int);
        ///
-       void Metrics();
+       int limits() const;
+       /// Identifies BigopInsets
+       bool isBigopInset() const { return true; }
+private:
        ///
-       bool GetLimits() const;
+       bool hasLimits() const;
        ///
-       void SetLimits(bool);
-protected:
+       int sym_;
        ///
-       int lims;
+       string ssym_;
        ///
-       int sym;   
+       MathTextCodes code_;
+       /// 1: \limits, -1: \nolimits, 0: use default
+       int limits_;
+       /// x offset for drawing the superscript
+       int dx0_;
+       /// x offset for drawing the subscript
+       int dx1_;
+       /// x offset for drawing the inner symbol
+       int dxx_;
 };
 #endif