class TeXErrors;
class ParIterator;
+
+/**
+ * Returns true if the file is already loaded into a buffer.
+ */
+bool checkIfLoaded(support::FileName const & fn);
+
/**
* Loads a LyX file \c filename into \c Buffer
* and \return success status.
*/
bool loadLyXFile(Buffer *, support::FileName const & filename);
-/* Make a new file (buffer) with name \c filename based on a template
- * named \c templatename
+/**
+ * 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
*/
Buffer * newFile(std::string const & filename, std::string const & templatename,
bool isNamed = false);
/// Count the number of words in the text between these two iterators
int countWords(DocIterator const & from, DocIterator const & to);
-/// 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);
-
-/// update labels between "from" and "to" if possible.
-/**
-A full updateLabels(Buffer const &) will be called if not possible.
-*/
-void updateLabels(Buffer const & buf,
- ParIterator & from, ParIterator & to, bool childonly = false);
-
/// updates all counters
void updateLabels(Buffer const &, bool childonly = false);
+///
+void updateLabels(Buffer const &, ParIterator &);
+
///
void checkBufferStructure(Buffer &, ParIterator const &);
+///
+void loadChildDocuments(Buffer const & buffer);
+
} // namespace lyx
#endif // BUFFER_FUNCS_H