]> git.lyx.org Git - lyx.git/blobdiff - src/Buffer.h
Disable setting vertical lines when using a formal table
[lyx.git] / src / Buffer.h
index 05cf8aac8174305def8e76a12bc896c983745327..e945fb3ba790439d6f48b6657e2cec5137be46b7 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.
        */
@@ -599,9 +618,10 @@ public:
 
        /// get source code (latex/docbook) for some paragraphs, or all paragraphs
        /// including preamble
-       void getSourceCode(odocstream & os, std::string const & format,
-                          pit_type par_begin, pit_type par_end, OutputWhat output,
-                          bool master) const;
+       /// returns NULL if Id to Row conversion is unsupported
+       std::auto_ptr<TexRow> getSourceCode(odocstream & os,
+                       std::string const & format, pit_type par_begin,
+                       pit_type par_end, OutputWhat output, bool master) const;
 
        /// Access to error list.
        /// This method is used only for GUI visualisation of Buffer related
@@ -648,6 +668,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,6 +733,18 @@ public:
        ///
        void checkMasterBuffer();
 
+       /// 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.
+       /// 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
        /// \p to points to the end position