X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLaTeXFeatures.h;h=91165ad7f033e9e0b6e584804dbc2d4821719718;hb=a235c8b10f71c3d77930ba0fb3270991b1134203;hp=d3daa6e0e26e207346e070176e6d0d860d3e6f25;hpb=c5041031428093b8415432caf178eef569b524ea;p=lyx.git diff --git a/src/LaTeXFeatures.h b/src/LaTeXFeatures.h index d3daa6e0e2..91165ad7f0 100644 --- a/src/LaTeXFeatures.h +++ b/src/LaTeXFeatures.h @@ -21,40 +21,46 @@ #include #include "LString.h" +#include "layout.h" class BufferParams; -class LyXTextClass; struct Language; /** The packages and commands that a buffer needs. This struct - contains an entry for each of the latex packages and - commands that a buffer might need. This struct is supposed to be - extended as the need arises. Remember to update the validate function - in buffer.C and paragraph.C when you do so. */ + contains an entry for each of the latex packages and + commands that a buffer might need. This struct is supposed to be + extended as the need arises. Remember to update the validate function + in buffer.C and paragraph.C when you do so. +*/ struct LaTeXFeatures { /// - LaTeXFeatures(BufferParams const &, int n) ; + LaTeXFeatures(BufferParams const &, LyXTextClass::size_type n) ; /// The packaes needed by the document - string getPackages(); + string const getPackages(); /// The macros definitions needed by the document - string getMacros(); + string const getMacros(); /// The definitions needed by the document's textclass - string getTClassPreamble(); + string const getTClassPreamble(); + /// + string const getIncludedFiles(); /// void showStruct(); - //@Man: Packages - //@{ + /// Provide a string name-space to the requirements + void require(string const & name); + + /// Static preamble bits from the external material insets + string externalPreambles; + + /// + bool array; /// bool color; // color.sty -#ifdef USE_GRAPHICX /// bool graphicx; // graphicx.sty -#else /// bool graphics; // graphics.sty -#endif /// bool setspace; // setspace.sty /// @@ -79,11 +85,13 @@ struct LaTeXFeatures { bool floatflt; // floatflt.sty /// bool url; // url.sty - //@} + /// + bool varioref; // varioref.sty + /// + bool prettyref; // prettyref.sty + /// + bool chess; // chess.sty - - //@Man: Commands - //@{ /// bool lyx; /// @@ -92,10 +100,7 @@ struct LaTeXFeatures { bool noun; /// \lyxarrow bool lyxarrow; - //@} - - //@Man: Quotes - //@{ + /// bool quotesinglbase; /// @@ -108,25 +113,17 @@ struct LaTeXFeatures { bool guillemotleft; /// bool guillemotright; - //@} - - //@Man: Math mode - //@{ + /// bool amsstyle; /// bool boldsymbol; /// bool binom; - //@} - //@Man: Layouts - //@{ std::vector layout; - //@} - - //@Man: Special features - //@{ + + /// bool LyXParagraphIndent; /// bool NeedLyXFootnoteCode; @@ -136,9 +133,18 @@ struct LaTeXFeatures { typedef std::set LanguageList; /// LanguageList UsedLanguages; - //@} + /// + typedef std::set FloatList; + /// + FloatList usedFloats; + /// + typedef std::map FileMap; + /// + FileMap IncludedFiles; + /// BufferParams const & bufferParams() const; private: + /// BufferParams const & params; };