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"
16 #include "support/types.h"
18 #include <boost/scoped_ptr.hpp>
30 ParIterator(ParagraphList::iterator pit, ParagraphList const & pl);
34 ParIterator(ParIterator const &);
36 void operator=(ParIterator const &);
38 ParIterator & operator++();
40 Paragraph & operator*() const;
42 ParagraphList::iterator operator->() const;
43 /// This gives us the top-most parent paragraph
44 ParagraphList::iterator outerPar() const;
46 ParagraphList::iterator pit() const;
48 ParagraphList & plist() const;
49 /// returns 'innermost' LyXText if in an inset or '0' instead of
51 LyXText * text(BufferView *) const;
52 /// returns innermost inset
53 InsetOld * inset() const;
54 /// returns index of cell in innermost inset
60 bool operator==(ParIterator const & iter1, ParIterator const & iter2);
62 void lockPath(BufferView *) const;
65 PosIterator asPosIterator(lyx::pos_type) const;
68 boost::scoped_ptr<Pimpl> pimpl_;
72 bool operator==(ParIterator const & iter1, ParIterator const & iter2);
75 bool operator!=(ParIterator const & iter1, ParIterator const & iter2);
78 class ParConstIterator {
81 ParConstIterator(ParagraphList::iterator pit, ParagraphList const & pl);
85 ParConstIterator(ParConstIterator const &);
87 ParConstIterator & operator++();
89 ParagraphList::const_iterator pit() const;
91 Paragraph const & operator*() const;
93 ParagraphList::const_iterator operator->() const;
95 ParagraphList const & plist() const;
101 bool operator==(ParConstIterator const & iter1,
102 ParConstIterator const & iter2);
106 boost::scoped_ptr<Pimpl> pimpl_;
109 bool operator==(ParConstIterator const & iter1,
110 ParConstIterator const & iter2);
112 bool operator!=(ParConstIterator const & iter1,
113 ParConstIterator const & iter2);