]> git.lyx.org Git - lyx.git/blobdiff - src/Buffer.h
#5502 add binding for full screen toggle on mac
[lyx.git] / src / Buffer.h
index a1afc8bd59204f4e31a9b5cd1477758163cc9925..46075d7e6b8c98e5db75f0c8fcf8925adf0d193b 100644 (file)
@@ -15,8 +15,6 @@
 #include "OutputEnums.h"
 #include "OutputParams.h"
 
-#include "insets/InsetCode.h"
-
 #include "support/strfwd.h"
 #include "support/types.h"
 
@@ -136,7 +134,10 @@ public:
                ExportTexPathHasSpaces,
                ExportConverterError,
                // preview
+               // Implies ExportSuccess.
                PreviewSuccess,
+               // The exported file exists but there was an error when opening
+               // it in a viewer.
                PreviewError
        };
 
@@ -232,13 +233,14 @@ public:
        /// read a new document from a string
        bool readString(std::string const &);
        /// Reloads the LyX file
-       /// \param clearUndo if false, leave alone the undo stack.
-       ReadStatus reload(bool clearUndo = true);
+       ReadStatus reload();
 //FIXME: The following function should be private
 //private:
        /// read the header, returns number of unknown tokens
        int readHeader(Lexer & lex);
 
+       double fontScalingFactor() const;
+
 private:
        ///
        typedef std::map<Buffer const *, Buffer *> BufferMap;
@@ -513,6 +515,8 @@ public:
        ///
        BufferParams & params();
        BufferParams const & params() const;
+       ///
+       BufferParams const & masterParams() const;
 
        /** The list of paragraphs.
            This is a linked list of paragraph, this list holds the
@@ -591,12 +595,11 @@ public:
 
        /// Replace the inset contents for insets which InsetCode is equal
        /// to the passed \p inset_code.
-       void changeRefsIfUnique(docstring const & from, docstring const & to,
-               InsetCode code);
+       void changeRefsIfUnique(docstring const & from, docstring const & to);
 
        /// get source code (latex/docbook) for some paragraphs, or all paragraphs
        /// including preamble
-       void getSourceCode(odocstream & os, std::string const format,
+       void getSourceCode(odocstream & os, std::string const format,
                           pit_type par_begin, pit_type par_end, OutputWhat output,
                           bool master) const;
 
@@ -642,21 +645,22 @@ public:
 
        ///
        ExportStatus doExport(std::string const & target, bool put_in_tempdir) const;
-       ///
-       ExportStatus doExport(std::string const & target, bool put_in_tempdir,
-               std::string & result_file) const;
-       ///
+       /// 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:
+       ///
+       ExportStatus doExport(std::string const & target, bool put_in_tempdir,
+               std::string & result_file) const;
        /// target is a format name optionally followed by a space
        /// and a destination file-name
        ExportStatus doExport(std::string const & target, bool put_in_tempdir,
                bool includeall, std::string & result_file) const;
        ///
-       ExportStatus doExport(std::string const & target, bool put_in_tempdir,
-               bool includeall) const;
-       ///
        ExportStatus preview(std::string const & format, bool includeall = false) const;
        ///
        void setMathFlavor(OutputParams & op) const;
@@ -709,6 +713,12 @@ 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.
+       /// In all other cases, this is a no-op and name is returned unchanged.
+       std::string includedFilePath(std::string const & name) const;
+
        /// compute statistics between \p from and \p to
        /// \p from initial position
        /// \p to points to the end position