#ifndef BUFFER_H
#define BUFFER_H
+#include "update_flags.h"
+
#include "insets/InsetCode.h"
#include "support/strfwd.h"
class BiblioInfo;
class BufferParams;
class BufferSet;
+class DispatchResult;
class DocIterator;
+class docstring_list;
class ErrorItem;
class ErrorList;
class FuncRequest;
+class FuncStatus;
class Inset;
class InsetRef;
class InsetLabel;
class TexRow;
class TocBackend;
class Undo;
+class WordLangTuple;
namespace frontend {
class GuiBufferDelegate;
~Buffer();
/** High-level interface to buffer functionality.
- This function parses a command string and executes it
+ This function parses a command string and executes it.
*/
- bool dispatch(std::string const & command, bool * result = 0);
+ void dispatch(std::string const & command, DispatchResult & result);
/// Maybe we know the function already by number...
- bool dispatch(FuncRequest const & func, bool * result = 0);
+ void dispatch(FuncRequest const & func, DispatchResult & result);
+
+ /// Can this function be exectued?
+ /// \return true if we made a decision
+ bool getStatus(FuncRequest const & cmd, FuncStatus & flag);
/// read a new document from a string
bool readString(std::string const &);
/// return the format of the buffer on a string
std::string bufferFormat() const;
+ /// return the default output format of the current backend
+ std::string getDefaultOutputFormat() const;
///
bool doExport(std::string const & format, bool put_in_tempdir,
bool nextWord(DocIterator & from, DocIterator & to,
docstring & word) const;
+ int spellCheck(DocIterator & from, DocIterator & to,
+ WordLangTuple & word_lang, docstring_list & suggestions) const;
+
private:
/// search for macro in local (buffer) table or in children
MacroData const * getBufferMacro(docstring const & name,