X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FCursorSlice.h;h=be31f56a99cff5bf0709c28bd525ff8b82fa9f9c;hb=6b651f2ad9f698c01993dcc6e340682c279f1c55;hp=daa2dc5815b4857feeadad8315cdd44c4884a555;hpb=c3363f110df7441596dfee27cc7e813c139fda74;p=lyx.git diff --git a/src/CursorSlice.h b/src/CursorSlice.h index daa2dc5815..be31f56a99 100644 --- a/src/CursorSlice.h +++ b/src/CursorSlice.h @@ -18,14 +18,9 @@ #define CURSORSLICE_H #include "support/types.h" +#include "support/strfwd.h" #include "insets/Inset.h" -#include -#include - -#include -#include - namespace lyx { @@ -59,13 +54,7 @@ public: /// CursorSlice(); /// - CursorSlice(CursorSlice const &); - /// explicit CursorSlice(Inset &); - /// - CursorSlice & operator=(CursorSlice const &); - /// - bool isValid() const; /// the current inset Inset & inset() const { return *inset_; } @@ -79,7 +68,7 @@ public: pit_type pit() const { return pit_; } /// set the offset of the paragraph this cursor is in pit_type & pit() { return pit_; } - /// return the last paragraph offset this cursor is in + /// return the last paragraph offset within the ParagraphList pit_type lastpit() const; /// increments the paragraph this cursor is in void incrementPar(); @@ -112,13 +101,9 @@ public: /// texted specific stuff /// /// returns text corresponding to this position - Text * text() { return inset_->getText(idx_); } - /// returns text corresponding to this position - Text const * text() const { return inset_->getText(idx_); } + Text * text() const { return inset_->getText(idx_); } /// paragraph in this cell - Paragraph & paragraph(); - /// paragraph in this cell - Paragraph const & paragraph() const; + Paragraph & paragraph() const; /// /// mathed specific stuff @@ -130,9 +115,20 @@ public: /// write some debug information to \p os friend std::ostream & operator<<(std::ostream &, CursorSlice const &); + /// move to next position + void forwardPos(); + /// move to previous position + void backwardPos(); + /// move to next cell + void forwardIdx(); + /// move to previous cell + void backwardIdx(); + /// are we at the end of this slice + bool at_end() const; + /// are we at the start of this slice + bool at_begin() const; + private: - /// - void invalidate(); /// pointer to 'owning' inset. This is some kind of cache. Inset * inset_; @@ -154,8 +150,6 @@ private: idx_type idx_; /// paragraph in this cell (used by texted) pit_type pit_; - /// true if 'pit' was properly initialized - bool pit_valid_; /// position in this cell pos_type pos_; };