]> git.lyx.org Git - lyx.git/blob - src/LaTeXFeatures.h
Remove unused font variable which caused a warning.
[lyx.git] / src / LaTeXFeatures.h
1 // -*- C++ -*-
2 /* This file is part of
3 * ====================================================== 
4
5 *           LyX, The Document Processor
6 *        
7 *           Copyright 1995 Matthias Ettrich
8 *           Copyright 1995-2001 the LyX Team.
9 *
10 * ====================================================== */
11
12 #ifndef LATEXFEATURES_H
13 #define LATEXFEATURES_H
14
15
16 #ifdef __GNUG__
17 #pragma interface
18 #endif
19
20 #include <vector>
21 #include <set>
22
23 #include "LString.h"
24 #include "layout.h"
25
26 class BufferParams; 
27 struct Language;
28
29 /** The packages and commands that a buffer needs. This struct
30     contains an entry for each of the latex packages and
31     commands that a buffer might need. This struct is supposed to be
32     extended as the need arises. Remember to update the validate function
33     in buffer.C and paragraph.C when you do so.
34 */
35 struct LaTeXFeatures {
36         ///
37         LaTeXFeatures(BufferParams const &, LyXTextClass::size_type n) ;
38         /// The packaes needed by the document
39         string const getPackages() const;
40         /// The macros definitions needed by the document
41         string const getMacros() const;
42         /// The definitions needed by the document's textclass
43         string const getTClassPreamble() const;
44         ///
45         string const getIncludedFiles(string const & fname) const;
46         ///
47         void getFloatDefinitions(std::ostream & os) const;
48
49         ///
50         void showStruct() const;
51
52         /// Provide a string name-space to the requirements
53         void require(string const & name);
54
55         /// Static preamble bits from the external material insets
56         string externalPreambles;
57
58         ///
59         bool array;
60         ///
61         bool color;     // color.sty
62         ///
63         bool graphicx; // graphicx.sty
64         ///
65         bool graphics;  // graphics.sty
66         ///
67         bool setspace;  // setspace.sty
68         ///
69         bool makeidx;   // makeind.sty
70         ///
71         bool verbatim;  // verbatim.sty
72         ///
73         bool longtable; // longtable.sty
74         ///
75         //bool algorithm; // algorithm.sty
76         ///
77         bool rotating;  // rotating.sty
78         ///
79         bool amssymb;   // amssymb.sty
80         ///
81         bool latexsym;   // latexsym.sty
82         ///
83         bool pifont;    // pifont.sty
84         ///
85         bool subfigure; // subfigure.sty
86         ///
87         bool floatflt;  // floatflt.sty
88         ///
89         bool url;       // url.sty
90         ///
91         bool varioref;  // varioref.sty
92         ///
93         bool prettyref; // prettyref.sty
94         ///
95         bool chess;     // chess.sty
96         ///
97         bool natbib;    // natbib.sty
98
99         ///
100         bool lyx;
101         ///
102         bool lyxline;
103         /// \noun
104         bool noun;
105         /// \lyxarrow
106         bool lyxarrow;
107
108         ///
109         bool quotesinglbase;
110         ///
111         bool quotedblbase;
112         ///
113         bool guilsinglleft;
114         ///
115         bool guilsinglright;
116         ///
117         bool guillemotleft;
118         ///
119         bool guillemotright;
120
121         ///
122         bool amsstyle;
123         ///
124         bool boldsymbol;
125         ///
126         bool binom;
127         
128         std::vector<bool> layout;
129
130         ///
131         bool ParagraphIndent;
132         ///
133         bool NeedLyXFootnoteCode;
134         ///
135         bool NeedLyXMinipageIndent;
136         ///
137         typedef std::set<Language const *> LanguageList;
138         ///
139         LanguageList UsedLanguages;
140         ///
141         typedef std::set<string> UsedFloats;
142         ///
143         UsedFloats usedFloats;
144         ///
145         typedef std::map<string , string> FileMap;
146         ///
147         FileMap IncludedFiles;
148         ///
149         BufferParams const & bufferParams() const;
150 private:
151         ///
152         BufferParams const & params;
153 };
154
155 #endif