]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_gridinset.h
oh well
[lyx.git] / src / mathed / math_gridinset.h
index d7dd6794ee6da39a3818563a49b560b919abe8c8..b31cafae4f3700155917001f2e19909f3ac3d114 100644 (file)
@@ -40,7 +40,7 @@ class MathGridInset : public MathNestInset {
 
        // additional per-row information
        struct ColInfo {
-               ///     
+               ///
                ColInfo();
                /// currently possible: 'l', 'c', 'r'
                char align_;
@@ -50,7 +50,7 @@ class MathGridInset : public MathNestInset {
                mutable int width_;
                /// cached offset
                mutable int offset_;
-               /// do we need a line to the left? 
+               /// do we need a line to the left?
                bool leftline_;
                /// do we need a line to the right?
                bool rightline_;
@@ -60,7 +60,7 @@ class MathGridInset : public MathNestInset {
                int skip_;
        };
 
-public: 
+public:
        /// constructor from columns description, creates one row
        MathGridInset(char valign, string const & halign);
        /// Note: columns first!
@@ -68,10 +68,16 @@ public:
        ///
        MathGridInset(col_type m, row_type n, char valign, string const & halign);
        ///
+       MathInset * clone() const;
+       ///
        void metrics(MathMetricsInfo const & st) const;
        ///
        void draw(Painter &, int x, int y) const;
        ///
+       void metricsT(TextMetricsInfo const & st) const;
+       ///
+       void drawT(TextPainter &, int x, int y) const;
+       ///
        void halign(string const &);
        ///
        void halign(char c, col_type col);
@@ -110,9 +116,7 @@ public:
        int cellYOffset(idx_type idx) const;
 
        ///
-       bool idxUp(idx_type &) const;
-       ///
-       bool idxDown(idx_type &) const;
+       bool idxUpDown(idx_type &, bool) const;
        ///
        bool idxLeft(idx_type &, pos_type &) const;
        ///
@@ -126,10 +130,10 @@ public:
        ///
        bool idxEnd(idx_type &, pos_type &) const;
        ///
-       void idxDelete(idx_type &, bool &, bool &);
-       ///
-       void idxDeleteRange(idx_type, idx_type);
-                       
+       bool idxDelete(idx_type &);
+       /// pulls cell after pressing erase
+       void idxGlue(idx_type idx);
+
        ///
        virtual void addRow(row_type);
        ///
@@ -151,6 +155,17 @@ public:
        ///
        void setDefaults();
 
+       ///
+       virtual int colsep() const;
+       ///
+       virtual int rowsep() const;
+       ///
+       virtual int hlinesep() const;
+       ///
+       virtual int vlinesep() const;
+       ///
+       virtual int border() const;
+
        ///
        void write(WriteStream & os) const;
        ///
@@ -174,7 +189,7 @@ protected:
        std::vector<RowInfo> rowinfo_;
        /// column info
        std::vector<ColInfo> colinfo_;
-       /// 
+       ///
        char v_align_; // add approp. type
 };