replace most &dquot;...&dquot; by <...>
[lyx.git] / src / outputparams.h
blobf50e4f28fc56b30cf58304398e25a589f5e9c532
1 // -*- C++ -*-
2 /**
3 * \file outputparams.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Angus Leeming
9 * Full author contact details are available in file CREDITS.
12 #ifndef OUTPUTPARAMS_H
13 #define OUTPUTPARAMS_H
15 #include <string>
17 #include "support/types.h"
18 #include <boost/shared_ptr.hpp>
21 class ExportData;
24 struct OutputParams {
26 enum FLAVOR {
27 LATEX,
28 PDFLATEX,
29 XML
32 OutputParams();
33 ~OutputParams();
35 /** The latex that we export depends occasionally on what is to
36 compile the file.
38 FLAVOR flavor;
40 /** Are we to write a 'nice' LaTeX file or not.
41 This esentially seems to mean whether InsetInclude, InsetGraphics
42 and InsetExternal should add the absolute path to any external
43 files or not.
45 bool nice;
47 /** moving_arg == true means that the environment in which the inset
48 is typeset is a moving argument. The inset should take care about
49 fragile commands by preceding the latex with \protect.
51 bool moving_arg;
53 /** intitle == true means that the environment in which the
54 inset is typeset is part of a title (before a \maketitle).
55 Footnotes in such environments have moving arguments.
57 bool intitle;
59 /** the babel name of the language at the point where the inset is
61 std::string local_language;
63 /** Document language babel name
65 mutable std::string document_language;
67 /** free_spacing == true means that the inset is in a free-spacing
68 paragraph.
70 bool free_spacing;
72 /** This var is set by the return value from BufferParams::writeLaTeX
74 bool use_babel;
76 /** Used for docbook to see if inside a region of mixed content.
77 In that case all the white spaces are significant and cannot appear
78 at the begin or end.
80 bool mixed_content;
82 /** Line length to use with plaintext export.
84 lyx::size_type linelen;
86 /** The depth of the current paragraph, set for plaintext
87 * export and used by InsetTabular
89 int depth;
91 /** Export data filled in by the latex(), docbook() etc methods.
92 This is a hack: Make it possible to add stuff to constant
93 OutputParams instances.
95 boost::shared_ptr<ExportData> exportdata;
98 #endif // NOT OUTPUTPARAMS_H