]> git.lyx.org Git - lyx.git/blobdiff - src/OutputParams.h
Keep dialog connected to cross-ref inset after Apply.
[lyx.git] / src / OutputParams.h
index 7e0a4b2373f3b92f5f2af62f1a70ec1b0d757452..c04ada1a30eb515eee021cbf36e7eb062d5417c0 100644 (file)
@@ -26,21 +26,32 @@ class Encoding;
 class ExportData;
 class Font;
 class Language;
+class InsetArgument;
+
+
+enum class Flavor : int {
+       DviLuaTeX,
+       LaTeX,
+       LuaTeX,
+       PdfLaTeX,
+       XeTeX,
+       DocBook5,
+       Html,
+       Text,
+       LyX
+};
+
+enum class CtObject : int {
+       Normal,
+       Object,
+       DisplayObject,
+       UDisplayObject,
+       OmitObject
+};
+
 
 class OutputParams {
 public:
-       enum FLAVOR {
-               DVILUATEX,
-               LATEX,
-               LUATEX,
-               PDFLATEX,
-               XETEX,
-               DOCBOOK5,
-               HTML,
-               TEXT,
-               LYX
-       };
-
        enum MathFlavor {
                NotApplicable,
                MathAsMathML,
@@ -61,21 +72,13 @@ public:
                SUBFLOAT
        };
 
-       enum CtObject {
-               CT_NORMAL,
-               CT_OBJECT,
-               CT_DISPLAYOBJECT,
-               CT_UDISPLAYOBJECT,
-               CT_OMITOBJECT
-       };
-
        OutputParams(Encoding const *);
        ~OutputParams();
 
        /** The file that we export depends occasionally on what is to
            compile the file.
        */
-       FLAVOR flavor = LATEX;
+       Flavor flavor = Flavor::LaTeX;
        /// is it some flavor of LaTeX?
        bool isLaTeX() const;
        /// does this flavour support full unicode?
@@ -306,7 +309,7 @@ public:
        /** What kind of change tracking object is this?
         * Relevant for strikeout method in output
         */
-       mutable CtObject ctObject = CT_NORMAL;
+       mutable CtObject ctObject = CtObject::Normal;
 
        /** allow output of only part of the top-level paragraphs
         *  par_begin: beginning paragraph
@@ -382,6 +385,9 @@ public:
        /// Should wrappers be ignored? Mostly useful to avoid generation of <abstract>.
        bool docbook_ignore_wrapper = false;
 
+       /// Some parameters are output before the rest of the paragraph, they should not be generated a second time.
+       std::set<InsetArgument const *> docbook_prepended_arguments = {};
+
        /// Are we generating this material for inclusion in a TOC-like entity?
        bool for_toc = false;