]> git.lyx.org Git - lyx.git/blobdiff - src/ParIterator.cpp
FindAdv: Amend ec387b6d: Handle search for '{' and '}'
[lyx.git] / src / ParIterator.cpp
index 5c0660d452103a6a83f98c49e7628fb77e992e45..728988936006280d9a13c4cc78280ae5a2680a44 100644 (file)
@@ -3,7 +3,7 @@
  * Licence details can be found in the file COPYING.
  *
  * \author unknown
- * \author Lars Gullik Bjønnes
+ * \author Lars Gullik Bjønnes
  *
  * Full author contact details are available in file CREDITS.
  */
@@ -12,7 +12,7 @@
 
 #include "ParIterator.h"
 
-#include "Paragraph.h"
+#include "CursorSlice.h"
 #include "Text.h"
 
 #include "insets/Inset.h"
 
 namespace lyx {
 
-///
-/// ParIterator
-///
-
-ParIterator::ParIterator(DocIterator const & cur)
-       : DocIterator(cur)
-{}
+//////////////////////////////////////////////////////////////////////////
+//
+// ParIterator
+//
+//////////////////////////////////////////////////////////////////////////
 
 
 ParIterator par_iterator_begin(Inset & inset)
 {
-       return ParIterator(doc_iterator_begin(inset));
+       return ParIterator(doc_iterator_begin(&inset.buffer(), &inset));
 }
 
 
 ParIterator par_iterator_end(Inset & inset)
 {
-       return ParIterator(doc_iterator_end(inset));
+       return ParIterator(doc_iterator_end(&inset.buffer(), &inset));
 }
 
 
-ParIterator::ParIterator(ParIterator const & pi)
-       : DocIterator(DocIterator(pi))
-{}
-
-
 ParIterator & ParIterator::operator++()
 {
        forwardPar();
@@ -104,28 +97,17 @@ ParagraphList & ParIterator::plist() const
 }
 
 
-DocIterator makeDocIterator(ParIterator const & par, pos_type pos)
-{
-       DocIterator dit(par);
-       dit.pos() = pos;
-       return dit;
-}
-
+//////////////////////////////////////////////////////////////////////////
+//
+// ParConstIterator
+//
+//////////////////////////////////////////////////////////////////////////
 
 
-///
-/// ParConstIterator
-///
-
-
-ParConstIterator::ParConstIterator(DocIterator const & dit)
-       : DocIterator(dit)
-{}
-
-
-ParConstIterator::ParConstIterator(ParConstIterator const & pi)
-       : DocIterator(DocIterator(pi))
-{}
+void ParConstIterator::push_back(Inset const & inset)
+{
+       DocIterator::push_back(CursorSlice(const_cast<Inset &>(inset)));
+}
 
 
 ParConstIterator & ParConstIterator::operator++()
@@ -155,8 +137,7 @@ ParagraphList const & ParConstIterator::plist() const
 #if 0
 bool operator==(ParConstIterator const & iter1, ParConstIterator const & iter2)
 {
-       // FIXME: this makes two full copies!
-       return DocIterator(iter1) == DocIterator(iter2);
+       return static_cast<DocIterator const &>(iter1) == static_cast<DocIterator const &>(iter2);
 }
 
 
@@ -167,18 +148,4 @@ bool operator!=(ParConstIterator const & iter1, ParConstIterator const & iter2)
 #endif
 
 
-// FIXME: const correctness!
-
-ParConstIterator par_const_iterator_begin(Inset const & inset)
-{
-       return ParConstIterator(doc_iterator_begin(const_cast<Inset &>(inset)));
-}
-
-
-ParConstIterator par_const_iterator_end(Inset const & inset)
-{
-       return ParConstIterator(doc_iterator_end(const_cast<Inset &>(inset)));
-}
-
-
 } // namespace lyx