#ifndef BUFFER_FUNCS_H
#define BUFFER_FUNCS_H
+#include "lyxlayout_ptr_fwd.h"
+
#include <string>
class DocIterator;
class ErrorList;
class TeXErrors;
+class ParIterator;
/**
* Loads a LyX file \c filename into \c Buffer
bool isNamed = false);
///return the format of the buffer on a string
-std::string const BufferFormat(Buffer const & buffer);
+std::string const bufferFormat(Buffer const & buffer);
///
void bufferErrors(Buffer const &, TeXErrors const &);
///
/// 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);
+
+/// updates current counter and/or label if possible.
+/**
+\retval true if a full updateCounters is required.
+\retval false if a full updateCounters is not required.
+*/
+bool needsUpdateCounters(Buffer const & buf, ParIterator & it);
+
+/// updates all counters
+void updateCounters(Buffer const &);
+
#endif // BUFFER_FUNCS_H