]> git.lyx.org Git - lyx.git/blobdiff - src/BufferList.h
BufferList::getBuffer(): migrate to FileName.
[lyx.git] / src / BufferList.h
index eb61069079755d158be64ed9b3bb8c702617383f..9bfa70fcea00e97b30e5a0f741451cf84f1baf5f 100644 (file)
@@ -22,6 +22,10 @@ namespace lyx {
 class Buffer;
 class OutputParams;
 
+namespace support {
+class FileName;
+}
+
 /**
  * The class holds all all open buffers, and handles construction
  * and deletions of new ones.
@@ -41,11 +45,16 @@ public:
        const_iterator end() const;
 
        /// create a new buffer
+       /// \return 0 if the Buffer creation is not possible for whatever reason.
        Buffer * newBuffer(std::string const & s, bool ronly = false);
 
        /// delete a buffer
        void release(Buffer * b);
 
+       /// Release \p child if it really is a child and is not used elsewhere.
+       /// \return true is the file was closed.
+       bool releaseChild(Buffer * parent, Buffer * child);
+
        /// Close all open buffers.
        void closeAll();
 
@@ -58,6 +67,12 @@ 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;
 
@@ -68,7 +83,7 @@ public:
        Buffer * last();
 
        /// returns true if the buffer exists already
-       bool exists(std::string const &) const;
+       bool exists(support::FileName const &) const;
 
        /// returns true if the buffer is loaded
        bool isLoaded(Buffer const * b) const;
@@ -76,7 +91,7 @@ public:
        /// return index of named buffer in buffer list
        int bufferNum(std::string 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
@@ -106,9 +121,6 @@ private:
 
        /// storage of all buffers
        BufferStorage bstore;
-
-       /// save emergency file for the given buffer
-       void emergencyWrite(Buffer * buf);
 };
 
 /// Implementation is in LyX.cpp