]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_iterator.h
fix the <...> delimiters
[lyx.git] / src / mathed / math_iterator.h
index 9f721b7f02ecf6d985d7d7d1f124ae580d597b25..d30bd4752998ba59c2d499f5935e6c45515d40d5 100644 (file)
@@ -10,36 +10,36 @@ class MathIterator {
 public:
        /// default constructor, used for end of range
        //MathIterator();
-       /// start with given formula
-       explicit MathIterator(MathAtom & t);
+       /// start with given inset
+       explicit MathIterator(MathInset * p);
        /// start with given position
-       explicit MathIterator(MathCursor::cursor_type const & cursor);
+       //explicit MathIterator(MathCursor::cursor_type const & cursor);
        ///
        MathCursorPos const & operator*() const;
        ///
        MathCursorPos const & operator->() const;
-       ///
+       /// move on one step
        void operator++();
-       /// read access to top most item
-       MathCursorPos const & position() const;
+       /// move on several steps
+       void jump(MathInset::difference_type);
+       /// read access to top most item (inline after running gprof!)
+       MathCursorPos const & position() const { return cursor_.back(); }
        /// write access to top most item
-       MathCursorPos & position();
+       MathCursorPos & position() { return cursor_.back(); }
        /// read access to full path
        MathCursor::cursor_type const & cursor() const;
        /// read access to top most inset
-       MathAtom const & par() const;
+       MathInset const * par() const;
        /// read access to top most inset
-       MathAtom & par();
+       MathInset * par();
        /// helper for iend
        void goEnd();
-       
+       /// read access to top most item
+       MathArray const & cell() const;
+
 private:
-       /// write access to top most item
-       MathXArray const & xcell() const;
-       /// write access to top most item
-       MathAtom * nextInset() const;
        /// own level down
-       void push(MathAtom &);
+       void push(MathInset *);
        /// own level up
        void pop();
 
@@ -53,8 +53,8 @@ bool operator==(MathIterator const &, MathIterator const &);
 bool operator!=(MathIterator const &, MathIterator const &);
 
 ///
-MathIterator ibegin(MathAtom & p);
+MathIterator ibegin(MathInset * p);
 ///
-MathIterator iend(MathAtom & p);
+MathIterator iend(MathInset * p);
 
 #endif