X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FDocIterator.h;h=8ee4d4e373c790f50a909cdf2eca6c6d812eca3c;hb=66c5d055e776e0cd08fb35c164b49d9ccc7812b7;hp=9582ea30f95b6e4fdd6fe9913c7c7e5c4d771ea7;hpb=02028c0b12ba94093e4e77494e7158a58f1631e5;p=lyx.git diff --git a/src/DocIterator.h b/src/DocIterator.h index 9582ea30f9..8ee4d4e373 100644 --- a/src/DocIterator.h +++ b/src/DocIterator.h @@ -71,8 +71,6 @@ public: bool empty() const { return slices_.empty(); } /// 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; @@ -126,6 +124,7 @@ public: /// return the last column of the top grid col_type lastcol() const { return ncols() - 1; } /// the inset just behind the cursor + /// returns 0 if there is no inset (e.g. normal text) Inset * nextInset() const; /// the inset just in front of the cursor Inset * prevInset() const; @@ -207,7 +206,7 @@ public: void forwardChar(); /// move on one paragraph void forwardPar(); - /// move on one inset + /// move on to the next closest inset void forwardInset(); /// move backward one logical position void backwardPos(); @@ -248,6 +247,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;