]> git.lyx.org Git - lyx.git/commitdiff
mathed55.diff
authorLars Gullik Bjønnes <larsbj@gullik.org>
Mon, 12 Mar 2001 13:58:11 +0000 (13:58 +0000)
committerLars Gullik Bjønnes <larsbj@gullik.org>
Mon, 12 Mar 2001 13:58:11 +0000 (13:58 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@1744 a592a061-630c-0410-9148-cb99ea01b6c8

src/mathed/ChangeLog
src/mathed/math_rowst.h

index 56f81a59f7f239941de53b9102cd4e7a936d8039..e48fb0bedcdce510c8912b1cba89d599d6ef7494 100644 (file)
@@ -1,4 +1,8 @@
 
+2001-03-12  André Pönitz  <poenitz@htwm.de>
+       *       math_rowst.h: replace MathedRowSt with MathedRowSt,
+           more robust MathedRowSt::[gs]etTab (to get rid of the constructor arg)
+
 2001-03-10  André Pönitz  <poenitz@htwm.de>
        * math_xiter.[Ch]:
          math_matrixinset.C: move adjustVerticalSt to the only place where
index 3b1c7f24baa25bb8f0e876fd7032ad76c4a57f23..222a8eb5e06f384c137528c4d0a28c7ad9f68161 100644 (file)
@@ -39,13 +39,13 @@ public:
        ///
        void descent(int d);
        ///
-       int  getTab(int i) const;
+       int  getTab(unsigned int i) const;
        /// 
        void setLabel(string const & l);
        ///
        void setNumbered(bool nf);
        ///
-       void setTab(int i, int t);
+       void setTab(unsigned int i, int t);
        ///
        friend class MathedRowSt;
 protected:
@@ -72,6 +72,9 @@ public:
        explicit MathedRowSt(int n)
                        : MathedRowStruct(n), next_(0)
                {}
+       explicit MathedRowSt(MathedRowStruct const & t)
+                       : MathedRowStruct(t), next_(0)
+               {}
 //private:
        ///
        MathedRowSt * next_;
@@ -150,7 +153,7 @@ struct MathedRowContainer {
        bool empty() const { return data_ == 0; }
 
        /// insert 'item' before 'iterator'
-       void insert(iterator const & it, MathedRowSt const & item) {
+       void insert(iterator const & it, MathedRowStruct const & item) {
                MathedRowSt * r = new MathedRowSt(item);
                if (data_ == it.st_)
                        data_ = r;
@@ -163,7 +166,7 @@ struct MathedRowContainer {
        }
                        
        /// insert 'item' after 'iterator'
-       void insert_after(iterator & it, MathedRowSt const & item) {
+       void insert_after(iterator & it, MathedRowStruct const & item) {
                MathedRowSt * r = new MathedRowSt(item);
                if (it) {
                        r->next_ = it.st_->next_;
@@ -251,9 +254,9 @@ void MathedRowStruct::descent(int d)
 
 
 inline
-int MathedRowStruct::getTab(int i) const
+int MathedRowStruct::getTab(unsigned int i) const
 {
-       return widths_[i];
+       return i < widths_.size() ? widths_[i] : 0;
 }
 
 
@@ -272,8 +275,10 @@ void MathedRowStruct::setNumbered(bool nf)
 
 
 inline
-void MathedRowStruct::setTab(int i, int t)
+void MathedRowStruct::setTab(unsigned int i, int t)
 {
+       if (i >= widths_.size())
+               widths_.resize(i + 2);  
        widths_[i] = t;
 }
 #endif