#include "InsetList.h"
#include "dociterator.h"
+#include "ParagraphList_fwd.h"
#include "support/limited_stack.h"
#include "support/types.h"
#include <boost/signal.hpp>
#include <iosfwd>
+#include <string>
#include <map>
#include <utility>
#include <vector>
class Language;
class MacroData;
class OutputParams;
-class ParagraphList;
class ParConstIterator;
class ParIterator;
class TeXErrors;
/// load a new file
bool readFile(std::string const & filename);
- bool readFile(std::string const & filename, lyx::pit_type pit);
-
/// read the header, returns number of unknown tokens
int readHeader(LyXLex & lex);
child document)
*/
Buffer const * getMasterBuffer() const;
+ /** Get the document's master (or \c this if this is not a
+ child document)
+ */
+ Buffer * getMasterBuffer();
/// Is buffer read-only?
bool isReadonly() const;
/// return all bibkeys from buffer and its childs
void fillWithBibKeys(std::vector<std::pair<std::string, std::string> > & keys) const;
+ /// Update the cache with all bibfiles in use (including bibfiles
+ /// of loaded child documents).
+ void updateBibfilesCache();
+ /// Return the cache with all bibfiles in use (including bibfiles
+ /// of loaded child documents).
+ std::vector<std::string> const & getBibfilesCache() const;
///
void getLabelList(std::vector<std::string> &) const;
StableDocIterator getAnchor() const { return anchor_; }
///
void changeRefsIfUnique(std::string const & from, std::string const & to);
+ /// get source code (latex/docbook/linuxdoc) for some paragraphs
+ void getSourceCode(std::ostream & os, lyx::pit_type par_begin, lyx::pit_type par_end);
private:
/** Inserts a file into a document
- \param par if != 0 insert the file.
\return \c false if method fails.
*/
- bool readFile(LyXLex &, std::string const & filename,
- lyx::pit_type pit);
+ bool readFile(LyXLex &, std::string const & filename);
bool do_writeFile(std::ostream & ofs) const;
/// it's BufferView, this should be FIXED in future.
StableDocIterator cursor_;
StableDocIterator anchor_;
+ /// A cache for the bibfiles (including bibfiles of loaded child
+ /// documents), needed for appropriate update of natbib labels.
+ std::vector<std::string> bibfilesCache_;
};
#endif