]> git.lyx.org Git - lyx.git/blobdiff - src/BufferParams.h
Revert "Fix a number of signedness warnings"
[lyx.git] / src / BufferParams.h
index 5c80670a8a87332868b372cca9590295527f2547..6a5ded826013d56f8d8e089c9d7f26403c9c4280 100644 (file)
 #ifndef BUFFERPARAMS_H
 #define BUFFERPARAMS_H
 
-#include "Author.h"
 #include "Citation.h"
 #include "DocumentClassPtr.h"
-#include "Format.h"
 #include "LayoutModuleList.h"
 #include "OutputParams.h"
 #include "paper.h"
@@ -34,11 +32,14 @@ namespace lyx {
 
 namespace support { class FileName; }
 
+class Author;
+class AuthorList;
 class BranchList;
 class Bullet;
 class DocumentClass;
 class Encoding;
 class Font;
+class Format;
 class IndicesList;
 class Language;
 class LayoutFile;
@@ -184,8 +185,6 @@ public:
 
        /// returns \c true if the buffer contains a LaTeX document
        bool isLatex() const;
-       /// returns \c true if the buffer contains a DocBook document
-       bool isDocBook() const;
        /// returns \c true if the buffer contains a Wed document
        bool isLiterate() const;
 
@@ -214,7 +213,12 @@ public:
        void clearIncludedChildren() { included_children_.clear(); }
 
        /// update aux files of unincluded children (with \includeonly)
-       bool maintain_unincluded_children;
+       enum ChildrenMaintenance {
+               CM_None,
+               CM_Mostly,
+               CM_Strict
+       };
+       ChildrenMaintenance maintain_unincluded_children;
 
        /// returns the main font for the buffer (document)
        Font const getFont() const;
@@ -283,16 +287,26 @@ public:
        bool useNonTeXFonts;
        /// use expert Small Caps
        bool fonts_expert_sc;
-       /// use Old Style Figures
-       bool fonts_old_figures;
+       /// use Old Style Figures (rm)
+       bool fonts_roman_osf;
+       /// use Old Style Figures (sf)
+       bool fonts_sans_osf;
+       /// use Old Style Figures (tt)
+       bool fonts_typewriter_osf;
+       /// the options for the roman font
+       std::string font_roman_opts;
        /// the scale factor of the sf font: [0] for TeX fonts, [1] for non-TeX fonts
        int fonts_sans_scale[2];
        /// the scale factor of the sf font
        int fontsSansScale() const { return fonts_sans_scale[useNonTeXFonts]; }
+       // the options for the sans font
+       std::string font_sans_opts;
        /// the scale factor of the tt font: [0] for TeX fonts, [1] for non-TeX fonts
        int fonts_typewriter_scale[2];
        /// the scale factor of the tt font
        int fontsTypewriterScale() const { return fonts_typewriter_scale[useNonTeXFonts]; }
+       // the options for the typewriter font
+       std::string font_typewriter_opts;
        /// the font used by the CJK command
        std::string fonts_cjk;
        /// use LaTeX microtype package
@@ -424,12 +438,16 @@ public:
         */
        bool output_changes;
        ///
+       bool change_bars;
+       ///
        bool compressed;
+       ///
+       bool postpone_fragile_content;
 
        /// the author list for the document
        AuthorList & authors();
        AuthorList const & authors() const;
-       void addAuthor(Author a);
+       void addAuthor(Author const & a);
 
        /// map of the file's author IDs to AuthorList indexes
        typedef std::map<int, int> AuthorMap;
@@ -456,7 +474,8 @@ public:
                XDVI
        };
        ///
-       std::string paperSizeName(PapersizePurpose purpose) const;
+       std::string paperSizeName(PapersizePurpose purpose,
+                                 std::string const & psize = std::string()) const;
        /// set up if and how babel is called
        std::string babelCall(std::string const & lang_opts, bool const langoptions) const;
        /// return supported drivers for specific packages
@@ -495,7 +514,7 @@ public:
        /// Get the default BibTeX style file from the TextClass
        std::string const & defaultBiblioStyle() const;
        /// whether the BibTeX style supports full author lists
-       bool const & fullAuthorList() const;
+       bool fullAuthorList() const;
        /// Check if a citation style is an alias to another style
        std::string getCiteAlias(std::string const & s) const;
 
@@ -540,6 +559,15 @@ public:
        std::string html_latex_end;
        ///
        bool html_css_as_file;
+
+       // do not change these values. we rely upon them.
+       enum TableOutput {
+               HTMLTable = 0,
+               CALSTable = 1
+       };
+       /// what format to use for table output in DocBook. present choices are above
+       TableOutput docbook_table_output;
+
        /// allow the LaTeX backend to run external programs
        bool shell_escape;
        /// generate output usable for reverse/forward search
@@ -550,6 +578,10 @@ public:
        bool use_refstyle;
        /// use minted? or listings?
        bool use_minted;
+       //output line numbering
+       bool use_lineno;
+       //optional params for lineno package
+       std::string lineno_opts;
 
        /// Return true if language could be set to lang,
        /// otherwise return false and do not change language