- /// Copy constructor
- Pimpl(Pimpl const &, Paragraph * owner, bool same_ids = false);
- ///
- lyx::pos_type size() const {
- return text.size();
- }
- ///
- bool empty() const {
- return text.empty();
- }
- ///
- void clear();
- ///
- void setContentsFromPar(Paragraph const * par);
- ///
- value_type getChar(lyx::pos_type pos) const;
- ///
- void setChar(lyx::pos_type pos, value_type c);
- ///
- void insertChar(lyx::pos_type pos, value_type c, LyXFont const & font);
- ///
- void insertInset(lyx::pos_type pos, Inset * inset, LyXFont const & font);
+ /// "Copy constructor"
+ Pimpl(Pimpl const &, Paragraph * owner);
+
+ //
+ // Change tracking
+ //
+ /// look up change at given pos
+ Change const lookupChange(pos_type pos) const;
+ /// is there a change within the given range ?
+ bool isChanged(pos_type start, pos_type end) const;
+ /// set change for the entire par
+ void setChange(Change const & change);
+ /// set change at given pos
+ void setChange(pos_type pos, Change const & change);
+ /// accept changes within the given range
+ void acceptChanges(pos_type start, pos_type end);
+ /// reject changes within the given range
+ void rejectChanges(pos_type start, pos_type end);
+