X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FAuthor.h;h=108a701e825300144ede07a05a032d6e36040e8e;hb=b28599f3f7ed37f6bf79aeb0938ce61e1ebab5f5;hp=ca449381e55b6c66bd9dde42048979cffff0c324;hpb=0c9da47505379b979994bb8cf01feb2653774d14;p=lyx.git diff --git a/src/Author.h b/src/Author.h index ca449381e5..108a701e82 100644 --- a/src/Author.h +++ b/src/Author.h @@ -22,24 +22,31 @@ namespace lyx { class Author { public: /// - Author() {} + Author() : used_(false), buffer_id_(0) {}; /// - Author(docstring const & name, docstring const & email) - : name_(name), email_(email), used_(true), buffer_id_(0) {} + Author(docstring const & name, docstring const & email); + /// For when the \author line is missing (#9854) + Author(int buffer_id); /// docstring name() const { return name_; } /// docstring email() const { return email_; } /// - unsigned int buffer_id() const { return buffer_id_; } + docstring nameAndEmail() const; /// - void setBufferId(unsigned int buffer_id) const { buffer_id_ = buffer_id; } + int bufferId() const { return buffer_id_; } + /// + void setBufferId(int buffer_id) const { buffer_id_ = buffer_id; } /// void setUsed(bool u) const { used_ = u; } /// bool used() const { return used_; } + /// Was the author line not missing? + bool valid() const; /// friend std::istream & operator>>(std::istream & os, Author & a); + /// + friend std::ostream & operator<<(std::ostream & os, Author const & a); private: /// The author's name @@ -49,7 +56,7 @@ private: /// mutable bool used_; /// The id of the author in the lyx-file - mutable unsigned int buffer_id_; + mutable int buffer_id_; }; @@ -66,10 +73,10 @@ public: /// Author const & get(int id) const; /// - typedef std::vector Authors; - /// void sort(); /// + typedef std::vector Authors; + /// Authors::const_iterator begin() const; /// Authors::const_iterator end() const; @@ -77,8 +84,6 @@ public: friend std::ostream & operator<<(std::ostream & os, AuthorList const & a); private: - /// - int last_id_; /// Authors authors_; };