]> git.lyx.org Git - lyx.git/blob - src/outputparams.h
add support for xml, now just for docbook
[lyx.git] / src / outputparams.h
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.
6  *
7  *  \author Angus Leeming
8  *
9  * Full author contact details are available in file CREDITS.
10  */
11
12 #ifndef OUTPUTPARAMS_H
13 #define OUTPUTPARAMS_H
14
15 #include "support/types.h"
16
17
18 struct OutputParams {
19         //
20         enum FLAVOR {
21                 LATEX,
22                 PDFLATEX,
23                 XML
24         };
25
26         OutputParams()
27                 : flavor(LATEX), nice(false), moving_arg(false),
28                   free_spacing(false), use_babel(false),
29                   mixed_content(false), linelen(0)
30         {}
31
32         /** The latex that we export depends occasionally on what is to
33             compile the file.
34         */
35         FLAVOR flavor;
36
37         /** Are we to write a 'nice' LaTeX file or not.
38             This esentially seems to mean whether InsetInclude, InsetGraphics
39             and InsetExternal should add the absolute path to any external
40             files or not.
41         */
42         bool nice;
43
44         /** moving_arg == true means that the environment in which the inset
45             is typeset is a moving argument. The inset should take care about
46             fragile commands by preceding the latex with \protect.
47         */
48         bool moving_arg;
49
50         /** free_spacing == true means that the inset is in a free-spacing
51             paragraph.
52         */
53         bool free_spacing;
54
55         /** This var is set by the return value from BufferParams::writeLaTeX
56         */
57         bool use_babel;
58
59         /** Used for docbook to see if inside a region of mixed content.
60             In that case all the white spaces are significant and can not appear
61             at the begin or end.
62         */
63         bool mixed_content;
64
65         /** Line length to use with ascii export.
66         */
67         lyx::size_type linelen;
68 };
69
70 #endif // LATEXRUNPARAMS_H