#ifndef BUFFER_LIST_H
#define BUFFER_LIST_H
+#include "support/docstring.h"
+
#include <boost/utility.hpp>
-#include <string>
#include <vector>
+
+namespace lyx {
+
class Buffer;
class OutputParams;
* and deletions of new ones.
*/
class BufferList : boost::noncopyable {
+public:
+ typedef std::vector<Buffer *>::iterator iterator;
+ typedef std::vector<Buffer *>::const_iterator const_iterator;
+
public:
BufferList();
+ iterator begin();
+ const_iterator begin() const;
+
+ iterator end();
+ const_iterator end() const;
+
/// write all buffers, asking the user, returns false if cancelled
bool quitWriteAll();
/// return head of buffer list if any
Buffer * first();
+ /// return back of buffer list if any
+ Buffer * last();
+
/// returns true if the buffer exists already
bool exists(std::string const &) const;
Buffer * previous(Buffer const *) const;
/// reset current author for all buffers
- void setCurrentAuthor(std::string const & name, std::string const & email);
+ void setCurrentAuthor(docstring const & name, docstring const & email);
private:
/// ask to save a buffer on quit, returns false if should cancel
/// Implementation is in lyx_main.C
extern BufferList & theBufferList();
+
+} // namespace lyx
+
#endif // BUFFERLIST_H