3 * This file is part of LyX, the document processor.
4 * Licence details can be found in the file COPYING.
7 * \author Lars Gullik Bjønnes
9 * Full author contact details are available in file CREDITS.
15 #include "ParagraphList_fwd.h"
17 #include <boost/scoped_ptr.hpp>
25 ParIterator(ParagraphList::iterator pit, ParagraphList const & pl);
29 ParIterator(ParIterator const &);
31 void operator=(ParIterator const &);
33 ParIterator & operator++();
35 Paragraph & operator*() const;
37 ParagraphList::iterator operator->() const;
38 /// This gives us the top-most parent paragraph
39 ParagraphList::iterator outerPar() const;
41 ParagraphList::iterator pit() const;
43 ParagraphList & plist() const;
44 /// returns 'innermost' LyXText if in an inset or '0' instead of
46 LyXText * text() const;
48 InsetOld * inset() const;
53 bool operator==(ParIterator const & iter1, ParIterator const & iter2);
56 boost::scoped_ptr<Pimpl> pimpl_;
60 bool operator==(ParIterator const & iter1, ParIterator const & iter2);
63 bool operator!=(ParIterator const & iter1, ParIterator const & iter2);
66 class ParConstIterator {
69 ParConstIterator(ParagraphList::iterator pit, ParagraphList const & pl);
73 ParConstIterator(ParConstIterator const &);
75 ParConstIterator & operator++();
77 ParagraphList::const_iterator pit() const;
79 Paragraph const & operator*() const;
81 ParagraphList::const_iterator operator->() const;
83 ParagraphList const & plist() const;
89 bool operator==(ParConstIterator const & iter1,
90 ParConstIterator const & iter2);
93 boost::scoped_ptr<Pimpl> pimpl_;
96 bool operator==(ParConstIterator const & iter1,
97 ParConstIterator const & iter2);
99 bool operator!=(ParConstIterator const & iter1,
100 ParConstIterator const & iter2);