// -*- C++ -*-
-/* \file iterators.h
+/* \file pariterator.h
* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
* Full author contact details are available in file CREDITS.
*/
-#ifndef ITERATORS_H
-#define ITERATORS_H
+#ifndef PARITERATOR_H
+#define PARITERATOR_H
#include "dociterator.h"
class ParIterator : public std::iterator<std::forward_iterator_tag, Paragraph>,
- public DocumentIterator
+ public DocIterator
{
public:
+ typedef std::iterator<std::forward_iterator_tag, Paragraph> StdIt;
+
+ typedef StdIt::value_type value_type;
+ typedef StdIt::difference_type difference_type;
+ typedef StdIt::pointer pointer;
+ typedef StdIt::reference reference;
+
+ ///
+ ParIterator() : DocIterator() {}
+
+
///
ParIterator(InsetBase &, lyx::par_type pit);
///
ParIterator(ParIterator const &);
///
- ParIterator(DocumentIterator const &);
+ ParIterator(DocIterator const &);
- ///
- void operator=(ParIterator const &);
+ /// This really should be implemented...
+ //void operator=(ParIterator const &);
///
ParIterator & operator++();
///
- ParIterator & operator--();
+ ParIterator operator++(int);
+ /// See comment in pariterator.C
+ //ParIterator & operator--();
///
Paragraph & operator*() const;
///
};
-DocumentIterator makeDocumentIterator(ParIterator const &, lyx::pos_type);
+DocIterator makeDocIterator(ParIterator const &, lyx::pos_type);
+ParIterator par_iterator_begin(InsetBase & inset);
+ParIterator par_iterator_end(InsetBase & inset);
///
class ParConstIterator : public std::iterator<std::forward_iterator_tag,
Paragraph>,
- public DocumentIterator
+ public DocIterator
{
public:
- ///
- ParConstIterator(InsetBase const &, lyx::par_type pit);
///
ParConstIterator(ParConstIterator const &);
///
- ParConstIterator(DocumentIterator const &);
+ ParConstIterator(DocIterator const &);
///
ParConstIterator & operator++();
bool operator!=(ParConstIterator const & iter1,
ParConstIterator const & iter2);
+
+ParConstIterator par_const_iterator_begin(InsetBase const & inset);
+
+ParConstIterator par_const_iterator_end(InsetBase const & inset);
+
+
#endif