* 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.
*/
#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();
Paragraph & ParIterator::operator*() const
{
- return const_cast<Paragraph&>(text()->getPar(pit()));
+ return text()->getPar(pit());
}
Paragraph * ParIterator::operator->() const
{
- return const_cast<Paragraph*>(&text()->getPar(pit()));
+ return &text()->getPar(pit());
}
ParagraphList & ParIterator::plist() const
{
- return const_cast<ParagraphList&>(text()->paragraphs());
+ return text()->paragraphs();
}
-///
-/// ParConstIterator
-///
-
-
-ParConstIterator::ParConstIterator(DocIterator const & dit)
- : DocIterator(dit)
-{}
-
-
-ParConstIterator::ParConstIterator(ParConstIterator const & pi)
- : DocIterator(DocIterator(pi))
-{}
+//////////////////////////////////////////////////////////////////////////
+//
+// ParConstIterator
+//
+//////////////////////////////////////////////////////////////////////////
void ParConstIterator::push_back(Inset const & inset)
#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);
}
#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