]> git.lyx.org Git - lyx.git/blobdiff - src/Buffer.h
Add Qt's Svg module to the list of used modules. This is required to allow the use...
[lyx.git] / src / Buffer.h
index 718fe1e2e123d318613b6b230b1463368b0d6911..b50d5f408a7251c717f238595a2bccf9aa39b464 100644 (file)
@@ -403,6 +403,25 @@ public:
        /// It is always an absolute path.
        std::string filePath() const;
 
+       /** Returns the path where the document was last saved.
+        *  It may be different from filePath() if the document was later
+        *  manually moved to a different location.
+        *  It is always an absolute path.
+        */
+       std::string originFilePath() const;
+
+       /** Returns the path where a local layout file lives.
+        *  An empty string is returned for standard system and user layouts.
+        *  If possible, it is always relative to the buffer path.
+        */
+       std::string layoutPos() const;
+
+       /** Set the path to a local layout file.
+        *  This must be an absolute path but, if possible, it is always
+        *  stored as relative to the buffer path.
+        */
+       void setLayoutPos(std::string const & path);
+
        /** A transformed version of the file name, adequate for LaTeX.
            \param no_path optional if \c true then the path is stripped.
        */
@@ -648,6 +667,9 @@ public:
        /// Export buffer to format \p format and open the result in a suitable viewer.
        /// Note: This has nothing to do with preview of graphics or math formulas.
        ExportStatus preview(std::string const & format) const;
+       /// true if there was a previous preview this session of this buffer and
+       /// there was an error on the previous preview of this buffer.
+       bool lastPreviewError() const;
 
 private:
        ///
@@ -710,11 +732,17 @@ public:
        ///
        void checkMasterBuffer();
 
-       /// If the document is being saved to a new location, return the
-       /// updated path of an included file relative to the new buffer path
-       /// if possible, otherwise return its absolute path.
+       /// If the document is being saved to a new location and the named file
+       /// exists at the old location, return its updated path relative to the
+       /// new buffer path if possible, otherwise return its absolute path.
        /// In all other cases, this is a no-op and name is returned unchanged.
-       std::string includedFilePath(std::string const & name) const;
+       /// If a non-empty ext is given, the existence of name.ext is checked
+       /// but the returned path will not contain this extension.
+       /// Similarly, when loading a document that was moved from the location
+       /// where it was saved, return the correct path relative to the new
+       /// location.
+       std::string includedFilePath(std::string const & name,
+                               std::string const & ext = empty_string()) const;
 
        /// compute statistics between \p from and \p to
        /// \p from initial position