// -*- C++ -*- /** * \file outputparams.h * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * * \author Angus Leeming * * Full author contact details are available in file CREDITS. */ #ifndef OUTPUTPARAMS_H #define OUTPUTPARAMS_H #include #include "support/types.h" #include class ExportData; class LyXFont; class OutputParams { public: enum FLAVOR { LATEX, PDFLATEX, XML }; OutputParams(); ~OutputParams(); /** The latex that we export depends occasionally on what is to compile the file. */ FLAVOR flavor; /** Are we to write a 'nice' LaTeX file or not. This esentially seems to mean whether InsetInclude, InsetGraphics and InsetExternal should add the absolute path to any external files or not. */ bool nice; /** moving_arg == true means that the environment in which the inset is typeset is a moving argument. The inset should take care about fragile commands by preceding the latex with \\protect. */ bool moving_arg; /** intitle == true means that the environment in which the inset is typeset is part of a title (before a \\maketitle). Footnotes in such environments have moving arguments. */ bool intitle; /** the font at the point where the inset is */ LyXFont const * local_font; /** Document language babel name */ mutable std::string document_language; /** free_spacing == true means that the inset is in a free-spacing paragraph. */ bool free_spacing; /** This var is set by the return value from BufferParams::writeLaTeX */ bool use_babel; /** Line length to use with plaintext export. */ lyx::size_type linelen; /** The depth of the current paragraph, set for plaintext * export and used by InsetTabular */ int depth; /** Export data filled in by the latex(), docbook() etc methods. This is a hack: Make it possible to add stuff to constant OutputParams instances. */ boost::shared_ptr exportdata; /** Whether we are inside a comment inset. Insets that are including * external files like InsetGraphics, InsetInclude and InsetExternal * may only write the usual output and must not attempt to do * something with the included files (e.g. copying, converting) * if this flag is true, since they may not exist. */ bool inComment; /** allow output of only part of the top-level paragraphs * par_begin: beginning paragraph */ lyx::pit_type par_begin; /** allow output of only part of the top-level paragraphs * par_end: par_end-1 is the ending paragraph * if par_begin=par_end, output all paragraphs */ lyx::pit_type par_end; /** whether or not do actual file copying and image conversion * This mode will be used to preview the source code */ bool dryrun; }; #endif // NOT OUTPUTPARAMS_H