]> git.lyx.org Git - lyx.git/blobdiff - src/outputparams.h
compilation fix
[lyx.git] / src / outputparams.h
index 6bbe7a181c76ba104785235aaf5f27492ce78755..0e3ae8c481007994a8904a322c8644cf4e408a6b 100644 (file)
 #ifndef OUTPUTPARAMS_H
 #define OUTPUTPARAMS_H
 
+#include <string>
+
 #include "support/types.h"
+#include <boost/shared_ptr.hpp>
+
+
+class ExportData;
 
 
-struct OutputParams {
+class OutputParams {
+public:
        //
        enum FLAVOR {
                LATEX,
@@ -23,11 +30,8 @@ struct OutputParams {
                XML
        };
 
-       OutputParams()
-               : flavor(LATEX), nice(false), moving_arg(false),
-                 free_spacing(false), use_babel(false),
-                 mixed_content(false), linelen(0)
-       {}
+       OutputParams();
+       ~OutputParams();
 
        /** The latex that we export depends occasionally on what is to
            compile the file.
@@ -47,6 +51,20 @@ struct OutputParams {
        */
        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 babel name of the language at the point where the inset is
+        */
+       std::string local_language;
+
+       /** Document language babel name
+        */
+       mutable std::string document_language;
+
        /** free_spacing == true means that the inset is in a free-spacing
            paragraph.
        */
@@ -56,15 +74,20 @@ 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;
+       lyx::size_type linelen;
 
-       /** Line length to use with ascii export.
+       /** 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.
        */
-       lyx::size_type linelen;
+       boost::shared_ptr<ExportData> exportdata;
 };
 
-#endif // LATEXRUNPARAMS_H
+#endif // NOT OUTPUTPARAMS_H