]> git.lyx.org Git - lyx.git/blobdiff - src/BufferList.h
* GuiDocument.cpp: before accessing the buffer() in paramsToDialog(), check
[lyx.git] / src / BufferList.h
index 1f830f7d5a824b98389ca9d665c3e86d2d5337fc..edfabdfbbcd23a5c596201bddf3e6f2254c63db3 100644 (file)
@@ -4,7 +4,7 @@
  * This file is part of LyX, the document processor.
  * Licence details can be found in the file COPYING.
  *
- * \author Lars Gullik Bjønnes
+ * \author Lars Gullik Bjønnes
  *
  * Full author contact details are available in file CREDITS.
  */
@@ -24,6 +24,7 @@ class OutputParams;
 
 namespace support {
 class FileName;
+class FileNameList;
 }
 
 /**
@@ -37,6 +38,7 @@ public:
 
 public:
        BufferList();
+       ~BufferList();
 
        iterator begin();
        const_iterator begin() const;
@@ -59,7 +61,7 @@ public:
        void closeAll();
 
        /// returns a vector with all the buffers filenames
-       std::vector<std::string> const getFileNames() const;
+       support::FileNameList const & fileNames() const;
 
        /// FIXME
        void updateIncludedTeXfiles(std::string const &, OutputParams const &);
@@ -67,12 +69,6 @@ public:
        /// emergency save for all buffers
        void emergencyWriteAll();
 
-       /// save emergency file for the given buffer
-       /**
-         * \return a status message towards the user.
-         */
-       docstring emergencyWrite(Buffer * buf);
-
        /// return true if no buffers loaded
        bool empty() const;
 
@@ -89,9 +85,9 @@ public:
        bool isLoaded(Buffer const * b) const;
 
        /// return index of named buffer in buffer list
-       int bufferNum(std::string const & name) const;
+       int bufferNum(support::FileName const & name) const;
        /// returns a pointer to the buffer with the given name.
-       Buffer * getBuffer(std::string const &);
+       Buffer * getBuffer(support::FileName const &) const;
        /// returns a pointer to the buffer with the given number.
        Buffer * getBuffer(unsigned int);
        /// returns a pointer to the buffer whose temppath matches the string
@@ -112,6 +108,9 @@ public:
        /// reset current author for all buffers
        void setCurrentAuthor(docstring const & name, docstring const & email);
 
+       /// Call changed() on all buffers, internal or not
+       void changed(bool update_metrics) const;
+
 private:
        /// noncopiable
        BufferList(BufferList const &);
@@ -121,6 +120,8 @@ private:
 
        /// storage of all buffers
        BufferStorage bstore;
+       /// storage of all internal buffers used for cut&paste, etc.
+       BufferStorage binternal;
 };
 
 /// Implementation is in LyX.cpp