X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FChanges.h;h=9219edc6539dcd26c6588f916ffa1618671d8267;hb=cde541d785aaac9d45d636a7f9071353dd932eb6;hp=615b1099b1a7e848fd8741762282c7ee103271ca;hpb=f05504f5ef438eef9ecf52cd989148d8f6209b00;p=lyx.git diff --git a/src/Changes.h b/src/Changes.h index 615b1099b1..9219edc653 100644 --- a/src/Changes.h +++ b/src/Changes.h @@ -17,6 +17,7 @@ #include "Color.h" +#include "support/docstream.h" #include "support/strfwd.h" #include "support/types.h" #include "support/lyxtime.h" @@ -29,6 +30,7 @@ namespace lyx { class AuthorList; class Buffer; class DocIterator; +class OutputParams; class Change { public: @@ -39,7 +41,7 @@ public: DELETED // deleted text }; - explicit Change(Type t = UNCHANGED, int a = 0, time_t ct = current_time()) + explicit Change(Type t = UNCHANGED, int a = 0, time_t ct = support::current_time()) : type(t), author(a), changetime(ct) {} /// is the change similar to the given change such that both can be merged? @@ -58,6 +60,8 @@ public: bool deleted() const { return type == DELETED; } /// void setDeleted() { type = DELETED; } + /// Is this change made by the current author ? + bool currentAuthor() const { return author == 0; } Type type; @@ -95,22 +99,24 @@ public: bool isChanged(pos_type start, pos_type end) const; /// return true if the whole range is deleted - bool isFullyDeleted(pos_type const start, pos_type const end) const; + bool isDeleted(pos_type start, pos_type end) const; /// output latex to mark a transition between two change types /// returns length of text outputted - static int latexMarkChange(odocstream & os, BufferParams const & bparams, - Change const & oldChange, Change const & change); + static int latexMarkChange(otexstream & os, BufferParams const & bparams, + Change const & oldChange, Change const & change, + OutputParams const & runparams); /// output .lyx file format for transitions between changes - static void lyxMarkChange(std::ostream & os, int & column, - Change const & old, Change const & change); + static void lyxMarkChange(std::ostream & os, BufferParams const & bparams, + int & column, Change const & old, Change const & change); /// void checkAuthors(AuthorList const & authorList); /// - void addToToc(DocIterator const & cdit, Buffer const & buffer) const; + void addToToc(DocIterator const & cdit, Buffer const & buffer, + bool output_active) const; private: class Range {