]> git.lyx.org Git - lyx.git/blobdiff - src/DocIterator.h
Center correctly top labels like Abstract.
[lyx.git] / src / DocIterator.h
index 4d2dfa00f7eae7c808149fa9d9db6b5195b41399..69930fcc7d09b3e50f3dc7e08bd5c30c87960bac 100644 (file)
@@ -69,10 +69,10 @@ public:
 
        /// does this iterator have any content?
        bool empty() const { return slices_.empty(); }
+       /// is this the begin position?
+       bool atBegin() const { return depth() == 1 && pit() == 0 && pos() == 0; }
        /// is this the end position?
        bool atEnd() const { return slices_.empty(); }
-       /// is this the last possible position?
-       bool atLastPos() const { return pit() == lastpit() && pos() == lastpos(); }
 
        /// checks the cursor slices for disabled spell checker insets
        bool allowSpellCheck() const;
@@ -212,6 +212,8 @@ public:
        void forwardInset();
        /// move backward one logical position
        void backwardPos();
+       /// move backward one logical position, skip collapsed insets
+       void backwardPosIgnoreCollapsed();
        /// move backward one physical character or inset
        void backwardChar();
        /// move backward one paragraph
@@ -249,6 +251,10 @@ public:
        /// Repopulate the slices insets from bottom to top. Useful
        /// for stable iterators or Undo data.
        void sanitize();
+       ///
+       bool isInside(Inset const *) const;
+       /// make sure we are outside of given inset
+       void leaveInset(Inset const & inset);
 
        /// find index of CursorSlice with &cell() == &cell (or -1 if not found)
        int find(MathData const & cell) const;