]> git.lyx.org Git - lyx.git/blobdiff - src/buffer_funcs.h
remove obsolete references to saveSelection
[lyx.git] / src / buffer_funcs.h
index d2453780e35eef96dc5db0e21ba6652d2749aeee..531fb39f27ce603ced4e606723e16a6d19de4ead 100644 (file)
 #define BUFFER_FUNCS_H
 
 #include "lyxlayout_ptr_fwd.h"
+#include "support/docstring.h"
 
 #include <string>
 
 
+namespace lyx {
+
+namespace support { class FileName; }
+
 class Buffer;
 class DocIterator;
 class ErrorList;
@@ -27,7 +32,14 @@ class ParIterator;
  *  Loads a LyX file \c filename into \c Buffer
  *  and \return success status.
  */
-bool loadLyXFile(Buffer *, std::string const & filename);
+bool loadLyXFile(Buffer *, support::FileName const & filename);
+
+/**
+ *  Checks and loads a LyX file \param filename.
+ *  \retval the newly created \c Buffer pointer if successful or 0.
+ *  \retval 0 if the \c Buffer could not be created.
+ */
+Buffer * checkAndLoadLyXFile(support::FileName const & filename);
 
 /* Make a new file (buffer) with name \c filename based on a template
  * named \c templatename
@@ -37,27 +49,32 @@ Buffer * newFile(std::string const & filename, std::string const & templatename,
 
 ///return the format of the buffer on a string
 std::string const bufferFormat(Buffer const & buffer);
-///
-void bufferErrors(Buffer const &, TeXErrors const &);
-///
-void bufferErrors(Buffer const &, ErrorList const &);
+
+/// Fill in the ErrorList with the TeXErrors
+void bufferErrors(Buffer const &, TeXErrors const &, ErrorList &);
 
 /// Count the number of words in the text between these two iterators
 int countWords(DocIterator const & from, DocIterator const & to);
 
-/// Expand the counters for the labelstring of \c layout
-std::string expandLabel(Buffer const & buf, LyXLayout_ptr const & layout,
-                       bool appendix);
+/// update labels at "iter".
+/**
+A full updateLabels(Buffer const &) will be called if not possible.
+*/
+void updateLabels(Buffer const & buf, ParIterator & it, bool childonly = false);
 
-/// updates current counter and/or label if possible.
+/// update labels between "from" and "to" if possible.
 /**
-\retval true if a full updateCounters is required.
-\retval false if a full updateCounters is not required.
+A full updateLabels(Buffer const &) will be called if not possible.
 */
-bool needsUpdateCounters(Buffer const & buf, ParIterator & it);
+void updateLabels(Buffer const & buf,
+       ParIterator & from, ParIterator & to, bool childonly = false);
 
 /// updates all counters
-void updateCounters(Buffer const &);
+void updateLabels(Buffer const &, bool childonly = false);
+
+///
+void checkBufferStructure(Buffer &, ParIterator const &);
 
+} // namespace lyx
 
 #endif // BUFFER_FUNCS_H