X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fbuffer.h;h=a5932de51071c22e8cfed7d5cee9acbf7bf2bd37;hb=9e5bd1d609877e602cb697bc695d410e2ab48e0d;hp=ebb6dcfd7ab33db8d6e6ae2cc99666eacee64a8f;hpb=def72111a5ac739cf8c5377a67adeee64c37e1ab;p=lyx.git diff --git a/src/buffer.h b/src/buffer.h index ebb6dcfd7a..a5932de510 100644 --- a/src/buffer.h +++ b/src/buffer.h @@ -32,8 +32,6 @@ #include "lyxvc.h" #include "bufferparams.h" #include "texrow.h" -#include "support/filetools.h" -#include "lyx_gui_misc.h" class LyXRC; @@ -62,7 +60,7 @@ public: /**@name Constructors and destructor */ //@{ /// - Buffer(string const & file, LyXRC * lyxrc = 0, bool b = false); + explicit Buffer(string const & file, bool b = false); /// ~Buffer(); @@ -82,10 +80,10 @@ public: /** high-level interface to buffer functionality This function parses a command string and executes it */ - void Dispatch(const string & command); + void Dispatch(string const & command); /// Maybe we know the function already by number... - void Dispatch(int ac, const string & argument); + void Dispatch(int ac, string const & argument); /// should be changed to work for a list. void resize() { @@ -134,7 +132,7 @@ public: /* This parses a single LyXformat-Token */ bool parseSingleLyXformat2Token(LyXLex &, LyXParagraph *& par, LyXParagraph *& return_par, - const string & token, int & pos, + string const & token, int & pos, char & depth, LyXFont &, LyXParagraph::footnote_flag &, LyXParagraph::footnote_kind &); @@ -143,7 +141,7 @@ public: Takes care of auto-save files and backup file if requested. Returns true if the save is successful, false otherwise. */ - bool save(bool makeBackup) const; + bool save() const; /// Write file. Returns false if unsuccesful. bool writeFile(string const &, bool) const; @@ -244,10 +242,7 @@ public: /** A transformed version of the file name, adequate for LaTeX The path is stripped if no_path is true (default) */ - string getLatexName(bool no_path = true) const { - return ChangeExtension(MakeLatexName(filename), - ".tex", no_path); - } + string getLatexName(bool no_path = true) const; /// Change name of buffer. Updates "read-only" flag. void fileName(string const & newfile); @@ -259,16 +254,7 @@ public: bool isReadonly() const { return read_only; } /// Set buffer read-only flag - void setReadonly(bool flag = true) { - if (read_only != flag) { - read_only = flag; - updateTitles(); - updateAllVisibleBufferRelatedPopups(); - } - if (read_only) { - WarnReadonly(filename); - } - } + void setReadonly(bool flag = true); /// returns true if the buffer contains a LaTeX document bool isLatex() const; @@ -276,7 +262,8 @@ public: bool isLinuxDoc() const; /// returns true if the buffer contains a DocBook document bool isDocBook() const; - /// returns true if the buffer contains either a LinuxDoc or DocBook document + /** returns true if the buffer contains either a LinuxDoc + or DocBook document */ bool isSGML() const; /// returns true if the buffer contains a Wed document bool isLiterate() const; @@ -286,11 +273,12 @@ public: /** Validate a buffer for LaTeX. This validates the buffer, and returns a struct for use by - makeLaTeX and others. Its main use is to figure out what commands - and packages need to be included in the LaTeX file. It (should) - also check that the needed constructs are there (i.e. that the \refs - points to coresponding \labels). It should perhaps inset "error" - insets to help the user correct obvious mistakes. + makeLaTeX and others. Its main use is to figure out what + commands and packages need to be included in the LaTeX file. + It (should) also check that the needed constructs are there + (i.e. that the \refs points to coresponding \labels). It + should perhaps inset "error" insets to help the user correct + obvious mistakes. */ void validate(LaTeXFeatures &) const; @@ -305,6 +293,11 @@ public: than one user per buffer. */ BufferView * getUser() const { return users; } + /// + void ChangeLanguage(Language const * from, Language const * to); + /// + bool isMultiLingual(); + //@} /// Does this mean that this is buffer local? @@ -337,49 +330,42 @@ public: TexRow texrow; private: /// - void linuxDocHandleFootnote(ostream & os, + void linuxDocHandleFootnote(std::ostream & os, LyXParagraph * & par, int const depth); /// - void DocBookHandleCaption(ostream & os, string & inner_tag, + void DocBookHandleCaption(std::ostream & os, string & inner_tag, int const depth, int desc_on, LyXParagraph * & par); /// - void DocBookHandleFootnote(ostream & os, + void DocBookHandleFootnote(std::ostream & os, LyXParagraph * & par, int const depth); /// - void sgmlOpenTag(ostream & os, int depth, + void sgmlOpenTag(std::ostream & os, int depth, string const & latexname) const; /// - void sgmlCloseTag(ostream & os, int depth, + void sgmlCloseTag(std::ostream & os, int depth, string const & latexname) const; /// void LinuxDocError(LyXParagraph * par, int pos, char const * message); /// - void SimpleLinuxDocOnePar(ostream & os, LyXParagraph * par, + void SimpleLinuxDocOnePar(std::ostream & os, LyXParagraph * par, int desc_on, int const depth); -#ifdef USE_OSTREAM_ONLY - /// - void SimpleDocBookOnePar(ostream &, string & extra, - LyXParagraph * par, int & desc_on, - int const depth); -#else /// - void SimpleDocBookOnePar(string & file, string & extra, + void SimpleDocBookOnePar(std::ostream &, string & extra, LyXParagraph * par, int & desc_on, int const depth); -#endif /// LinuxDoc. - void push_tag(ostream & os, char const * tag, + void push_tag(std::ostream & os, char const * tag, int & pos, char stack[5][3]); /// LinuxDoc. - void pop_tag(ostream & os, char const * tag, + void pop_tag(std::ostream & os, char const * tag, int & pos, char stack[5][3]); #if 0 /// - void RoffAsciiTable(ostream &, LyXParagraph * par); + void RoffAsciiTable(std::ostream &, LyXParagraph * par); #endif /// is save needed