]> git.lyx.org Git - features.git/commitdiff
parlist-17-b.diff
authorLars Gullik Bjønnes <larsbj@gullik.org>
Thu, 22 May 2003 17:26:50 +0000 (17:26 +0000)
committerLars Gullik Bjønnes <larsbj@gullik.org>
Thu, 22 May 2003 17:26:50 +0000 (17:26 +0000)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@7005 a592a061-630c-0410-9148-cb99ea01b6c8

src/ChangeLog
src/ParagraphList.C
src/ParagraphList.h

index 2daa04db5596e87a4f08e2b5f2e6a357d7a3ea04..4398a8ba226f064b3ec59c2c00fdcf4f35bff850 100644 (file)
@@ -1,3 +1,6 @@
+2003-05-22  Lars Gullik Bjønnes  <larsbj@gullik.net>
+
+       * ParagraphList.C (erase): new function, taking two iterators
 
 2003-05-22  André Pönitz  <poenitz@gmx.net>
 
index d87634c74cacf79bb25fe34271ef96c12cb465f0..deba8829c5de265fabfaa7e72259e2286a7eca0c 100644 (file)
@@ -257,7 +257,7 @@ void ParagraphList::clear()
 }
 
 
-void ParagraphList::erase(ParagraphList::iterator it)
+ParagraphList::iterator ParagraphList::erase(ParagraphList::iterator it)
 {
 #ifndef NO_NEXT
        Paragraph * prev = it->previous_;
@@ -274,6 +274,7 @@ void ParagraphList::erase(ParagraphList::iterator it)
        it->previous_ = 0;
        it->next_ = 0;
        delete &*it;
+       return next;
 #else
        Paragraph * prev = it->prev_par_;
        Paragraph * next = it->next_par_;
@@ -287,10 +288,21 @@ void ParagraphList::erase(ParagraphList::iterator it)
                next->prev_par_ = prev;
 
        delete &*it;
+       return next;
 #endif
 }
 
 
+ParagraphList::iterator ParagraphList::erase(ParagraphList::iterator first,
+                             ParagraphList::iterator last)
+{
+       while (first != last) {
+               erase(first++);
+       }
+       return last;
+}
+
+
 ParagraphList::iterator ParagraphList::begin()
 {
        return iterator(parlist);
index 92470cb97688fbc0bbf06cbe2a21847751c07352..9f049bf895c952075fe3776bb9e1b1abe1b84191 100644 (file)
@@ -61,7 +61,9 @@ public:
        ///
        void clear();
        ///
-       void erase(iterator it);
+       iterator erase(iterator it);
+       ///
+       iterator erase(iterator first, iterator last);
        ///
        iterator begin();
        ///