X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Foutputparams.h;h=4a521f393d52dc7b274cc2f0806bd3ebb0d510d9;hb=8765ab59cdddad67284007813ef25934ea0042ce;hp=ff0fd7a9fc3fe62b2e350d470d1fc5aac25ef721;hpb=fa29d7ee984e9240554f093862fe53239f776582;p=lyx.git diff --git a/src/outputparams.h b/src/outputparams.h index ff0fd7a9fc..4a521f393d 100644 --- a/src/outputparams.h +++ b/src/outputparams.h @@ -12,25 +12,29 @@ #ifndef OUTPUTPARAMS_H #define OUTPUTPARAMS_H +#include + #include "support/types.h" +#include + + +namespace lyx { class ExportData; +class LyXFont; -struct OutputParams { - // +class OutputParams { +public: enum FLAVOR { LATEX, PDFLATEX, XML }; - OutputParams() - : flavor(LATEX), nice(false), moving_arg(false), - free_spacing(false), use_babel(false), - mixed_content(false), linelen(0), exportdata(0) - {} + OutputParams(); + ~OutputParams(); /** The latex that we export depends occasionally on what is to compile the file. @@ -46,10 +50,24 @@ struct OutputParams { /** 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. + 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. */ @@ -59,21 +77,47 @@ struct OutputParams { */ bool use_babel; - /** Used for docbook to see if inside a region of mixed content. - In that case all the white spaces are significant and can not appear - at the begin or end. + /** Line length to use with plaintext export. */ - bool mixed_content; + size_type linelen; - /** Line length to use with ascii 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. */ - ExportData *exportdata; + 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 + */ + 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 + */ + 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 // LATEXRUNPARAMS_H + +} // namespace lyx + +#endif // NOT OUTPUTPARAMS_H