]> git.lyx.org Git - lyx.git/blobdiff - src/OutputParams.h
Kornel's gcc compile fix.
[lyx.git] / src / OutputParams.h
index b4bf7f9283affddb7efc62b06348897ace218d5f..a368f9f81daabcf3c98054d89ffc5a5ef04b9443 100644 (file)
 #ifndef OUTPUTPARAMS_H
 #define OUTPUTPARAMS_H
 
-#include "support/types.h"
+#include <string>
 
+#include "support/types.h"
+#include <boost/shared_ptr.hpp>
 #include "Changes.h"
 
-#include <string>
-#include <tr1/memory>
-
 
 namespace lyx {
 
@@ -33,6 +32,7 @@ public:
        enum FLAVOR {
                LATEX,
                PDFLATEX,
+               XETEX,
                XML
        };
 
@@ -42,6 +42,12 @@ public:
                ALIGNED
        };
 
+       enum Float {
+               NONFLOAT,
+               MAINFLOAT,
+               SUBFLOAT
+       };
+
        OutputParams(Encoding const *);
        ~OutputParams();
 
@@ -69,6 +75,14 @@ public:
        */
        bool intitle;
 
+       /** inulemcmd == true means that the environment in which the
+           inset is typeset is part of a ulem command (\uline, \uuline,
+           \uwave, or \sout). Insets that output latex commands relying
+           on local assignments (such as \cite) should enclose such
+           commands in \mbox{} in order to avoid breakage.
+       */
+       mutable bool inulemcmd;
+
        /** the font at the point where the inset is
         */
        Font const * local_font;
@@ -105,11 +119,23 @@ public:
        */
        bool use_babel;
 
+       /** Are we generating multiple indices?
+       */
+       bool use_indices;
+
        /** Are we using japanese (pLaTeX)?
        */
        bool use_japanese;
 
-       /** Line length to use with plaintext export.
+       /** Customized bibtex_command
+       */
+       mutable std::string bibtex_command;
+
+       /** Customized index_command
+       */
+       mutable std::string index_command;
+
+       /** Line length to use with plaintext or LaTeX export.
        */
        size_type linelen;
 
@@ -122,7 +148,7 @@ public:
            This is a hack: Make it possible to add stuff to constant
            OutputParams instances.
        */
-       std::tr1::shared_ptr<ExportData> exportdata;
+       boost::shared_ptr<ExportData> exportdata;
 
        /** Whether we are inside a comment inset. Insets that are including
         *  external files like InsetGraphics, InsetInclude and InsetExternal
@@ -137,6 +163,16 @@ public:
          */
        TableCell inTableCell;
 
+       /** Whether we are inside a float or subfloat.
+        *  Needed for subfloat detection on the command line.
+        */
+       Float inFloat;
+
+       /** Whether we are inside an index inset.
+        *  ERT needs to know this, due to the active chars.
+        */
+       bool inIndexEntry;
+
        /** Whether we are inside an inset that is logically deleted.
         *  A value > 0 indicates a deleted inset.
          */
@@ -167,6 +203,8 @@ public:
        bool dryrun;
        /// Should we output verbatim or escape LaTeX's special chars?
        bool verbatim;
+       /// Should we output captions? (Used in HTML output.)
+       bool disable_captions;
 };