*
* \author Lars Gullik Bjønnes
*
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
*/
#ifndef BUFFER_H
#include "bufferparams.h"
#include "texrow.h"
#include "ParagraphList.h"
-#include "author.h"
-#include "iterators.h"
#include "errorlist.h"
#include <boost/scoped_ptr.hpp>
#include <boost/signals/signal0.hpp>
#include <boost/signals/signal1.hpp>
+class AuthorList;
class LyXRC;
-class TeXErrors;
class LaTeXFeatures;
class LatexRunParams;
class Language;
+class Messages;
class ParIterator;
class ParConstIterator;
-class Messages;
+class TeXErrors;
/** The buffer object.
/// Load the autosaved file.
void loadAutoSaveFile();
+private:
/** Inserts a file into a document
\param par if != 0 insert the file.
\return \c false if method fails.
*/
- bool readFile(LyXLex &, string const &, ParagraphList::iterator pit);
+ bool readFile(LyXLex &, string const & filename,
+ ParagraphList::iterator pit);
- // FIXME: it's very silly to pass a lex in here
+public:
/// load a new file
- bool readFile(LyXLex &, string const &);
+ bool readFile(string const & filename);
+
+ bool readFile(string const & filename, ParagraphList::iterator pit);
/// read the header, returns number of unknown tokens
int readHeader(LyXLex & lex);
boost::signal0<void> updateTitles;
/// Reset autosave timers for all users.
boost::signal0<void> resetAutosaveTimers;
+ /// This signal is emitting if the buffer is being closed.
+ boost::signal0<void> closing;
/** Save file.
void makeLaTeXFile(string const & filename,
string const & original_path,
LatexRunParams const &,
- bool only_body = false,
- bool only_preamble = false);
+ bool output_preamble = true,
+ bool output_body = true);
///
void makeLaTeXFile(std::ostream & os,
string const & original_path,
LatexRunParams const &,
- bool only_body = false,
- bool only_preamble = false);
+ bool output_preamble = true,
+ bool output_body = true);
///
void simpleDocBookOnePar(std::ostream &,
ParagraphList::iterator par, int & desc_on,
AuthorList & authors();
private:
+ bool do_writeFile(std::ostream & ofs) const;
+
typedef std::map<string, bool> DepClean;
/// need to regenerate .tex ?
/// The path to the document file.
string filepath_;
- /// Format number of buffer
- int file_format;
///
boost::scoped_ptr<Messages> messages_;
public:
class inset_iterator {
public:
typedef std::input_iterator_tag iterator_category;
- typedef Inset value_type;
+ typedef InsetOld value_type;
typedef ptrdiff_t difference_type;
- typedef Inset * pointer;
- typedef Inset & reference;
+ typedef InsetOld * pointer;
+ typedef InsetOld & reference;
typedef ParagraphList::iterator base_type;
///
ParConstIterator par_iterator_end() const;
///
- Inset * getInsetFromID(int id_arg) const;
+ InsetOld * getInsetFromID(int id_arg) const;
};
bool operator==(Buffer::inset_iterator const & iter1,